ITコンサルの日常

ITコンサル会社に勤務する普通のITエンジニアの日常です。

Object#idは1.9で完全廃止になったらしい。

たのしいRuby第二版のp344
サンプルはwarningではなく、エラーになりました。

>ruby -e 'p 1.id'
-e:1:in `<main>': undefined method `id' for 1:Fixnum (NoMethodError)

リファレンスマニュアル(Object#__id__)によれば、

version 1.7 では、obsolete となりました。

とのことなので、多分1.9で完全に廃止になったのでしょう。
object_idを使用すれば、正しく実行できます。

>ruby -e 'p 1.object_id'
3