Type POLL [src]

Members

Source

pub const POLL = switch (native_os) { .linux => linux.POLL, .emscripten => emscripten.POLL, .wasi => struct { pub const RDNORM = 0x1; pub const WRNORM = 0x2; pub const IN = RDNORM; pub const OUT = WRNORM; pub const ERR = 0x1000; pub const HUP = 0x2000; pub const NVAL = 0x4000; }, .windows => ws2_32.POLL, .macos, .ios, .tvos, .watchos, .visionos => struct { pub const IN = 0x001; pub const PRI = 0x002; pub const OUT = 0x004; pub const RDNORM = 0x040; pub const WRNORM = OUT; pub const RDBAND = 0x080; pub const WRBAND = 0x100; pub const EXTEND = 0x0200; pub const ATTRIB = 0x0400; pub const NLINK = 0x0800; pub const WRITE = 0x1000; pub const ERR = 0x008; pub const HUP = 0x010; pub const NVAL = 0x020; pub const STANDARD = IN | PRI | OUT | RDNORM | RDBAND | WRBAND | ERR | HUP | NVAL; }, .freebsd => struct { /// any readable data available. pub const IN = 0x0001; /// OOB/Urgent readable data. pub const PRI = 0x0002; /// file descriptor is writeable. pub const OUT = 0x0004; /// non-OOB/URG data available. pub const RDNORM = 0x0040; /// no write type differentiation. pub const WRNORM = OUT; /// OOB/Urgent readable data. pub const RDBAND = 0x0080; /// OOB/Urgent data can be written. pub const WRBAND = 0x0100; /// like IN, except ignore EOF. pub const INIGNEOF = 0x2000; /// some poll error occurred. pub const ERR = 0x0008; /// file descriptor was "hung up". pub const HUP = 0x0010; /// requested events "invalid". pub const NVAL = 0x0020; pub const STANDARD = IN | PRI | OUT | RDNORM | RDBAND | WRBAND | ERR | HUP | NVAL; }, .solaris, .illumos => struct { pub const IN = 0x0001; pub const PRI = 0x0002; pub const OUT = 0x0004; pub const RDNORM = 0x0040; pub const WRNORM = .OUT; pub const RDBAND = 0x0080; pub const WRBAND = 0x0100; /// Read-side hangup. pub const RDHUP = 0x4000; /// Non-testable events (may not be specified in events). pub const ERR = 0x0008; pub const HUP = 0x0010; pub const NVAL = 0x0020; /// Events to control `/dev/poll` (not specified in revents) pub const REMOVE = 0x0800; pub const ONESHOT = 0x1000; pub const ET = 0x2000; }, .dragonfly, .netbsd => struct { /// Testable events (may be specified in events field). pub const IN = 0x0001; pub const PRI = 0x0002; pub const OUT = 0x0004; pub const RDNORM = 0x0040; pub const WRNORM = OUT; pub const RDBAND = 0x0080; pub const WRBAND = 0x0100; /// Non-testable events (may not be specified in events field). pub const ERR = 0x0008; pub const HUP = 0x0010; pub const NVAL = 0x0020; }, .haiku => struct { /// any readable data available pub const IN = 0x0001; /// file descriptor is writeable pub const OUT = 0x0002; pub const RDNORM = IN; pub const WRNORM = OUT; /// priority readable data pub const RDBAND = 0x0008; /// priority data can be written pub const WRBAND = 0x0010; /// high priority readable data pub const PRI = 0x0020; /// errors pending pub const ERR = 0x0004; /// disconnected pub const HUP = 0x0080; /// invalid file descriptor pub const NVAL = 0x1000; }, .openbsd => struct { pub const IN = 0x0001; pub const PRI = 0x0002; pub const OUT = 0x0004; pub const ERR = 0x0008; pub const HUP = 0x0010; pub const NVAL = 0x0020; pub const RDNORM = 0x0040; pub const NORM = RDNORM; pub const WRNORM = OUT; pub const RDBAND = 0x0080; pub const WRBAND = 0x0100; }, // https://github.com/SerenityOS/serenity/blob/265764ff2fec038855193296588a887fc322d76a/Kernel/API/POSIX/poll.h#L15-L24 .serenity => struct { pub const IN = 0x0001; pub const PRI = 0x0002; pub const OUT = 0x0004; pub const ERR = 0x0008; pub const HUP = 0x0010; pub const NVAL = 0x0020; pub const RDNORM = IN; pub const WRNORM = OUT; pub const WRBAND = 0x1000; pub const RDHUP = 0x2000; }, else => void, }