检查字符串或文件的语法

时间:2019-05-17 16:59:06

标签: perl6

是否有等效于在文件上运行perl6 -c的内部(如仅内存中)来检查语法? 到目前为止,有两种方法

  • 正在运行EVAL,但这实际上在运行代码。它的速度很快,但是如果不对所评估的结构进行垃圾收集,则可能会导致一些内存问题
  • 创建一个临时文件并在其上运行perl6 -c,但是如上所述,这是安全的,但是要慢一个数量级。

我正在寻找一种安全的方法(如perl6 -c)和一种快速的方法(如EVAL)。有想法吗?

1 个答案:

答案 0 :(得分:1)

正如上面的评论中所指出的,Raku 现在通过让您将 :check 命名参数传递给 EVALFILE(检查文件的语法)或 EVAL(以检查字符串的语法)。在任一情况下,如果语法有效,函数将返回 Nil,否则将抛出相关异常。