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 › getsockname Private Function getsockname Doc Source Private Function std.Io.Uring.getsockname
fn getsockname (
ev : *Evented ,
sync : *CancelRegion .Sync ,
socket_fd : fd_t ,
addr : *linux .sockaddr ,
addr_len : *linux .socklen_t ,
) !void Params File Io/Uring.zig: 5503
5503
5504
5505
5506
5507
5508
5509
5510
5511
5512
5513
5514
5515
5516
5517
5518
5519
5520
5521
5522
5523
5524 fn getsockname (
ev : *Evented ,
sync : *CancelRegion .Sync ,
socket_fd : fd_t ,
addr : *linux .sockaddr ,
addr_len : *linux .socklen_t ,
) !void {
_ = ev ;
while (true ) {
try sync .cancel_region .await (.nothing );
switch (linux .errno (linux .getsockname (socket_fd , addr , addr_len ))) {
.SUCCESS => return ,
.INTR => {},
.BADF => |err | return errnoBug (err ), // File descriptor used after closed.
.FAULT => |err | return errnoBug (err ),
.INVAL => |err | return errnoBug (err ), // invalid parameters
.NOTSOCK => |err | return errnoBug (err ), // always a race condition
.NOBUFS => return error .SystemResources ,
else => |err | return unexpectedErrno (err ),
}
}
}