Module: Errno
Relationships & Source Files | |
Defined in: | error.c |
Overview
Ruby exception objects are subclasses of ::Exception. However, operating systems typically report errors using plain integers. ::Module Errno
is created dynamically to map these operating system errors to Ruby classes, with each error number generating its own subclass of ::SystemCallError. As the subclass is created in module Errno
, its name will start Errno::
.
The names of the Errno::
classes depend on the environment in which Ruby runs. On a typical Unix or Windows platform, there are Errno
classes such as Errno::EACCES
, Errno::EAGAIN
, Errno::EINTR
, and so on.
The integer operating system error number corresponding to a particular error is available as the class constant Errno::
error::Errno
.
Errno::EACCES::Errno #=> 13
Errno::EAGAIN::Errno #=> 11
Errno::EINTR::Errno #=> 4
The full list of operating system errors on your particular platform are available as the constants of Errno
.
Errno.constants #=> :E2BIG, :EACCES, :EADDRINUSE, :EADDRNOTAVAIL, ...