我可以限制 Ruby 中 PP.pp 或 to_yaml 的递归深度吗? 如果没有,我可以使用其他功能吗?
最佳答案
据我所知,没有简单的方法可以做到这一点。几乎每个 Ruby 对象都实现的 #inspect 方法不受深度限制。
您必须自己实现它,例如,您可以构建一个递归方法,该方法采用一个对象和一个整数值来表示当前深度。主要问题是,您需要以不同方式处理每个预期类的对象的输出,以模拟其特定的#inspect 输出,因为您不能使用其原始的#inspect 方法。
关于ruby - ruby 中的深度限制 pp 或 to_yaml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4604902/