私はRubyを学んでいて、変数のメタモデル階層を返す単純な関数を作成しました。
def hiearchicalanalyzer(victim)
if(victim.respond_to?('superclass'))
if(victim.superclass == BasicObject)
puts victim.superclass
else
puts victim.superclass
hiearchicalanalyzer(victim.superclass)
end
else
puts victim.class
hiearchicalanalyzer(victim.class)
end
end
hiearchicalanalyzer(5)
このコードをRubyで書くためのよりエレガントな方法はありますか?