【发布时间】:2022-08-17 18:59:40
【问题描述】:
我一直在努力在我的 JAPE 语法中使用模板。我试图在右手边的 Java 块中使用它们,但我现在明白它们只能在普通的 JAPE 结构中工作。
作品:
Phase: FooPhase
Input: Token
Options: control=Appelt
Template: variable_name = \"testing\"
Rule: foo_1
(
{Token.string == \"foo\"}
):annot
-->
:annot.Foo = {var_name = [variable_name]}
不工作:
Phase: FooPhase
Input: Token
Options: control=Appelt
Template: variable_name = \"testing\"
Rule: foo_1
(
{Token.string == \"foo\"}
):annot
-->
: annot{
FeatureMap newFeatures = Factory.newFeatureMap();
newFeatures.put(\"var_name\", [variable_name]);
outputAS.add(bindings.get(\"annot\").firstNode(),bindings.get(\"annot\").lastNode(),\"Foo\", newFeatures);
}