9

默认情况下,Raku 的 "die" 报告 "die" 所在的行号,如果你想要调用上下文的行号,比如 perl 5 的 "carp" 怎么办?

4

2 回答 2

10

没有直接等效于carp,但您可以使用参数启动 raku ,这将在执行错误--ll-exception时创建完整的堆栈跟踪。

我想还没有人开始创建一个Carp模块。鉴于有一个类,创建一个carp子不应该太难:Backtrace

$ raku -e 'say "file: {.file}:{.line}" for Backtrace.new' 
file: SETTING::src/core.c/Backtrace.pm6:94
file: SETTING::src/core.c/Backtrace.pm6:94
file: -e:1
于 2020-01-12T23:48:59.240 回答
3

现在GitHub 上有一个Carp 模块,应该很快就会在 Raku 生态系统中可用。它目前只支持最基本的功能,但随着时间的推移,它应该会得到改进。

因此,您的问题的答案是像在 Perl 5 中一样使用 Carp。:-)

于 2020-01-16T06:57:04.530 回答