1

私は以下のようなツリートップ文法を持っています:

grammar Addme

  rule AddExpr
    Num '+' Num
  end

  rule Num
    [0-9]+ <ExprNumber>
  end

end

式を解析すると、これが機能します。

g = AddmeParser.new
t = g.parse("1234+56789")

. . . "1234"typeに一致する構文ノードがありますExprNumber。しかし、次のようにルールに括弧を追加すると:

rule Num
    ([0-9]+) <ExprNumber>
end

クラスと一致しませんExprNumber。なぜこれが起こるのでしょうか?

4

1 に答える 1