id2name -> String[permalink][rdoc][edit]to_s -> String() → String-
シンボルに対応する文字列を返します。
逆に、文字列に対応するシンボルを得るには String#intern を使います。
p :foo.id2name # => "foo" p :foo.id2name.intern == :foo # => trueRuby 4.1 から、返り値の文字列は freeze されています。毎回同じオブジェクトが返され、Symbol#name の返り値と同一のオブジェクトです。破壊的に変更しようとすると FrozenError が発生します。変更可能な文字列が必要なときは、
dupや+で複製してください。s = :foo.to_s p s.frozen? # => true p s.equal?(:foo.to_s) # => true p s.equal?(:foo.name) # => true p s.dup.frozen? # => false s << "bar" # ~> FrozenError[SEE_ALSO] String#intern
[SEE_ALSO] Symbol#name