まつもと ゆきひろです

In message "[ruby-dev:16384] Re: defined? autoload constant"
    on 02/03/14, 石塚圭樹 <keiju / rational.com> writes:

|>ごめん、どうまずいんでしたっけ。
|>autoloadされているかどうかできるだけ隠蔽したいんですが。
|
|うーん. 
|
|      if defined?(Rational) and @imag.kind_of?(Rational) and @imag.denominator != 1
|
|の意図は, Rational実際に存在する(loadされている)ときだけ, 続きの処理を行
|いたいのですが...  autoloadされていても, 実際にはloadされていないので...

  defined?(Rational)

の時点ではautoloadですが、

  @imag.kind_of?(Rational)

でRationalに触った時点でloadされちゃう(だから続きの処理を行っ
 ても問題ない)と思います。それではだめということ?