Я пишу простой парсер для перевода запроса в SQL. Я завершил синтаксический анализ и получил дерево синтаксического анализа, но теперь мне нужно перевести эту грамматику в SQL с помощью ANTLR 4.
Если часть моей грамматики выглядит как
boolOp : OR|XOR|AND;
Как распечатать его, если есть совпадения?
На самом деле я пытаюсь распечатать AND
, если мой запрос существует AND
оператор или если мой запрос существует OR
, тогда мне нужно вывести OR
оператор в соответствии с правилом грамматики boolOp
, показанным выше.
ЧАСТЬ МОЕГО КОДА
public void exitBoolOp( Parser.BoolOpContext ctx)
{
if (ctx.AND() == AND)
{
System.out.print(" AND "+"\t");
}
else if (ctx.OR() == OR)
{
System.out.print(" OR "+"\t");
}
else
{
System.out.print(" XOR "+"\t");
}
}