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 › Kqueue › netConnectIp Private Function netConnectIp Doc Source Private Function std.Io.Kqueue.netConnectIp
fn netConnectIp (userdata : ?*anyopaque , address : *const net .IpAddress , options : net .IpAddress .ConnectOptions ) net .IpAddress .ConnectError !net .Socket Params userdata : ?*anyopaque address : *const net .IpAddress options : net .IpAddress .ConnectOptions File Io/Kqueue.zig: 1034
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048 fn netConnectIp (userdata : ?*anyopaque , address : *const net .IpAddress , options : net .IpAddress .ConnectOptions ) net .IpAddress .ConnectError !net .Socket {
if (options .timeout != .none ) @panic ("TODO" );
const k : *Kqueue = @ptrCast (@alignCast (userdata ));
const family = Io .Threaded .posixAddressFamily (address );
const socket_fd = try openSocketPosix (k , family , .{
.mode = options .mode ,
.protocol = options .protocol ,
});
errdefer closeFd (socket_fd );
var storage : Io .Threaded .PosixAddress = undefined ;
var addr_len = Io .Threaded .addressToPosix (address , &storage );
try posixConnect (k , socket_fd , &storage .any , addr_len );
try posixGetSockName (k , socket_fd , &storage .any , &addr_len );
return .{ .handle = socket_fd , .address = Io .Threaded .addressFromPosix (&storage ) };
}