【问题标题】:Perl 6: Getting the name of function from inside itPerl 6:从函数内部获取函数名
【发布时间】:2017-01-25 23:59:43
【问题描述】:

在 Perl 6 中,如何在运行时从其主体中获取函数/子例程的名称?

例如,

sub foo {
    say "My name is: " ~  <WHAT-API-HERE??> ;
}
...
foo();

上面的代码应该打印出来:

My name is: foo

我看过MOPFAQFunctions 这样的地方。

【问题讨论】:

    标签: function introspection raku


    【解决方案1】:
    sub foo { say &?ROUTINE.name }
    foo
    

    显示:

    foo
    

    the &amp;$ROUTINE doc

    【讨论】:

    • 谢谢,我只是看错地方了,比如 MOP、FAQ、Functions。
    • @Harry 在提问时总是至少提及您的研究工作。我刚刚将您的评论编辑到您的问题中,以帮助您之前的研究工作更加明显。我猜想没有意识到你以前的研究工作可能是为什么有人(不是我)对你投反对票的原因。无论如何,希望这会有所帮助!很高兴您提出这个问题,也很高兴 raiph 分享了答案。
    • @Harry yw。 Imo 您的搜索选择(MOP、FAQ 等)是完全合理的,但您不可能知道查看有关变量的页面来寻找答案。更一般地说,文档比以前好得多,但还有很长的路要走。另请注意,在撰写此评论时,到目前为止,相对较快地获得有关 Perl 6 问题的答案的最佳位置不是 SO,而是 Perl 6 的各种友好 IRC 频道,最值得注意的是Freenode #perl6。跨度>
    • @jjmerelo 感谢您改进文档并编辑我的答案以赶上。 :)
    猜你喜欢
    • 1970-01-01
    • 2021-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-18
    • 2020-12-03
    • 1970-01-01
    相关资源
    最近更新 更多