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 › netSend Private Type Function netSend Doc Source Private Type Function std.Io.Kqueue.netSend
fn netSend (
userdata : ?*anyopaque ,
handle : net .Socket .Handle ,
outgoing_messages : []net .OutgoingMessage ,
flags : net .SendFlags ,
) struct File Io/Kqueue.zig: 1104
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125 fn netSend (
userdata : ?*anyopaque ,
handle : net .Socket .Handle ,
outgoing_messages : []net .OutgoingMessage ,
flags : net .SendFlags ,
) struct { ?net .Socket .SendError , usize } {
const k : *Kqueue = @ptrCast (@alignCast (userdata ));
const posix_flags : u32 =
@as (u32 , if (@hasDecl (posix .MSG , "CONFIRM" ) and flags .confirm ) posix .MSG .CONFIRM else 0 ) |
@as (u32 , if (@hasDecl (posix .MSG , "DONTROUTE" ) and flags .dont_route ) posix .MSG .DONTROUTE else 0 ) |
@as (u32 , if (@hasDecl (posix .MSG , "EOR" ) and flags .eor ) posix .MSG .EOR else 0 ) |
@as (u32 , if (@hasDecl (posix .MSG , "OOB" ) and flags .oob ) posix .MSG .OOB else 0 ) |
@as (u32 , if (@hasDecl (posix .MSG , "FASTOPEN" ) and flags .fastopen ) posix .MSG .FASTOPEN else 0 ) |
posix .MSG .NOSIGNAL ;
for (outgoing_messages , 0 ..) |*msg , i | {
netSendOne (k , handle , msg , posix_flags ) catch |err | return .{ err , i };
}
return .{ null , outgoing_messages .len };
}