Да, вы можете использовать скрытый токен в парсере.
Мы делаем это постоянно.Единственная проблема заключается в том, что вам нужно знать, когда его искать.
У Antlr есть несколько терминов, которые он использует.
Токен Hidden
просто перемещается в отдельном потоке.Пользователь всегда может проверить наличие скрытых токенов, вызвав getHiddenAfter
или getHiddenBefore
на текущем совпавшем токене.
Примечание: Может быть несколько скрытых токенов, до или после,совпадающий токен, поэтому вы должны проходить через них.
Discarded
токен фактически удаляется, когда вы указываете лексеру отказаться от него.Он никогда тебя больше не увидит.