[Ruby] class/module name must be CONSTANT
Ruby でコードを書いていたら「
例えば、小文字から始まるクラス名を使うと
また、数値から始まるクラス名もダメ
大文字から始まるクラス名はOK
あと、後方参照を前方参照と勘違いして、検索してもなかなか知りたい情報にありつけなかったり。
class/module name must be CONSTANT
」とかいうエラーが。 調べてみたら、Class,Module名は大文字からはじまらないといけないらしい。 すっかり覚えていなかった、というか、シンボル名にそんな制約付けるなよ、とかちょっと思ったり。例えば、小文字から始まるクラス名を使うと
irb(main):001:0> class aAA; end
SyntaxError: (irb):1: class/module name must be CONSTANT
class aAA; end
^
from /usr/bin/irb:12:in `<main>'
また、数値から始まるクラス名もダメ
irb(main):002:0> class 1A; end
SyntaxError: (irb):2: syntax error, unexpected tCONSTANT, expecting tCOLON2 or '[' or '.'
class 1A; end
^
(irb):2: syntax error, unexpected keyword_end, expecting $end
from /usr/bin/irb:12:in `<main>'
大文字から始まるクラス名はOK
irb(main):003:0> class Aa; end
=> nil
あと、後方参照を前方参照と勘違いして、検索してもなかなか知りたい情報にありつけなかったり。
コメント
コメントを投稿