すでにクラス以外のものが代入されている定数をクラス定義で使おうとしたらTypeError
すでにクラス以外のものが代入されている定数をクラス定義で使おうとしたらTypeError.
自然。
Rubyco = 123 p Rubyco # => 123 p Rubyco.class # => Fixnum class Rubyco end # => Rubyco is not a class (TypeError)
追記:
znzさんから、
結局は同じ事ですが、ruby -r rbconfig -e 'class Config;end' のような場合も TypeError になります。
とのコメントをいただきました。感謝。
- -r xxxxは、xxxxをrequireするオプション
- rbconfig.rbでは Config というmoduleが定義されている
とのことで、ruby -r rbconfig -e 'class Config;end' というのは、Configというmoduleが定義された後にConfigというclassを定義しようとしたということになりますね。なるほど。