首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >获取当前正在执行的方法的名称?

获取当前正在执行的方法的名称?
EN

Stack Overflow用户
提问于 2018-01-08 04:35:40
回答 2查看 0关注 0票数 0

$0变量是顶级Ruby程序的变量,但是对于当前的方法是否有变量呢?

EN

回答 2

Stack Overflow用户

发布于 2018-01-08 13:24:07

可以尝试下这个:

代码语言:javascript
复制
class Foo
  def test_method
    __method__
  end
end

这将返回一个符号

票数 0
EN

Stack Overflow用户

发布于 2018-01-08 14:06:19

参考:http://nippets.dzone.com/post/Show/2785

代码语言:javascript
复制
module Kernel
private
    def this_method_name
      caller[0] =~ /`([^']*)'/ and $1
    end
end

class Foo
  def test_method
    this_method_name
  end
end

puts Foo.new.test_method    # => test_method
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100001332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档