如何列出实例化的所有Ruby类?

时间:2016-01-08 23:10:56

标签: ruby-on-rails ruby

我想列出在Ruby on Rails API查询中实例化的所有类。

我可以使用基准测试工具或分析器吗?

2 个答案:

答案 0 :(得分:3)

结帐Object_space#each_object

ObjectSpace.each_object.to_a

答案 1 :(得分:3)

作为对ndn的答案的补充:

ObjectSpace#each_object允许您遍历特定类的所有实例。例如:

ObjectSpace.each_object(String) do |object|
  p object
end

ObjectSpace#count_objects显示每个类的实例数。

p ObjectSpace.count_objects

# Result:
# {:TOTAL=>30163,
#  :FREE=>1007,
#  :T_OBJECT=>39,
#  :T_CLASS=>534,
#  :T_MODULE=>24,

查看this wonderful repository了解更多有用的红宝石技巧。