wit-parser 0.247.0

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,
  }
}