class Errno
Overview
Errno wraps and gives access to libc's errno. This is mostly useful when dealing with C libraries.
This class is the exception thrown when errno errors are encountered.
Defined in:
errno.crConstant Summary
-
E2BIG =
LibC::E2BIG -
Argument list too long
-
EACCES =
LibC::EACCES -
Permission denied
-
EADDRINUSE =
LibC::EADDRINUSE -
Address already in use
-
EADDRNOTAVAIL =
LibC::EADDRNOTAVAIL -
Can't assign requested address
-
EAFNOSUPPORT =
LibC::EAFNOSUPPORT -
Address family not supported by protocol family
-
EAGAIN =
LibC::EAGAIN -
Resource temporarily unavailable
-
EALREADY =
LibC::EALREADY -
Operation already in progress
-
EBADF =
LibC::EBADF -
Bad file descriptor
-
EBADMSG =
LibC::EBADMSG -
Bad message
-
EBUSY =
LibC::EBUSY -
Device / Resource busy
-
ECANCELED =
LibC::ECANCELED -
Operation canceled
-
ECHILD =
LibC::ECHILD -
No child processes
-
ECONNABORTED =
LibC::ECONNABORTED -
Software caused connection abort
-
ECONNREFUSED =
LibC::ECONNREFUSED -
Connection refused
-
ECONNRESET =
LibC::ECONNRESET -
Connection reset by peer
-
EDEADLK =
LibC::EDEADLK -
Resource deadlock avoided
-
EDESTADDRREQ =
LibC::EDESTADDRREQ -
Destination address required
-
EDOM =
LibC::EDOM -
Numerical argument out of domain
-
EDQUOT =
LibC::EDQUOT -
Disc quota exceeded
-
EEXIST =
LibC::EEXIST -
File exists
-
EFAULT =
LibC::EFAULT -
Bad address
-
EFBIG =
LibC::EFBIG -
File too large
-
EHOSTDOWN =
LibC::EHOSTDOWN -
Host is down
-
EHOSTUNREACH =
LibC::EHOSTUNREACH -
No route to host
-
EIDRM =
LibC::EIDRM -
Identifier removed
-
EILSEQ =
LibC::EILSEQ -
Illegal byte sequence
-
EINPROGRESS =
LibC::EINPROGRESS -
Operation now in progress
-
EINTR =
LibC::EINTR -
Interrupted system call
-
EINVAL =
LibC::EINVAL -
Invalid argument
-
EIO =
LibC::EIO -
Input/output error
-
EISCONN =
LibC::EISCONN -
Socket is already connected
-
EISDIR =
LibC::EISDIR -
Is a directory
-
ELOOP =
LibC::ELOOP -
Too many levels of symbolic links
-
EMFILE =
LibC::EMFILE -
Too many open files
-
EMLINK =
LibC::EMLINK -
Too many links
-
EMSGSIZE =
LibC::EMSGSIZE -
Message too long
-
EMULTIHOP =
LibC::EMULTIHOP -
Reserved
-
ENAMETOOLONG =
LibC::ENAMETOOLONG -
File name too long
-
ENETDOWN =
LibC::ENETDOWN -
Network is down
-
ENETRESET =
LibC::ENETRESET -
Network dropped connection on reset
-
ENETUNREACH =
LibC::ENETUNREACH -
Network is unreachable
-
ENFILE =
LibC::ENFILE -
Too many open files in system
-
ENOBUFS =
LibC::ENOBUFS -
No buffer space available
-
ENODATA =
LibC::ENODATA -
No message available on STREAM
-
ENODEV =
LibC::ENODEV -
Operation not supported by device
-
ENOENT =
LibC::ENOENT -
No such file or directory
-
ENOEXEC =
LibC::ENOEXEC -
Exec format error
-
ENOLCK =
LibC::ENOLCK -
No locks available
-
ENOLINK =
LibC::ENOLINK -
Reserved
-
ENOMEM =
LibC::ENOMEM -
Cannot allocate memory
-
ENOMSG =
LibC::ENOMSG -
No message of desired type
-
ENOPROTOOPT =
LibC::ENOPROTOOPT -
Protocol not available
-
ENOSPC =
LibC::ENOSPC -
No space left on device
-
ENOSR =
LibC::ENOSR -
No STREAM resources
-
ENOSTR =
LibC::ENOSTR -
Not a STREAM
-
ENOSYS =
LibC::ENOSYS -
Function not implemented
-
ENOTBLK =
LibC::ENOTBLK -
Block device required
-
ENOTCONN =
LibC::ENOTCONN -
Socket is not connected
-
ENOTDIR =
LibC::ENOTDIR -
Not a directory
-
ENOTEMPTY =
LibC::ENOTEMPTY -
Directory not empty
-
ENOTRECOVERABLE =
LibC::ENOTRECOVERABLE -
State not recoverable
-
ENOTSOCK =
LibC::ENOTSOCK -
Socket operation on non-socket
-
ENOTTY =
LibC::ENOTTY -
Inappropriate ioctl for device
-
ENXIO =
LibC::ENXIO -
Device not configured
-
EOPNOTSUPP =
LibC::EOPNOTSUPP -
Operation not supported on socket
-
EOVERFLOW =
LibC::EOVERFLOW -
Value too large to be stored in data type
-
EOWNERDEAD =
LibC::EOWNERDEAD -
Previous owner died
-
EPERM =
LibC::EPERM -
Operation not permitted
-
EPFNOSUPPORT =
LibC::EPFNOSUPPORT -
Protocol family not supported
-
EPIPE =
LibC::EPIPE -
Broken pipe
-
EPROTO =
LibC::EPROTO -
Protocol error
-
EPROTONOSUPPORT =
LibC::EPROTONOSUPPORT -
Protocol not supported
-
EPROTOTYPE =
LibC::EPROTOTYPE -
Protocol wrong type for socket
-
ERANGE =
LibC::ERANGE -
Result too large
-
EREMOTE =
LibC::EREMOTE -
Too many levels of remote in path
-
EROFS =
LibC::EROFS -
Read-only file system
-
ESHUTDOWN =
LibC::ESHUTDOWN -
Can't send after socket shutdown
-
ESOCKTNOSUPPORT =
LibC::ESOCKTNOSUPPORT -
Socket type not supported
-
ESPIPE =
LibC::ESPIPE -
Illegal seek
-
ESRCH =
LibC::ESRCH -
No such process
-
ESTALE =
LibC::ESTALE -
Stale NFS file handle
-
ETIME =
LibC::ETIME -
STREAM ioctl timeout
-
ETIMEDOUT =
LibC::ETIMEDOUT -
Operation timed out
-
ETOOMANYREFS =
LibC::ETOOMANYREFS -
Too many references: can't splice
-
ETXTBSY =
LibC::ETXTBSY -
Text file busy
-
EUSERS =
LibC::EUSERS -
Too many users
-
EWOULDBLOCK =
LibC::EWOULDBLOCK -
Operation would block
-
EXDEV =
LibC::EXDEV -
Cross-device link
Constructors
-
.new(message, errno = Errno.value)
Creates a new Errno with the given message.
Class Method Summary
-
.value : LibC::Int
Returns the value of libc's errno.
-
.value=(value)
Sets the value of libc's errno.
Instance Method Summary
-
#errno : Int32
Returns the numeric value of errno.
Instance methods inherited from class Exception
backtrace
backtrace,
backtrace?
backtrace?,
callstack : CallStack?
callstack,
callstack=(callstack : CallStack?)
callstack=,
cause : Exception?
cause,
inspect(io : IO)
inspect,
inspect_with_backtrace(io : IO)inspect_with_backtrace inspect_with_backtrace, message : String? message, to_s(io : IO) to_s
Constructor methods inherited from class Exception
new(message : String? = nil, cause : Exception? = nil)
new
Instance methods inherited from class Reference
==(other : self)==(other : JSON::Any)
==(other : YAML::Any)
==(other) ==, dup dup, hash(hasher) hash, inspect(io : IO) : Nil inspect, object_id : UInt64 object_id, pretty_print(pp) : Nil pretty_print, same?(other : Reference)
same?(other : Nil) same?, to_s(io : IO) : Nil to_s
Constructor methods inherited from class Reference
new
new
Instance methods inherited from class Object
!=(other)
!=,
!~(other)
!~,
==(other)
==,
===(other : JSON::Any)===(other : YAML::Any)
===(other) ===, =~(other) =~, class class, dup dup, hash(hasher)
hash hash, inspect(io : IO)
inspect inspect, itself itself, not_nil! not_nil!, pretty_inspect(width = 79, newline = "\n", indent = 0) : String pretty_inspect, pretty_print(pp : PrettyPrint) : Nil pretty_print, tap(&block) tap, to_json(io : IO)
to_json to_json, to_pretty_json(indent : String = " ")
to_pretty_json(io : IO, indent : String = " ") to_pretty_json, to_s
to_s(io : IO) to_s, to_yaml(io : IO)
to_yaml to_yaml, try(&block) try, unsafe_as(type : T.class) forall T unsafe_as
Constructor methods inherited from class Object
from_json(string_or_io, root : String) : selffrom_json(string_or_io) : self from_json, from_yaml(string_or_io : String | IO) : self from_yaml
Constructor Detail
Creates a new Errno with the given message. The message will
have concatenated the message denoted by Errno#value.
Typical usage:
err = LibC.some_call
if err == -1
raise Errno.new("some_call")
end