Programming Ruby

The Pragmatic Programmer's Guide

Previous < Contents ^
Next >
class Symbol
Parent: Object
Version: 1.6

Index:

id2name inspect to_i to_s


A Symbol object represents a Ruby name and is generated automatically using the :name literal syntax. The same Symbol object will be created for a given name string for the duration of a program's execution, regardless of the context or meaning of that name. Thus if Fred is a constant in one context, a method in another, and a class in a third, the Symbol :Fred will be the same object in all three contexts.

module One
  class Fred
  end
  $f1 = :Fred
end
module Two
  Fred = 1
  $f2 = :Fred
end
def Fred()
end
$f3 = :Fred
$f1.id » 2299150
$f2.id » 2299150
$f3.id » 2299150

instance methods
id2name sym.id2name -> aString

Returns the name corresponding to sym.

:fred.id2name » "fred"

inspect sym.inspect -> aString

Returns the representation of sym as a symbol literal.

:fred.inspect » ":fred"

to_i sym.to_i -> aFixnum

Returns an integer that is unique for each symbol within a particular execution of a program.

to_s sym.to_s -> aString

Synonym for Symbol#id2name .


Previous < Contents ^
Next >

Extracted from the book "Programming Ruby - The Pragmatic Programmer's Guide"
Copyright © 2000 Addison Wesley Longman, Inc. Released under the terms of the Open Publication License V1.0.
This reference is available for download.