JavaScript 包含以下语法:
`hello ${name}`
我想知道 Ragel 机器如何拆分上面的语法。在我看来,右花括号的类型取决于解析状态。例如,在下面的代码中,大括号是字符串标记的一部分,因为${
标记不存在:
`hello name}`
最后,当您考虑在变量表达式本身中也可以找到正确的卷曲时,它变得更加棘手,即:
`hello ${() => { return name }()}`
Ragel 如何实现类似的上下文相关语法?
JavaScript 包含以下语法:
`hello ${name}`
我想知道 Ragel 机器如何拆分上面的语法。在我看来,右花括号的类型取决于解析状态。例如,在下面的代码中,大括号是字符串标记的一部分,因为${
标记不存在:
`hello name}`
最后,当您考虑在变量表达式本身中也可以找到正确的卷曲时,它变得更加棘手,即:
`hello ${() => { return name }()}`
Ragel 如何实现类似的上下文相关语法?