fromLinux
Function parameters
Parameters
- stx:linux.Statx
Type definitions in this namespace
Types
- Permissions
- Cross-platform representation of permissions on a file.
- Reader
- Memoizes key information about a file handle such as:
Functions in this namespace
Functions
- close
- Upon success, the stream is in an uninitialized state.
- sync
- Blocks until all pending file contents and metadata modifications
- isTty
- Test whether the file refers to a terminal.
- getOrEnableAnsiEscapeSupport
- Returns whether or not ANSI escape codes will be treated as such,
- supportsAnsiEscapeCodes
- Test whether ANSI escape codes will be treated as such without
- setEndPos
- Shrinks or expands the file.
- seekBy
- Repositions read/write file offset relative to the current offset.
- seekFromEnd
- Repositions read/write file offset relative to the end.
- seekTo
- Repositions read/write file offset relative to the beginning.
- getPos
- TODO: integrate with async I/O
- getEndPos
- TODO: integrate with async I/O
- mode
- TODO: integrate with async I/O
- stat
- Returns `Stat` containing basic information about the `File`.
- chmod
- Changes the mode of the file.
- chown
- Changes the owner and group of the file.
- setPermissions
- Sets permissions according to the provided `Permissions` struct.
- updateTimes
- The underlying file system may have a different granularity than nanoseconds,
- readToEndAlloc
- Deprecated in favor of `Reader`.
- readToEndAllocOptions
- Deprecated in favor of `Reader`.
- readAll
- Deprecated in favor of `Reader`.
- pread
- On Windows, this function currently does alter the file pointer.
- preadAll
- Deprecated in favor of `Reader`.
- readv
- See https://github.com/ziglang/zig/issues/7699
- readvAll
- Deprecated in favor of `Reader`.
- preadv
- See https://github.com/ziglang/zig/issues/7699
- preadvAll
- Deprecated in favor of `Reader`.
- writeAll
- Deprecated in favor of `Writer`.
- pwrite
- On Windows, this function currently does alter the file pointer.
- pwriteAll
- Deprecated in favor of `Writer`.
- writev
- See https://github.com/ziglang/zig/issues/7699
- writevAll
- Deprecated in favor of `Writer`.
- pwritev
- See https://github.com/ziglang/zig/issues/7699
- pwritevAll
- Deprecated in favor of `Writer`.
- copyRange
- Deprecated in favor of `Writer`.
- copyRangeAll
- Deprecated in favor of `Writer`.
- deprecatedReader
- Deprecated in favor of `Reader`.
- deprecatedWriter
- Deprecated in favor of `Writer`.
- reader
- Defaults to positional reading; falls back to streaming.
- readerStreaming
- Positional is more threadsafe, since the global seek position is not
- writer
- Defaults to positional reading; falls back to streaming.
- writerStreaming
- Positional is more threadsafe, since the global seek position is not
- lock
- Blocks when an incompatible lock is held by another process.
- unlock
- Assumes the file is locked.
- tryLock
- Attempts to obtain a lock, returning `true` if the lock is
- downgradeLock
- Assumes the file is already locked in exclusive mode.
Error sets in this namespace
Error Sets
= posix.fd_t
Values
Source
Implementation
pub fn fromLinux(stx: linux.Statx) Stat {
const atime = stx.atime;
const mtime = stx.mtime;
const ctime = stx.ctime;
return .{
.inode = stx.ino,
.size = stx.size,
.mode = stx.mode,
.kind = switch (stx.mode & linux.S.IFMT) {
linux.S.IFDIR => .directory,
linux.S.IFCHR => .character_device,
linux.S.IFBLK => .block_device,
linux.S.IFREG => .file,
linux.S.IFIFO => .named_pipe,
linux.S.IFLNK => .sym_link,
linux.S.IFSOCK => .unix_domain_socket,
else => .unknown,
},
.atime = @as(i128, atime.sec) * std.time.ns_per_s + atime.nsec,
.mtime = @as(i128, mtime.sec) * std.time.ns_per_s + mtime.nsec,
.ctime = @as(i128, ctime.sec) * std.time.ns_per_s + ctime.nsec,
};
}