Jflex 1.6.1 проблема парсинга

205
13 июня 2019, 14:00

jflex 1.6.1 (ОС SimplyLinux 8.2). Возникла проблема с созданием парсера: он определяет только самый первый токен из начала файла, а остальные игнорит (не видит). "Error: could not match input" (см. ниже) - это стандартное сообщение, когда больше ничего не нашёл.

Пример. Конфиг - файл test.flex: %% /*для вывода в консоль используем опцию %debug*/ %debug %class Test %public %final %unicode %char %line %column %integer %% /*эти два токена будем парсить*/ "bool" {return 1;} "value" {return 2;}

Входной файл input.txt: bool value = boolean_t<true>::value; bool value = boolean_t<false>::value; bool value = boolean_t<true>::value;

Кидаем оба файла в дир., например, test, и там из консоли генерим парсер test.jar: jflex test.flex javac Test.java jar cf test.jar Test.class

Запускаем: java -cp test.jar Test input.txt

Вывод:

line: 1 col: 1 match: --bool--

action [17] { return 1; }

1

Exception in thread "main" java.lang.Error: Error: could not match input

at Test.zzScanError(Test.java:445)

at Test.yylex(Test.java:627)

at Test.main(Test.java:667)

(первый bool нашёлся, остальные bool и value - нет)

READ ALSO
Ошибка FMXLLoader.load()

Ошибка FMXLLoader.load()

Пытаюсь запустить приложение JavaFX, ловлю exception in Application start methodЕсть подозрение, что проблемы в пути к файлу

161
Практические примеры применения масок svg?

Практические примеры применения масок svg?

Прочитал эти статьи по теории масок, но не уверен, что понял всё правильно

187
Получение данных из JSON документа

Получение данных из JSON документа

Хочу достать текст анекдота через данный API, но JSON приходит в формате [{"text:"abcdefgh"}] и из-за [] parse не работает, как получить нужные данные?

143
Не корректная работа pointerenter chrome

Не корректная работа pointerenter chrome

Всем привет, столкнулся с тем, что событие pointerenter в chrome для тачскрина работает не корректно(отрабатывает только первый тригер, те

123