negExpression : (NOT^)* primitiveElement ;
Это правило, которое у меня есть. Теперь у меня есть этот код:
!!(1==1)
Я ожидал, что получу это дерево:
NOT
|
NOT
|
==
/ \
1 1
Однако в Antlr3 кажется, что дерево заканчивается как
NOT
/ \
NOT ==
/ \
1 1
IE. В итоге второй NOT, не имеющий дочерних узлов, вместо этого стал дочерним узлом, который стал его родным узлом.
Что я делаю не так?