|
| File ()=default |
| Create a null file.
|
|
| File (const String &path, FileOpen flags=FileOpen::ReadOnly, FileMode mode=FileMode::Default) |
| Open file.
|
|
bool | tryOpen (const String &path, Out< File > file, FileOpen flags=FileOpen::ReadOnly, FileMode mode=FileMode::Default) |
| Try to open/create a file.
|
|
String | path () const |
| File path this file was opened from
|
|
void | truncate (off_t length) |
| Truncate or extend file to length bytes.
|
|
off_t | seek (off_t distance, Seek whence=Seek::Begin) |
| Move the current file offset.
|
|
bool | isSeekable () const |
| Check if this file is seekable (e.g.
|
|
off_t | currentOffset () const |
| Get current file offset.
|
|
void | sync () |
| Synchronise the files's state with the underlying storage device.
|
|
void | dataSync () |
| Synchronise the files's content with the underlying storage device.
|
|
String | readAll () |
| Read the file's entire contents.
|
|
String | map () |
| Map the file's entire contents into memory
|
|
String | map (off_t i0, off_t i1) |
| Map the file's contents in range [i0, i1) into memory
|
|
void | close () |
| Close file.
|
|
| IoStream ()=default |
| Create a null I/O stream.
|
|
| IoStream (int fd) |
| Create an I/O stream for file descriptor fd.
|
|
int | fd () const |
| File descriptor
|
|
void | close () |
| Manually close this I/O stream.
|
|
void | shutdown (IoShutdown mode=IoShutdown::Full) |
| Manually shutdown this I/O stream.
|
|
void | duplicateTo (IoStream &other) |
| Duplicate this I/O stream.
|
|
IoStream | duplicate () const |
| Duplicate I/O stream other.
|
|
bool | isInteractive () const |
| Check if this is a teletype (e.g.
|
|
void | echo (bool on) |
| Set echo mode of this I/O stream to on
|
|
int | ioctl (int request, void *arg) |
| Issue an device control request.
|
|
long | scatterLimit () const |
| I/O scatter limit (in bytes)
|
|
void | setScatterLimit (long newLimit) |
| Set the I/O scatter limit (in bytes)
|
|
| Stream ()=default |
| Create a null stream.
|
|
bool | waitEstablished (int timeout=-1) |
| Wait until the connection is fully established.
|
|
bool | wait (IoEvent event, int timeout=-1) |
| Wait for an I/O event.
|
|
long | read (Out< Bytes > buffer, long maxFill=-1) |
| Read available bytes into buffer and return number of bytes read.
|
|
void | write (const Bytes &buffer, long fill=-1) |
| Write fill bytes from buffer (if fill < 0 write all bytes from buffer)
|
|
void | write (const List< Bytes > &buffers) |
| Write the contents of buffers in one go.
|
|
void | write (const List< String > &parts) |
| Convenience method, equivalent to 'write(parts.join())'.
|
|
void | write (const struct iovec *iov, int iovcnt) |
| Write the contents of the iov buffers in one go.
|
|
void | write (const char *s) |
| Write C-string s.
|
|
bool | isDiscarding () const |
| Return true if this stream is discarding all writes
|
|
long long | transferTo (const Stream &sink, long long count, const Bytes &buffer) |
| Transfer a span of bytes.
|
|
long long | transferTo (const Stream &sink, long long count=-1) |
| Transfer a span of bytes.
|
|
long | defaultTransferUnit () const |
| Default I/O buffer size.
|
|
long long | skip (long long count) |
| Read and discard count bytes.
|
|
void | drain (const Bytes &auxBuffer=Bytes{}) |
| Read everything that is left.
|
|
long | readSpan (Out< Bytes > buffer) |
| Read fixed number of bytes.
|
|
String | readSpan (long count) |
| Read a fixed number of bytes.
|
|
String | readAll () |
| Read the entire stream.
|
|
| Object ()=default |
| Create a null object.
|
|
| operator bool () const |
| Check if this is a non-null object.
|
|
bool | isNull () const |
| Check if this is a null object.
|
|
template<class T > |
bool | is () const |
| Check if this object is of type T.
|
|
template<class T > |
T | as () const |
| Cast this object to type T.
|
|
bool | isWeak () const |
| Check if the underlying object reference is weak.
|
|
bool | operator== (const Object &other) const |
| Equality operator.
|
|
std::strong_ordering | operator<=> (const Object &other) const |
| Ordering operator.
|
|
long | useCount () const |
| Reference count.
|
|
|
static bool | access (const String &path, FileAccess mode) |
| Check if file under path is accessible with mode.
|
|
static bool | exists (const String &path) |
| Check if a file under path exists.
|
|
static void | create (const String &path, FileMode mode=FileMode::Default) |
| Create a new file under path with initial permissions mode.
|
|
static void | establish (const String &path, FileMode fileMode=FileMode::Default, FileMode dirMode=FileMode::DirDefault) |
| Establish a new file path.
|
|
static String | createUnique (const String &path, FileMode mode=FileMode::Default, char placeHolder='#') |
| Create a uniquely named file.
|
|
static String | createTemp (FileMode mode=FileMode::Default) |
| Create a temporary file and return its path.
|
|
static void | chown (const String &path, uid_t ownerId, gid_t groupId) |
| Change ownership of file under path to ownerId : groupId.
|
|
static void | rename (const String &oldPath, const String &newPath) |
| Rename file under oldPath to newPath (moving it within the filesystem if required)
|
|
static void | link (const String &oldPath, const String &newPath) |
| Create a new name newPath for the file under oldPath.
|
|
static void | unlink (const String &path) |
| Delete the name path.
|
|
static void | symlink (const String &oldPath, const String &newPath) |
| Create a symbolic link under newPath pointing to oldPath.
|
|
static String | readlink (const String &path) |
| Read the symbolic link under path.
|
|
static void | clean (const String &path) |
| Remove files recursively.
|
|
static String | locate (const String &fileName, const List< String > &dirs, FileAccess accessFlags=FileAccess::Exists) |
| Search for a file in a list of directories.
|
|
static String | load (const String &path) |
| Load contents of file under path.
|
|
static void | save (const String &path, const String &text) |
| Replace contents of file under path by text.
|
|
static void | setTimes (const String &path, double lastAccess, double lastModified, bool followSymlink=true) |
| Set the file times
|
|
static IoStream & | input () |
| Standard input stream.
|
|
static IoStream & | output () |
| Standard output stream.
|
|
static IoStream & | error () |
| Standard error stream.
|
|
static void | pair (Out< IoStream > a, Out< IoStream > b) |
| Establish a full-duplex communication channel between a and b.
|
|