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 library itself.
Zig › std/ › c.zig › SO
SO
c.SO
pub const SO = switch (native_os )
File
Code
pub const SO = switch (native_os ) {
.linux => linux .SO ,
.emscripten => emscripten .SO ,
.windows => ws2_32 .SO ,
.driverkit , .ios , .maccatalyst , .macos , .tvos , .visionos , .watchos => struct {
pub const DEBUG = 0x0001 ;
pub const ACCEPTCONN = 0x0002 ;
pub const REUSEADDR = 0x0004 ;
pub const KEEPALIVE = 0x0008 ;
pub const DONTROUTE = 0x0010 ;
pub const BROADCAST = 0x0020 ;
pub const USELOOPBACK = 0x0040 ;
pub const LINGER = 0x0080 ;
pub const OOBINLINE = 0x0100 ;
pub const REUSEPORT = 0x0200 ;
pub const ACCEPTFILTER = 0x1000 ;
pub const SNDBUF = 0x1001 ;
pub const RCVBUF = 0x1002 ;
pub const SNDLOWAT = 0x1003 ;
pub const RCVLOWAT = 0x1004 ;
pub const SNDTIMEO = 0x1005 ;
pub const RCVTIMEO = 0x1006 ;
pub const ERROR = 0x1007 ;
pub const TYPE = 0x1008 ;
pub const NREAD = 0x1020 ;
pub const NKE = 0x1021 ;
pub const NOSIGPIPE = 0x1022 ;
pub const NOADDRERR = 0x1023 ;
pub const NWRITE = 0x1024 ;
pub const REUSESHAREUID = 0x1025 ;
pub const LINGER_SEC = 0x1080 ;
},
.freebsd => struct {
pub const DEBUG = 0x00000001 ;
pub const ACCEPTCONN = 0x00000002 ;
pub const REUSEADDR = 0x00000004 ;
pub const KEEPALIVE = 0x00000008 ;
pub const DONTROUTE = 0x00000010 ;
pub const BROADCAST = 0x00000020 ;
pub const USELOOPBACK = 0x00000040 ;
pub const LINGER = 0x00000080 ;
pub const OOBINLINE = 0x00000100 ;
pub const REUSEPORT = 0x00000200 ;
pub const TIMESTAMP = 0x00000400 ;
pub const NOSIGPIPE = 0x00000800 ;
pub const ACCEPTFILTER = 0x00001000 ;
pub const BINTIME = 0x00002000 ;
pub const NO_OFFLOAD = 0x00004000 ;
pub const NO_DDP = 0x00008000 ;
pub const REUSEPORT_LB = 0x00010000 ;
pub const SNDBUF = 0x1001 ;
pub const RCVBUF = 0x1002 ;
pub const SNDLOWAT = 0x1003 ;
pub const RCVLOWAT = 0x1004 ;
pub const SNDTIMEO = 0x1005 ;
pub const RCVTIMEO = 0x1006 ;
pub const ERROR = 0x1007 ;
pub const TYPE = 0x1008 ;
pub const LABEL = 0x1009 ;
pub const PEERLABEL = 0x1010 ;
pub const LISTENQLIMIT = 0x1011 ;
pub const LISTENQLEN = 0x1012 ;
pub const LISTENINCQLEN = 0x1013 ;
pub const SETFIB = 0x1014 ;
pub const USER_COOKIE = 0x1015 ;
pub const PROTOCOL = 0x1016 ;
pub const PROTOTYPE = PROTOCOL ;
pub const TS_CLOCK = 0x1017 ;
pub const MAX_PACING_RATE = 0x1018 ;
pub const DOMAIN = 0x1019 ;
},
.illumos => struct {
pub const DEBUG = 0x0001 ;
pub const ACCEPTCONN = 0x0002 ;
pub const REUSEADDR = 0x0004 ;
pub const KEEPALIVE = 0x0008 ;
pub const DONTROUTE = 0x0010 ;
pub const BROADCAST = 0x0020 ;
pub const USELOOPBACK = 0x0040 ;
pub const LINGER = 0x0080 ;
pub const OOBINLINE = 0x0100 ;
pub const DGRAM_ERRIND = 0x0200 ;
pub const RECVUCRED = 0x0400 ;
pub const SNDBUF = 0x1001 ;
pub const RCVBUF = 0x1002 ;
pub const SNDLOWAT = 0x1003 ;
pub const RCVLOWAT = 0x1004 ;
pub const SNDTIMEO = 0x1005 ;
pub const RCVTIMEO = 0x1006 ;
pub const ERROR = 0x1007 ;
pub const TYPE = 0x1008 ;
pub const PROTOTYPE = 0x1009 ;
pub const ANON_MLP = 0x100a ;
pub const MAC_EXEMPT = 0x100b ;
pub const DOMAIN = 0x100c ;
pub const RCVPSH = 0x100d ;
pub const SECATTR = 0x1011 ;
pub const TIMESTAMP = 0x1013 ;
pub const ALLZONES = 0x1014 ;
pub const EXCLBIND = 0x1015 ;
pub const MAC_IMPLICIT = 0x1016 ;
pub const VRRP = 0x1017 ;
},
.netbsd => struct {
pub const DEBUG = 0x0001 ;
pub const ACCEPTCONN = 0x0002 ;
pub const REUSEADDR = 0x0004 ;
pub const KEEPALIVE = 0x0008 ;
pub const DONTROUTE = 0x0010 ;
pub const BROADCAST = 0x0020 ;
pub const USELOOPBACK = 0x0040 ;
pub const LINGER = 0x0080 ;
pub const OOBINLINE = 0x0100 ;
pub const REUSEPORT = 0x0200 ;
pub const NOSIGPIPE = 0x0800 ;
pub const ACCEPTFILTER = 0x1000 ;
pub const TIMESTAMP = 0x2000 ;
pub const RERROR = 0x4000 ;
pub const SNDBUF = 0x1001 ;
pub const RCVBUF = 0x1002 ;
pub const SNDLOWAT = 0x1003 ;
pub const RCVLOWAT = 0x1004 ;
pub const ERROR = 0x1007 ;
pub const TYPE = 0x1008 ;
pub const OVERFLOWED = 0x1009 ;
pub const NOHEADER = 0x100a ;
pub const SNDTIMEO = 0x100b ;
pub const RCVTIMEO = 0x100c ;
},
.dragonfly => struct {
pub const DEBUG = 0x0001 ;
pub const ACCEPTCONN = 0x0002 ;
pub const REUSEADDR = 0x0004 ;
pub const KEEPALIVE = 0x0008 ;
pub const DONTROUTE = 0x0010 ;
pub const BROADCAST = 0x0020 ;
pub const USELOOPBACK = 0x0040 ;
pub const LINGER = 0x0080 ;
pub const OOBINLINE = 0x0100 ;
pub const REUSEPORT = 0x0200 ;
pub const TIMESTAMP = 0x0400 ;
pub const NOSIGPIPE = 0x0800 ;
pub const ACCEPTFILTER = 0x1000 ;
pub const RERROR = 0x2000 ;
pub const PASSCRED = 0x4000 ;
pub const SNDBUF = 0x1001 ;
pub const RCVBUF = 0x1002 ;
pub const SNDLOWAT = 0x1003 ;
pub const RCVLOWAT = 0x1004 ;
pub const SNDTIMEO = 0x1005 ;
pub const RCVTIMEO = 0x1006 ;
pub const ERROR = 0x1007 ;
pub const TYPE = 0x1008 ;
pub const SNDSPACE = 0x100a ;
pub const CPUHINT = 0x1030 ;
},
.haiku => struct {
pub const ACCEPTCONN = 0x00000001 ;
pub const BROADCAST = 0x00000002 ;
pub const DEBUG = 0x00000004 ;
pub const DONTROUTE = 0x00000008 ;
pub const KEEPALIVE = 0x00000010 ;
pub const OOBINLINE = 0x00000020 ;
pub const REUSEADDR = 0x00000040 ;
pub const REUSEPORT = 0x00000080 ;
pub const USELOOPBACK = 0x00000100 ;
pub const LINGER = 0x00000200 ;
pub const SNDBUF = 0x40000001 ;
pub const SNDLOWAT = 0x40000002 ;
pub const SNDTIMEO = 0x40000003 ;
pub const RCVBUF = 0x40000004 ;
pub const RCVLOWAT = 0x40000005 ;
pub const RCVTIMEO = 0x40000006 ;
pub const ERROR = 0x40000007 ;
pub const TYPE = 0x40000008 ;
pub const NONBLOCK = 0x40000009 ;
pub const BINDTODEVICE = 0x4000000a ;
pub const PEERCRED = 0x4000000b ;
},
.openbsd => struct {
pub const DEBUG = 0x0001 ;
pub const ACCEPTCONN = 0x0002 ;
pub const REUSEADDR = 0x0004 ;
pub const KEEPALIVE = 0x0008 ;
pub const DONTROUTE = 0x0010 ;
pub const BROADCAST = 0x0020 ;
pub const USELOOPBACK = 0x0040 ;
pub const LINGER = 0x0080 ;
pub const OOBINLINE = 0x0100 ;
pub const REUSEPORT = 0x0200 ;
pub const TIMESTAMP = 0x0800 ;
pub const BINDANY = 0x1000 ;
pub const ZEROIZE = 0x2000 ;
pub const SNDBUF = 0x1001 ;
pub const RCVBUF = 0x1002 ;
pub const SNDLOWAT = 0x1003 ;
pub const RCVLOWAT = 0x1004 ;
pub const SNDTIMEO = 0x1005 ;
pub const RCVTIMEO = 0x1006 ;
pub const ERROR = 0x1007 ;
pub const TYPE = 0x1008 ;
pub const NETPROC = 0x1020 ;
pub const RTABLE = 0x1021 ;
pub const PEERCRED = 0x1022 ;
pub const SPLICE = 0x1023 ;
pub const DOMAIN = 0x1024 ;
pub const PROTOCOL = 0x1025 ;
},
.serenity => struct {
pub const RCVTIMEO = 0 ;
pub const SNDTIMEO = 1 ;
pub const TYPE = 2 ;
pub const ERROR = 3 ;
pub const PEERCRED = 4 ;
pub const RCVBUF = 5 ;
pub const SNDBUF = 6 ;
pub const DEBUG = 7 ;
pub const REUSEADDR = 8 ;
pub const BINDTODEVICE = 9 ;
pub const KEEPALIVE = 10 ;
pub const TIMESTAMP = 11 ;
pub const BROADCAST = 12 ;
pub const LINGER = 13 ;
pub const ACCEPTCONN = 14 ;
pub const DONTROUTE = 15 ;
pub const OOBINLINE = 16 ;
pub const SNDLOWAT = 17 ;
pub const RCVLOWAT = 18 ;
},
else => void ,
}