标签: ruby recursion stack
如何在ruby中进行递归调用时知道当前的方法堆栈帧?
答案 0 :(得分:3)
我不知道为什么你需要那个,但是caller.size应该做的工作:
caller.size
def recurse(n) puts caller.size recurse(n-1) unless n <= 0 end recurse(5) # => Outputs 1 to 6
这适用于Ruby 1.9,但Ruby 1.8中显然存在一个错误。刚刚提交了on redmine。