Fixnum

From RubySpec

Jump to: navigation, search

According to Programming Ruby 1st edition, A Fixnum holds Integer values that can be represented in a native machine word (minus 1 bit). If any operation on a Fixnum exceeds this range, the value is automatically converted to a Bignum.

From ruby-doc, "Fixnum objects have immediate value. This means that when they are assigned or passed as parameters, the actual object is passed, rather than a reference to that object. Assignment does not alias Fixnum objects. There is effectively only one Fixnum object instance for any given integer value, so, for example, you cannot add a singleton method to a Fixnum."

Examples(on an AMD 64-bit machine)

 irb(main):001:0> 100000.class
 => Fixnum
 irb(main):002:0> 10000000.class
 => Fixnum
 irb(main):003:0> 10000000000.class
 => Bignum
Personal tools