Enum
今作っているプログラムで、RubyでC言語でいうところの
Enumがちょっと欲しくなった。
しかし実装方法が分からない。
もしやと思って検索するとすでにあった。
http://childs.squares.net/wiki/index.cgi?p=Ruby+%A4%CE+Enum+%A5%AF%A5%E9%A5%B9
http://rubyist.g.hatena.ne.jp/yamaz/20070125
みんな考えることはいっしょですね。
ソースをみるとどうやらconst_setを利用しているらしい。
勉強がてら似たようなのをつくるとエラーが。
このエラーにちょっとはまった。
結局渡す文字列の最初が大文字になってないといけない。
つまり、const_setで文字列を定数にしているらしい。
そのうちデフォルトでEnumが入らないかな。
まあ自分で定数を作ったら良いだけかも。
と思ったところで気づきました。
これってC言語でdefineとenumのどっちを使うかの違いと変わらないです。
まあ違いといえば、数が多いとEnumの方が楽なくらいかな。