1
いくつかの具体的な構文値が与えられたら、別のタイプの値(この場合はint
)にマップする方法を教えてください。具体的な構文値を他の種類の値に変換する方法はありますか?
// Syntax
start syntax MyTree = \node: "(" MyTree left "," MyTree right ")"
| leaf: Leaf leaf
;
layout MyLayout = [\ \t\n\r]*;
lexical Leaf = [0-9]+;
これは、残念ながら動作しません:
public Tree increment() {
MyTree tree = (MyTree)`(3, (1, 10))`;
return visit(tree) {
case l:(Leaf)`3` => l + 1
};
}
または私は種類を指定ADTにimplode
への唯一の方法ですか?