获取称为当前方法的方法

时间:2013-01-20 15:08:25

标签: ruby

  

可能重复:
  How to get the name of the calling method?

如何在以下示例中说明调用foo的方法?

class Example
  def initialize
  end

  def foo
    puts "Hello World"  
  end

  def bar
    foo 
  end

  def cats
    bar      
  end
end

Example.new.cats打印栏。我想要获得整个callstack。例如。猫 - >吧 - > FOO

更新

这样做:put caller [0..1]

Hello World
(irb):11:in `bar'
(irb):15:in `cats'

1 个答案:

答案 0 :(得分:5)

使用例如:puts caller[0]这将为您提供呼叫者的信息。