rustc/vendor/wit-parser-0.219.1/tests/ui/wasi.wit
2025-01-11 15:57:26 +01:00

179 lines
4.1 KiB
Plaintext

package wasi:filesystem;
interface wasi {
enum clockid {
/// The clock measuring real time. Time value zero corresponds with
/// 1970-01-01T00:00:00Z.
realtime,
/// The store-wide monotonic clock, which is defined as a clock measuring
/// real time, whose value cannot be adjusted and which cannot have negative
/// clock jumps. The epoch of this clock is undefined. The absolute time
/// value of this clock therefore has no meaning.
monotonic,
}
/// Timestamp in nanoseconds.
type timestamp = u64;
/// Error codes returned by functions.
/// Not all of these error codes are returned by the functions provided by this
/// API/ some are used in higher-level library layers, and others are provided
/// merely for alignment with POSIX.
enum errno {
/// No error occurred. System call completed successfully.
success,
/// Argument list too long.
toobig,
/// Permission denied.
access,
/// Address in use.
addrinuse,
/// Address not available.
addrnotavail,
/// Address family not supported.
afnosupport,
/// Resource unavailable, or operation would block.
again,
/// Connection already in progress.
already,
/// Bad file descriptor.
badf,
/// Bad message.
badmsg,
/// Device or resource busy.
busy,
/// Operation canceled.
canceled,
/// No child processes.
child,
/// Connection aborted.
connaborted,
/// Connection refused.
connrefused,
/// Connection reset.
connreset,
/// Resource deadlock would occur.
deadlk,
/// Destination address required.
destaddrreq,
/// Mathematics argument out of domain of function.
dom,
/// Reserved.
dquot,
/// File exists.
exist,
/// Bad address.
fault,
/// File too large.
fbig,
/// Host is unreachable.
hostunreach,
/// Identifier removed.
idrm,
/// Illegal byte sequence.
ilseq,
/// Operation in progress.
inprogress,
/// Interrupted function.
intr,
/// Invalid argument.
inval,
/// I/O error.
io,
/// Socket is connected.
isconn,
/// Is a directory.
isdir,
/// Too many levels of symbolic links.
loop,
/// File descriptor value too large.
mfile,
/// Too many links.
mlink,
/// Message too large.
msgsize,
/// Reserved.
multihop,
/// Filename too long.
nametoolong,
/// Network is down.
netdown,
/// Connection aborted by network.
netreset,
/// Network unreachable.
netunreach,
/// Too many files open in system.
nfile,
/// No buffer space available.
nobufs,
/// No such device.
nodev,
/// No such file or directory.
noent,
/// Executable file format error.
noexec,
/// No locks available.
nolck,
/// Reserved.
nolink,
/// Not enough space.
nomem,
/// No message of the desired type.
nomsg,
/// Protocol not available.
noprotoopt,
/// No space left on device.
nospc,
/// Function not supported.
nosys,
/// The socket is not connected.
notconn,
/// Not a directory or a symbolic link to a directory.
notdir,
/// Directory not empty.
notempty,
/// State not recoverable.
notrecoverable,
/// Not a socket.
notsock,
/// Not supported, or operation not supported on socket.
notsup,
/// Inappropriate I/O control operation.
notty,
/// No such device or address.
nxio,
/// Value too large to be stored in data type.
overflow,
/// Previous owner died.
ownerdead,
/// Operation not permitted.
perm,
/// Broken pipe.
pipe,
/// Protocol error.
proto,
/// Protocol not supported.
protonosupport,
/// Protocol wrong type for socket.
prototype,
/// Result too large.
range,
/// Read-only file system.
rofs,
/// Invalid seek.
spipe,
/// No such process.
srch,
/// Reserved.
stale,
/// Connection timed out.
timedout,
/// Text file busy.
txtbsy,
/// Cross-device link.
xdev,
/// Extension: Capabilities insufficient.
notcapable,
}
}