定数への代入
リファレンスマニュアルより
ruby 1.8 feature: `::' 演算子を用いた定数への代入が可能になりました。 例: module M I = 35 class C end end p M::I #=> 35 p M::C #=> M::C p ::M #=> M M::NewConst = 777 # error--> parse error
知らなかった。
irbで試した結果。
$ irb irb(main):001:0> class Hoge irb(main):002:1> HOGE = 1 irb(main):003:1> end => 1 irb(main):004:0> Hoge::HOGE => 1 irb(main):005:0> Hoge::HOGE = 2 (irb):5: warning: already initialized constant HOGE => 2 irb(main):006:0> Hoge::HOGE => 2