我想运行一些检查对象上,但不幸的是它要么链接到一些真正的大物体,或具有循环引用。导致输出的许多页。

是否有某种方式来限制被巡视允许做递归的水平?

有帮助吗?

解决方案

没有,你可能要为使用prettyprint模块的“不同”的可视化(需要“PP”,PP对象)或写自己的东西。编写一个通用的翻斗车是相当困难的,因为每个人都有不同的需求(转储的二进制块?倾倒串起来,其长度是多少?转储图形与周期?倾倒达到哪一级?...)。

其他提示

我认为你将不得不改变#inspect的行为为对象。如果你了解你的目标,应该不会太难:

class Array
  def inspect
    puts "This is an array, size=#{size}"
  end
end

a = [1,2,3]

puts a.inspect #=> This is an array, size=3
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top