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 › Threaded › netConnectUnixPosix Private Function netConnectUnixPosix Doc Source Private Function std.Io.Threaded.netConnectUnixPosix
fn netConnectUnixPosix (
userdata : ?*anyopaque ,
address : *const net .UnixAddress ,
) net .UnixAddress .ConnectError !net .Socket .Handle Params userdata : ?*anyopaque address : *const net .UnixAddress File Io/Threaded.zig: 12408
12408
12409
12410
12411
12412
12413
12414
12415
12416
12417
12418
12419
12420
12421
12422
12423
12424
12425 fn netConnectUnixPosix (
userdata : ?*anyopaque ,
address : *const net .UnixAddress ,
) net .UnixAddress .ConnectError !net .Socket .Handle {
if (!net .has_unix_sockets ) return error .AddressFamilyUnsupported ;
const t : *Threaded = @ptrCast (@alignCast (userdata ));
_ = t ;
const socket_fd = openSocketPosix (posix .AF .UNIX , .{ .mode = .stream }) catch |err | switch (err ) {
error .ProtocolUnsupportedByAddressFamily => return error .AddressFamilyUnsupported ,
error .OptionUnsupported => return error .Unexpected ,
else => |e | return e ,
};
errdefer closeFd (socket_fd );
var storage : UnixAddress = undefined ;
const addr_len = addressUnixToPosix (address , &storage );
try posixConnectUnix (socket_fd , &storage .any , addr_len );
return socket_fd ;
}