Built-in (Core) Classes
This chapter describes classes that are always available in the language, the so-called “core” classes.
This is a very important topic: in Ruby everything is object, and all expressions except those listed in dedicated chapter are in fact method calls.
For example, this code (which prints “5” to the standard output)
puts 2 + 3
is, in fact, call of the Kernel#puts
method, which receives one argument: result of Integer#+
method of object 2
with argument 3
.
Note: The documentation convention is to write instance methods as
ClassName#method_name
, and class methods asClassName.method_name
to clearly distinguish them.#
is NOT used to call methods in Ruby programs.
One important thing to notice: most “basic” methods, available everywhere without a target object (like puts
, or exit
), are described in Kernel
module. This module is included in every object, therefore puts
is, in fact, self.puts
. See Appendix A for a structured list of Kernel
methods.
This chapter also includes parts of the standard library documentation where appropriate. For example, class Date
(standard library) is documented beside the class Time
(core class). When the chapter or section is dedicated to a standard library class or module, the instructions to require
it are included.
The rest of standard library is documented in the Standard Library chapter.