[#28337] constant look up order in CVS HEAD — Yukihiro Matsumoto <matz@...>

まつもと ゆきひろです

15 messages 2006/02/18
[#28338] Re: constant look up order in CVS HEAD — Tanaka Akira <akr@...17n.org> 2006/02/19

In article <1140229116.805371.31930.nullmailer@x31.priv.netlab.jp>,

[#28341] Re: constant look up order in CVS HEAD — GOTOU Yuuzou <gotoyuzo@...> 2006/02/19

In message <87lkw8xfay.fsf@m17n.org>,

[#28342] Re: constant look up order in CVS HEAD — Yukihiro Matsumoto <matz@...> 2006/02/19

まつもと ゆきひろです

[ruby-dev:28343] Re: constant look up order in CVS HEAD

From: Tanaka Akira <akr@...17n.org>
Date: 2006-02-20 00:29:13 UTC
List: ruby-dev #28343
In article <1140392909.403432.7587.nullmailer@x31.priv.netlab.jp>,
  Yukihiro Matsumoto <matz@ruby-lang.org> writes:

> いいえ、ルールは
>
>   自クラス→スーパークラス(Objectを除く)→外側のクラス(トップを除く)→Object
>
> ですから、上記のプログラムの「p Config」の位置での検索順は、
>
>   class C →  module M → Object
>
> になり、トップレベルにConfigがあるかにかかわらずいつも
> M::Configになります。

実装はそうなっていないようです。

% ./ruby -rrbconfig -ve '
module M
  class Config
  end

  class C
    p Config
  end
end
'
ruby 1.9.0 (2006-02-19) [i686-linux]
Config

>         class A < Resource
>           ClassHash[[TypeValue = 1, ClassValue = ClassValue]] = self # :nodoc:

まぁ、これがあまりよろしくないという点に関しては同意します。
-- 
[田中 哲][たなか あきら][Tanaka Akira]

In This Thread