gpt4 book ai didi

debugging - 是否有在 perl 6 中打印堆栈跟踪的规范方法?

转载 作者:行者123 更新时间:2023-12-04 04:02:21 25 4
gpt4 key购买 nike

在 perl 5 中,我会使用任何 Carp 函数。在 perl 6 中,搜索没有帮助,而且 trace pragma将打印所有堆栈,而不仅仅是我想要的堆栈。我只能使用抛出异常,捕获它并打印它的旧技巧:

try {
X::AdHoc.new(payload => 'Stack').throw;
CATCH { when X::AdHoc { .say; } }
}

或者,更懒一点:
{
die;
CATCH { default { .say } }
}

这样做的正确方法是什么?

最佳答案

我实际上在写这个问题时找到了答案,并决定将它张贴在这里,因为它没有出现在我之前的任何搜索中。 Perl 6 Backtrace类将获取堆栈跟踪并将其转换为字符串:

say "Stack: " ~ Backtrace.new;

(使用 Backtrace.new.full 来查看一些通常隐藏的其他低级堆栈帧。)

关于debugging - 是否有在 perl 6 中打印堆栈跟踪的规范方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45686864/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com