wit-parser 0.13.2

Tooling for parsing `*.wit` files and working with their contents.
Documentation
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,
  }
}