Ported from /sys/include/ape/errno.h
SUCCESS = 0DOM = 1000RANGE = 1001PLAN9 = 1002@"2BIG" = 1ACCES = 2AGAIN = 3BADF = 4BUSY = 5CHILD = 6DEADLK = 7EXIST = 8FAULT = 9FBIG = 10INTR = 11INVAL = 12IO = 13ISDIR = 14MFILE = 15MLINK = 16NAMETOOLONG = 17NFILE = 18NODEV = 19NOENT = 20NOEXEC = 21NOLCK = 22NOMEM = 23NOSPC = 24NOSYS = 25NOTDIR = 26NOTEMPTY = 27NOTTY = 28NXIO = 29PERM = 30PIPE = 31ROFS = 32SPIPE = 33SRCH = 34XDEV = 35NOTSOCK = 36PROTONOSUPPORT = 37CONNREFUSED = 38AFNOSUPPORT = 39NOBUFS = 40OPNOTSUPP = 41ADDRINUSE = 42DESTADDRREQ = 43MSGSIZE = 44NOPROTOOPT = 45SOCKTNOSUPPORT = 46PFNOSUPPORT = 47ADDRNOTAVAIL = 48NETDOWN = 49NETUNREACH = 50NETRESET = 51CONNABORTED = 52ISCONN = 53NOTCONN = 54SHUTDOWN = 55TOOMANYREFS = 56TIMEDOUT = 57HOSTDOWN = 58HOSTUNREACH = 59GREG = 60CANCELED = 61INPROGRESS = 62DQUOTCONNRESETOVERFLOWLOOPTXTBSYpub const E = enum(u16) {
SUCCESS = 0,
DOM = 1000,
RANGE = 1001,
PLAN9 = 1002,
@"2BIG" = 1,
ACCES = 2,
AGAIN = 3,
// WOULDBLOCK = 3, // TODO errno.h has 2 names for 3
BADF = 4,
BUSY = 5,
CHILD = 6,
DEADLK = 7,
EXIST = 8,
FAULT = 9,
FBIG = 10,
INTR = 11,
INVAL = 12,
IO = 13,
ISDIR = 14,
MFILE = 15,
MLINK = 16,
NAMETOOLONG = 17,
NFILE = 18,
NODEV = 19,
NOENT = 20,
NOEXEC = 21,
NOLCK = 22,
NOMEM = 23,
NOSPC = 24,
NOSYS = 25,
NOTDIR = 26,
NOTEMPTY = 27,
NOTTY = 28,
NXIO = 29,
PERM = 30,
PIPE = 31,
ROFS = 32,
SPIPE = 33,
SRCH = 34,
XDEV = 35,
// bsd networking software
NOTSOCK = 36,
PROTONOSUPPORT = 37,
// PROTOTYPE = 37, // TODO errno.h has two names for 37
CONNREFUSED = 38,
AFNOSUPPORT = 39,
NOBUFS = 40,
OPNOTSUPP = 41,
ADDRINUSE = 42,
DESTADDRREQ = 43,
MSGSIZE = 44,
NOPROTOOPT = 45,
SOCKTNOSUPPORT = 46,
PFNOSUPPORT = 47,
ADDRNOTAVAIL = 48,
NETDOWN = 49,
NETUNREACH = 50,
NETRESET = 51,
CONNABORTED = 52,
ISCONN = 53,
NOTCONN = 54,
SHUTDOWN = 55,
TOOMANYREFS = 56,
TIMEDOUT = 57,
HOSTDOWN = 58,
HOSTUNREACH = 59,
GREG = 60,
// These added in 1003.1b-1993
CANCELED = 61,
INPROGRESS = 62,
// We just add these to be compatible with std.os, which uses them,
// They should never get used.
DQUOT,
CONNRESET,
OVERFLOW,
LOOP,
TXTBSY,
pub fn init(r: usize) E {
const signed_r: isize = @bitCast(r);
const int = if (signed_r > -4096 and signed_r < 0) -signed_r else 0;
return @enumFromInt(int);
}
}