定数の一覧取得

前回のエントリでirbのrequireを確かめようとして使ったメソッド.
忘れそうなのでメモです.

  • Module#constants で定数の一覧取得(Array)
  • Module#const_get(modle_name) で実際の値を取得.
  • Module#class_variables でクラス内の変数一覧を取得(Array)

配列取得しても見づらいので

Object::constants.sort.each do |const|
puts "#{const} = #{Object::const_get(const)}"
end

なんてしちゃえば楽.

Object::constants.grep(pattern).each do |const|
puts "#{const} = #{Object::const_get(const)}"
end

なんてのもあり.
# メソッドの目処があれば検索しなくたって良さそうなもんだけど.