DoxigAlpha

pwritevAll

Deprecated in favor of Writer.

Function parameters

Parameters

#
iovecs:[]posix.iovec_const
offset:u64

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

#
Handle
= posix.fd_t
Mode
= posix.mode_t
INode
= posix.ino_t
Uid
= posix.uid_t
Gid
= posix.gid_t
default_mode
This is the default mode given to POSIX operating systems for creating

Source

Implementation

#
pub fn pwritevAll(self: File, iovecs: []posix.iovec_const, offset: u64) PWriteError!void {
    if (iovecs.len == 0) return;
    var i: usize = 0;
    var off: u64 = 0;
    while (true) {
        var amt = try self.pwritev(iovecs[i..], offset + off);
        off += amt;
        while (amt >= iovecs[i].len) {
            amt -= iovecs[i].len;
            i += 1;
            if (i >= iovecs.len) return;
        }
        iovecs[i].base += amt;
        iovecs[i].len -= amt;
    }
}