Zig 0.17.0-dev (Split by item)
This is an example of documentation generated by
ZigDoc , an alternative to Zig's built-in
Auto Doc feature. See also
examples in other modes/formats . The project being documented here (as the example) is the Zig library itself.
Zig › std/ › Io/ › Dispatch.zig › fchown
fchown
Dispatch.fchown
fn fchown (fd : c .fd_t , owner : ?File .Uid , group : ?File .Gid ) File .SetOwnerError !void
File
Code
fn fchown (fd : c .fd_t , owner : ?File .Uid , group : ?File .Gid ) File .SetOwnerError !void {
const uid = owner orelse std .math .maxInt (c .uid_t );
const gid = group orelse std .math .maxInt (c .gid_t );
while (true ) switch (c .errno (c .fchown (fd , uid , gid ))) {
.SUCCESS => return ,
.INTR => {},
.BADF => |err | return errnoBug (err ),
.FAULT => |err | return errnoBug (err ),
.INVAL => |err | return errnoBug (err ),
.ACCES => return error .AccessDenied ,
.IO => return error .InputOutput ,
.LOOP => return error .SymLinkLoop ,
.NOENT => return error .FileNotFound ,
.NOMEM => return error .SystemResources ,
.NOTDIR => return error .FileNotFound ,
.PERM => return error .PermissionDenied ,
.ROFS => return error .ReadOnlyFileSystem ,
else => |err | return unexpectedErrno (err ),
};
}