【发布时间】:2021-06-18 21:43:54
【问题描述】:
我已经简化了一个更复杂的模式,我试图匹配以下程序:
my token paren { '(' <tok> ')' }
my token tok { <paren>? foo }
say "(foo)foo" ~~ /<tok>/;
这对我来说似乎很简单,但我得到了这个错误:
No such method 'tok' for invocant of type 'Match'. Did you mean 'to'?
in regex paren at a.p6 line 1
in regex tok at a.p6 line 2
in block <unit> at a.p6 line 4
这个错误的原因是什么?
如果我将第一个 <tok> 更改为 <&tok>,则该模式匹配没有错误,但是我没有捕获该命名模式,在我原来的更复杂的情况下,我需要它。
【问题讨论】: