Вопросы по теме 'yacc'

Yacc: Код после каждого нетерминала
Есть ли способ выполнить код после каждого терминала? Так что что-то вроде этого возможно: a : B { code } C { some code } Любая помощь будет действительно оценена!
318 просмотров
schedule 16.06.2022

Что не так с этим файлом yacc?
Когда я запускаю yacc -d parser.y для следующего файла, я получаю следующие ошибки: parser.y:23.3-24.4: warning: unused value: $4 15 rules never reduced parser.y: warning: 7 useless nonterminals and 15 useless rules parser.y:16.1-14: fatal error:...
3392 просмотров
schedule 20.02.2024

Как заставить Bison не выходить, когда он вызывает yyerror
Когда мой синтаксический анализатор сканирует исходный файл с неправильным синтаксисом и вызывает yyerror, я хочу, чтобы он отображал сообщение об ошибке, но продолжал анализировать файл, чтобы потенциально отображать больше ошибок. Однако каждый...
3122 просмотров
schedule 28.07.2023

Как заставить yacc/bison и/или lex/flex перезапускать сканирование после чего-то вроде замены токена?
Есть ли способ заставить bison и/или flex перезапустить сканирование после того, как я заменю какой-то токен на что-то другое? Мой конкретный пример будет с заменой определенного слова/строки. Если я хочу, чтобы слово hello было заменено на...
2901 просмотров
schedule 31.03.2023

Управление отступами при разработке небольшого языка, похожего на питон
Я разрабатываю небольшой язык, похожий на python, с использованием flex, byacc (для лексического анализа и синтаксического анализа) и C++, но у меня есть несколько вопросов относительно управления областью действия. точно так же, как python, он...
2093 просмотров
schedule 03.03.2024

Как заставить yacc/bison и lex/flex приостановить сканирование файлов?
Я пытаюсь разобрать файл с помощью Bison/Yacc, но я хочу приостановить синтаксический анализ на некоторое время. Причина, по которой я хочу это сделать, заключается в том, что я хочу последовательно обрабатывать огромный файл и имитировать итератор...
659 просмотров
schedule 29.06.2023

Makefile для написания зависимостей парсера sql
Я реализую синтаксический анализатор sql в lex и yacc, в котором я использую таблицу символов, которую я сохранил в отдельном файле .h (sql.h), и в этом заголовочном файле у меня есть объявления некоторых функций. Определения этих функций хранятся в...
438 просмотров
schedule 29.04.2022

Компиляция парсера (flex/bison) с помощью NDK
ОБНОВЛЕНИЕ Теперь я знаю, что parser.h должен генерироваться системой make из parser.y. В файле Android.mk даже есть такая запись: edify_src_files := \ lexer.l \ parser.y \ expr.c Но я все еще не могу получить исполняемый файл из него. (Да,...
2463 просмотров

Не удается запустить pycparser: требуется ply.yacc?
Я скачал pycparser и запустил python setup.py install , но всякий раз, когда я пытаюсь запустить что угодно , я получаю: ... from .c_parser import CParser File "C:\Program Files\Python 3.2\lib\site-packages\pycparser\c_parser.py",...
3788 просмотров
schedule 27.10.2023

Можно ли использовать «вектор» в yylval yacc?
Я хочу определить yylval следующим образом: %union { int ival; char *sval; struct s_con { char exp[30]; vector<Where*> v_wheres; } *p_s_con; } Здесь Where — это класс. Потом нахожу ошибку в...
1976 просмотров
schedule 01.06.2023

Я не уверен, как выводить (сложную) полезную информацию, когда в моем парсере bison
Я пишу Flex/Bison Lexer/Parser, чтобы разобрать сценарий моего собственного дизайна в качестве задания для университета. Все идет очень хорошо, и мой скрипт правильно анализирует, обнаруживает любые ошибки и т. Д., И распознает токены, и передает...
135 просмотров
schedule 13.05.2022

что не так с этой грамматикой
s : cmd | cmd SOMETHING cmd :WORD WORD и SOMETHING не нулевые терминалы это грамматика LR1, поэтому bison без проблем разберет ее. однако я столкнулся с неожиданной проблемой во время выполнения: программа дважды запрашивает ввод,...
77 просмотров
schedule 25.04.2023

Как удалить нетерминал в файле грамматики с помощью PLY (Python Lex-Yacc)
Я столкнулся с проблемой при использовании PLY. Я хочу создать генератор графа вызовов с помощью PLY. В какой-то ситуации мне нужно отбросить некоторые токены в файле грамматики. Это потому, что мне нужно что-то сделать, когда синтаксический...
889 просмотров
schedule 22.08.2023

про восстановление ошибок от bison2.4.1
Я хочу справиться с исправлением ошибок из bison2.4.1. Я сослался на книгу Орейли (lex & yacc) и на некоторые веб-сайты, чтобы поместить токен ошибки в свое правило, но я думаю, что это не работает. это не помогает мне справляться с...
142 просмотров
schedule 18.09.2022

Какие проблемы возникают при написании синтаксического анализатора SQL в ANTLR?
Я пытаюсь определить расписание и оценить усилия, необходимые для реализации парсера ANTLR диалекта MySQL SQL. По сути, это сводится к переводу грамматики синтаксического анализатора YACC из версии MySQL ( sql_yacc.yy ) в грамматику ANTRL. Неужели...
2507 просмотров
schedule 10.06.2022

используя функции в коде, сгенерированном lex и yacc
Я хочу написать минималистичный синтаксический анализатор XML для моего приложения для составления расписания. Я не хочу использовать какие-либо библиотеки или синтаксические анализаторы, которые будут поддерживать синтаксический анализ XML, потому...
262 просмотров
schedule 26.02.2022

Определен ли порядок редукции в Yacc?
Это больше "принципиальный" вопрос, чем практический. Определен ли порядок, в котором Yacc сокращает производство и считывает новые токены из лексера. То есть, если бы у меня был следующий набор токенов: INTEGER_BEGIN INTEGER_VALUE LESS_THAN...
1325 просмотров
schedule 05.02.2024

Печать всех сокращений в Bison
Есть ли способ заставить Yacc/Bison распечатать все сокращения, которые он делает для входных данных, которые он обрабатывает? Это было бы отличным подспорьем в отладке. я уже пробовал | Item1 { printf("Item1: %s\n", yytext); } который...
1066 просмотров
schedule 19.02.2022

Как анализировать непрерывный поток текста
У меня есть задача написать приложение, которое управляет OpenVPN с помощью интерфейс управления , который представляет собой просто текстовый поток. Я думал об использовании лексера и генератора парсеров, таких как lex и yacc, для выполнения этой...
81 просмотров
schedule 27.04.2023

automake 1.12 изменяет выходные имена bison/yacc, обратно несовместимые изменения?
Я разместил репозиторий по адресу https://github.com/Habbie/autoyacc-problem , чтобы продемонстрировать моя проблема. В automake 1.11 и ниже, используя AC_PROG_YACC в configure.ac и AM_YFLAGS=-d в Makefile.am, parser.yy превращается в...
1315 просмотров
schedule 21.12.2023