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 standard library.
std › Io › Uring › fileSetPermissions Private Function fileSetPermissions Doc Source Private Function std.Io.Uring.fileSetPermissions
fn fileSetPermissions (
userdata : ?*anyopaque ,
file : File ,
permissions : File .Permissions ,
) File .SetPermissionsError !void Params userdata : ?*anyopaque file : File permissions : File .Permissions File Io/Uring.zig: 3891
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913 fn fileSetPermissions (
userdata : ?*anyopaque ,
file : File ,
permissions : File .Permissions ,
) File .SetPermissionsError !void {
const ev : *Evented = @ptrCast (@alignCast (userdata ));
var sync : CancelRegion .Sync = try .init (ev );
defer sync .deinit (ev );
ev .fchmodat (
&sync ,
file .handle ,
"" ,
permissions .toMode (),
linux .AT .EMPTY_PATH ,
) catch |err | switch (err ) {
error .NameTooLong => return errnoBug (.NAMETOOLONG ),
error .BadPathName => return errnoBug (.ILSEQ ),
error .ProcessFdQuotaExceeded => return errnoBug (.MFILE ),
error .SystemFdQuotaExceeded => return errnoBug (.NFILE ),
error .OperationUnsupported => return errnoBug (.OPNOTSUPP ),
else => |e | return e ,
};
}