Это мое абстрактное синтаксическое дерево (https://i.imgur.com/7R4Gcz8.png)
Я пытаюсь сделать эту грамматику рекурсивной с помощью этого кода
DECLARATION.Rule = DATATYPE + DECLARATION2;
DECLARATION2.Rule = OBJECTS + ";";
OBJECTS.Rule = OBJECTS + "," + ID + ASSIGN | ID + ASSIGN;
Но у меня есть объектный узел внутри другого объектного узлакогда этот узел может иметь только двух дочерних элементов
, я пытался использовать:
DECLARATION2.Rule = MakePlusRule(DECLARATION2, toTerm(","), OBJECTS);
, но ничего не произошло, и мой вход не распознается. Это вход, который я пытаюсь распознать:
int a = 0, b = 3, c;
это мой первый пост, извините, если формат не правильный, и спасибо.