как сообщить об ошибке для неопределенной грамматики, определенной с помощью anltr

Различие между «истинным XHTML», «faux XHTML» и HTML, а также важность типа MIME, отправленного сервером, были уже хорошо описаны здесь . Если вы хотите попробовать прямо сейчас, вот простой отредактированный фрагмент с предварительным просмотром в реальном времени, включая самозакрытый тег сценария для браузеров:

div { display: flex; }
div + div {flex-direction: column; }
Mime type:

Вы можете увидеть Hello, true XHTML. Nice to meet you! ниже textarea.

Для неспособных браузеров вы можете копировать содержимое текстового поля и сохранять его как файл с расширением .xhtml (или .xht) ( благодарит Alek за этот намек ).

-1
задан Bart Kiers 7 March 2019 в 10:13
поделиться

1 ответ

Не видя полной грамматики, я думаю, что ваша проблема заключается в отсутствии токена EOF в вашем основном правиле. ANTLR4 потребляет столько данных, сколько может, но если он не соответствует чему-либо хотя бы в основном правиле, он игнорирует остальное, что объясняет, почему вы не видите ошибку. Добавляя EOF, вы сообщаете вашему ANTLR4, что все входные данные должны совпадать:

calc: choice INTEGER INTEGER EOF;
0
ответ дан Mike Lischke 7 March 2019 в 10:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: