|
const std = @import("../std.zig"); const wasi = std.os.wasi; const FDFLAG = wasi.FDFLAG; extern threadlocal var errno: c_int; |
_errno() |
pub fn _errno() *c_int { return &errno; } |
AT |
pub const AT = wasi.AT; |
CLOCK |
pub const CLOCK = wasi.CLOCK; |
E |
pub const E = wasi.E; |
IOV_MAX |
pub const IOV_MAX = wasi.IOV_MAX; |
LOCK |
pub const LOCK = wasi.LOCK; |
S |
pub const S = wasi.S; |
STDERR_FILENO |
pub const STDERR_FILENO = wasi.STDERR_FILENO; |
STDIN_FILENO |
pub const STDIN_FILENO = wasi.STDIN_FILENO; |
STDOUT_FILENO |
pub const STDOUT_FILENO = wasi.STDOUT_FILENO; |
fd_t |
pub const fd_t = wasi.fd_t; |
pid_t |
pub const pid_t = c_int; |
uid_t |
pub const uid_t = u32; |
gid_t |
pub const gid_t = u32; |
off_t |
pub const off_t = i64; |
ino_t |
pub const ino_t = wasi.ino_t; |
mode_t |
pub const mode_t = wasi.mode_t; |
time_t |
pub const time_t = wasi.time_t; |
timespec |
pub const timespec = wasi.timespec; |
Stat |
pub const Stat = extern struct { dev: i32, ino: ino_t, nlink: u64, mode: mode_t, uid: uid_t, gid: gid_t, __pad0: isize, rdev: i32, size: off_t, blksize: i32, blocks: i64, atim: timespec, mtim: timespec, ctim: timespec, |
atime() |
pub fn atime(self: @This()) timespec { return self.atim; } |
mtime() |
pub fn mtime(self: @This()) timespec { return self.mtim; } |
ctime() |
pub fn ctime(self: @This()) timespec { return self.ctim; } }; |
ODerived from https://github.com/WebAssembly/wasi-libc/blob/main/expected/wasm32-wasi/predefined-macros.txt |
pub const O = struct { pub const ACCMODE = (EXEC | RDWR | SEARCH); pub const APPEND = @as(u32, FDFLAG.APPEND); pub const CLOEXEC = (0); pub const CREAT = ((1 << 0) << 12); // = __WASI_OFLAGS_CREAT << 12 pub const DIRECTORY = ((1 << 1) << 12); // = __WASI_OFLAGS_DIRECTORY << 12 pub const DSYNC = @as(u32, FDFLAG.DSYNC); pub const EXCL = ((1 << 2) << 12); // = __WASI_OFLAGS_EXCL << 12 pub const EXEC = (0x02000000); pub const NOCTTY = (0); pub const NOFOLLOW = (0x01000000); pub const NONBLOCK = @as(u32, FDFLAG.NONBLOCK); pub const RDONLY = (0x04000000); pub const RDWR = (RDONLY | WRONLY); pub const RSYNC = @as(u32, FDFLAG.RSYNC); pub const SEARCH = (0x08000000); pub const SYNC = @as(u32, FDFLAG.SYNC); pub const TRUNC = ((1 << 3) << 12); // = __WASI_OFLAGS_TRUNC << 12 pub const TTY_INIT = (0); pub const WRONLY = (0x10000000); }; |
F |
pub const F = struct { pub const GETFD = 1; pub const SETFD = 2; pub const GETFL = 3; pub const SETFL = 4; }; |
FD_CLOEXEC |
pub const FD_CLOEXEC = 1; |
F_OK |
pub const F_OK = 0; |
X_OK |
pub const X_OK = 1; |
W_OK |
pub const W_OK = 2; |
R_OK |
pub const R_OK = 4; |
SEEK |
pub const SEEK = struct { pub const SET: wasi.whence_t = .SET; pub const CUR: wasi.whence_t = .CUR; pub const END: wasi.whence_t = .END; }; |
nfds_t |
pub const nfds_t = usize; |
pollfd |
pub const pollfd = extern struct { fd: fd_t, events: i16, revents: i16, }; |
POLL |
pub const POLL = 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; }; |
Generated by zstd-browse2 on 2023-11-04 14:12:16 -0400. |