[ruby-list:48550] Re: コンスタントについて (1.9.2と1.9.3の違い)

From: Narihiro Nakamura <authornari@...>
Date: 2011-11-29 13:34:48 UTC
List: ruby-list #48550
nariです。

たぶん、以下のスレッドで議論された内容だと思います。
# 違ったらごめんなさい。
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/26774

ちなみに以下だと
$ cat /tmp/a.rb
class A
  CONST = [1, 2, 3]
  def initialize(code)
    p CONST
    instance_eval code
  end
end
A.new("p CONST")

$ ruby /tmp/a.rb
[1, 2, 3]
[1, 2, 3]

となります。

2011年11月29日21:36 ashbb <ashbbb@gmail.com>:
> うっ。そうだったんですか。。。
>
> てっきり下記コードの(1)と(2)は同じことなのかと、思ってたんですが。
> constantのlookup pathは異なるということでしょうか?
>
>  class A
>    CONST = [1, 2, 3]
>    def initialize &blk
>      p CONST              # (1)
>      instance_eval &blk   # (2)
>    end
>  end
>  A.new{p CONST}
>
> ashbb
>



-- 
Narihiro Nakamura (nari)

In This Thread