Type O [src]

Source

pub const O = switch (native_os) { .linux => linux.O, .emscripten => packed struct(u32) { ACCMODE: std.posix.ACCMODE = .RDONLY, _2: u4 = 0, CREAT: bool = false, EXCL: bool = false, NOCTTY: bool = false, TRUNC: bool = false, APPEND: bool = false, NONBLOCK: bool = false, DSYNC: bool = false, ASYNC: bool = false, DIRECT: bool = false, LARGEFILE: bool = false, DIRECTORY: bool = false, NOFOLLOW: bool = false, NOATIME: bool = false, CLOEXEC: bool = false, SYNC: bool = false, PATH: bool = false, TMPFILE: bool = false, _: u9 = 0, }, .wasi => packed struct(u32) { // Match `O_*` bits from lib/libc/include/wasm-wasi-musl/__header_fcntl.h APPEND: bool = false, DSYNC: bool = false, NONBLOCK: bool = false, RSYNC: bool = false, SYNC: bool = false, _5: u7 = 0, CREAT: bool = false, DIRECTORY: bool = false, EXCL: bool = false, TRUNC: bool = false, _16: u8 = 0, NOFOLLOW: bool = false, EXEC: bool = false, read: bool = false, SEARCH: bool = false, write: bool = false, // O_CLOEXEC, O_TTY_ININT, O_NOCTTY are 0 in wasi-musl, so they're silently // ignored in C code. Thus no mapping in Zig. _: u3 = 0, }, .solaris, .illumos => packed struct(u32) { ACCMODE: std.posix.ACCMODE = .RDONLY, NDELAY: bool = false, APPEND: bool = false, SYNC: bool = false, _5: u1 = 0, DSYNC: bool = false, NONBLOCK: bool = false, CREAT: bool = false, TRUNC: bool = false, EXCL: bool = false, NOCTTY: bool = false, _12: u1 = 0, LARGEFILE: bool = false, XATTR: bool = false, RSYNC: bool = false, _16: u1 = 0, NOFOLLOW: bool = false, NOLINKS: bool = false, _19: u2 = 0, SEARCH: bool = false, EXEC: bool = false, CLOEXEC: bool = false, DIRECTORY: bool = false, DIRECT: bool = false, _: u6 = 0, }, .netbsd => packed struct(u32) { ACCMODE: std.posix.ACCMODE = .RDONLY, NONBLOCK: bool = false, APPEND: bool = false, SHLOCK: bool = false, EXLOCK: bool = false, ASYNC: bool = false, SYNC: bool = false, NOFOLLOW: bool = false, CREAT: bool = false, TRUNC: bool = false, EXCL: bool = false, _12: u3 = 0, NOCTTY: bool = false, DSYNC: bool = false, RSYNC: bool = false, ALT_IO: bool = false, DIRECT: bool = false, _20: u1 = 0, DIRECTORY: bool = false, CLOEXEC: bool = false, SEARCH: bool = false, _: u8 = 0, }, .openbsd => packed struct(u32) { ACCMODE: std.posix.ACCMODE = .RDONLY, NONBLOCK: bool = false, APPEND: bool = false, SHLOCK: bool = false, EXLOCK: bool = false, ASYNC: bool = false, SYNC: bool = false, NOFOLLOW: bool = false, CREAT: bool = false, TRUNC: bool = false, EXCL: bool = false, _12: u3 = 0, NOCTTY: bool = false, CLOEXEC: bool = false, DIRECTORY: bool = false, _: u14 = 0, }, .haiku => packed struct(u32) { ACCMODE: std.posix.ACCMODE = .RDONLY, _2: u4 = 0, CLOEXEC: bool = false, NONBLOCK: bool = false, EXCL: bool = false, CREAT: bool = false, TRUNC: bool = false, APPEND: bool = false, NOCTTY: bool = false, NOTRAVERSE: bool = false, _14: u2 = 0, SYNC: bool = false, RSYNC: bool = false, DSYNC: bool = false, NOFOLLOW: bool = false, DIRECT: bool = false, DIRECTORY: bool = false, _: u10 = 0, }, .macos, .ios, .tvos, .watchos, .visionos => packed struct(u32) { ACCMODE: std.posix.ACCMODE = .RDONLY, NONBLOCK: bool = false, APPEND: bool = false, SHLOCK: bool = false, EXLOCK: bool = false, ASYNC: bool = false, SYNC: bool = false, NOFOLLOW: bool = false, CREAT: bool = false, TRUNC: bool = false, EXCL: bool = false, _12: u3 = 0, EVTONLY: bool = false, _16: u1 = 0, NOCTTY: bool = false, _18: u2 = 0, DIRECTORY: bool = false, SYMLINK: bool = false, DSYNC: bool = false, _23: u1 = 0, CLOEXEC: bool = false, _25: u4 = 0, ALERT: bool = false, _30: u1 = 0, POPUP: bool = false, }, .dragonfly => packed struct(u32) { ACCMODE: std.posix.ACCMODE = .RDONLY, NONBLOCK: bool = false, APPEND: bool = false, SHLOCK: bool = false, EXLOCK: bool = false, ASYNC: bool = false, SYNC: bool = false, NOFOLLOW: bool = false, CREAT: bool = false, TRUNC: bool = false, EXCL: bool = false, _12: u3 = 0, NOCTTY: bool = false, DIRECT: bool = false, CLOEXEC: bool = false, FBLOCKING: bool = false, FNONBLOCKING: bool = false, FAPPEND: bool = false, FOFFSET: bool = false, FSYNCWRITE: bool = false, FASYNCWRITE: bool = false, _24: u3 = 0, DIRECTORY: bool = false, _: u4 = 0, }, .freebsd => packed struct(u32) { ACCMODE: std.posix.ACCMODE = .RDONLY, NONBLOCK: bool = false, APPEND: bool = false, SHLOCK: bool = false, EXLOCK: bool = false, ASYNC: bool = false, SYNC: bool = false, NOFOLLOW: bool = false, CREAT: bool = false, TRUNC: bool = false, EXCL: bool = false, DSYNC: bool = false, _13: u2 = 0, NOCTTY: bool = false, DIRECT: bool = false, DIRECTORY: bool = false, NOATIME: bool = false, _19: u1 = 0, CLOEXEC: bool = false, PATH: bool = false, TMPFILE: bool = false, _: u9 = 0, }, // https://github.com/SerenityOS/serenity/blob/2808b0376406a40e31293bb3bcb9170374e90506/Kernel/API/POSIX/fcntl.h#L28-L43 .serenity => packed struct(c_int) { ACCMODE: std.posix.ACCMODE = .RDONLY, EXEC: bool = false, CREAT: bool = false, EXCL: bool = false, NOCTTY: bool = false, TRUNC: bool = false, APPEND: bool = false, NONBLOCK: bool = false, DIRECTORY: bool = false, NOFOLLOW: bool = false, CLOEXEC: bool = false, DIRECT: bool = false, SYNC: bool = false, _: std.meta.Int(.unsigned, @bitSizeOf(c_int) - 14) = 0, }, else => void, }