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

Реализовать граничные состояния слов в flex/lex (парсер-генератор)
Я хочу иметь возможность определять совпадения шаблонов в зависимости от того, встречаются ли они после словесных символов или после несловных символов. Другими словами, я хочу смоделировать символ регулярного выражения \b для разрыва слова в начале...
2369 просмотров
schedule 02.10.2022

Не удалось скомпилировать вывод lex
Когда я пытаюсь скомпилировать вывод этой тривиальной программы lex: # lex.l integer printf("found keyword INT"); с использованием: $ gcc lex.yy.c Я получил: Undefined symbols: "_yywrap", referenced from: _yylex in...
6723 просмотров
schedule 10.12.2022

Ошибка при компиляции вывода Lex в C++
Когда я компилирую вывод Lex как C++, я получаю следующие ошибки: $ make [ 6%] Building CXX object lib/CMakeFiles/lang.dir/lex_lexer.cpp.o /home/michael/Projects/lang/build/lib/lex_lexer.cpp: In function ‘int lang::lexyacc::yylex()’:...
1071 просмотров
schedule 04.10.2022

Boost.Spirit: отчеты об ошибках Lex + Qi
Я пишу синтаксический анализатор для довольно сложных конфигурационных файлов, в которых используются отступы и т. д. Я решил использовать Lex для разбиения ввода на токены, так как это упрощает жизнь. Проблема в том, что я не могу найти примеры...
963 просмотров
schedule 10.12.2022

ошибка lex соляриса
Разворачиваю решение lex/yacc, пробуя эту грамматику . Проблема возникает, когда я хочу скомпилировать файл .lex с помощью этой команды: lex -t "file.lex" Я получаю эту ошибку: Ошибка: дерево синтаксического анализа слишком велико. Попробуйте...
338 просмотров
schedule 15.06.2024

Исключения в LEX&YACC
Я разрабатываю компилятор lex/yacc c. Чтобы обрабатывать сбои и анализировать ошибки, я хочу развернуть обработчик системы исключений. На самом деле обрабатывается только сообщение "ошибка синтаксического анализа", независимо от проблемы....
256 просмотров
schedule 03.12.2023

Допустимо ли хранить предыдущее состояние как глобальную переменную?
Одной из самых больших проблем при проектировании комбинации лексический анализатор/парсер является чрезмерное усердие при проектировании анализатора. (f)lex не предназначен для логики синтаксического анализатора, которая иногда может мешать...
292 просмотров
schedule 04.01.2024

нет ошибок при разборе пустого файла yacc/lex
У меня есть синтаксический анализатор, сгенерированный из yacc/lex. Он отлично работает для всех правил, которые я установил, кроме одного случая. Если файл, который анализирует этот парсер, пуст, он выдает ошибку. Я хочу добавить правило, чтобы...
846 просмотров
schedule 07.10.2022

Бизон флекс для начинающих
Как я могу напечатать номер строки, в которой произошла ошибка. Я попытался использовать yylineno в функции yyerror() и записать %option yylineno в файл .l , но после компиляции он выдает ошибку « yylineno undeclared (first use in this...
5646 просмотров
schedule 20.04.2024

Как установить API из lex yacc в программу
Я создаю ФАЙЛ .exe, который может анализировать выражение, сгенерированное lex и yacc. Но я просто получаю ввод с экрана и просто возвращаю результат парсера с экрана. Я видел несколько предложений по использованию YY_BUFFER_STATE...
463 просмотров
schedule 22.02.2024

Нежадное сопоставление регулярных выражений в Flex
Я только начал работать с Flex и не могу понять, как сопоставить следующее выражение: "Dog".*"Cat" ------------------ Input : Dog Ca Cat Cc Cat ------------------ Output: Dog Ca Cat Cc Cat Но я хочу нежадное сопоставление со следующим...
2361 просмотров
schedule 30.12.2023

запрос на членство в чем-то, кроме структуры или союза? во Флекс&Бизон
в моем финальном проекте осталось несколько кодов, один из них для flex & bison. Проблема в том, что gcc возвращает мне сообщение "запрос члена ' db ' в чем-то, что не является структурой или объединением" в файле bison... Я не знаю, как это...
1354 просмотров
schedule 09.10.2022

Как использовать lex с исходным файлом C?
Мне нужно написать простой токенизатор для языка C. Ему не нужно классифицировать вещи, не нужно использовать какую-либо грамматику. Все, что ему нужно сделать, это напечатать отдельно слова, символы, круглые скобки и другие вещи. Я использую lex...
1328 просмотров
schedule 07.05.2024

Проблемы JISON с командой синтаксического анализа
Привет, я новичок в JISON и застрял в следующем коде: Для синтаксического анализа команды: project -a -n <projectname> Мой код выглядит следующим образом: "project" {return 'PROJECTCOMMAND';} "-n" {return...
84 просмотров
schedule 27.05.2024

Ошибка компоновщика Yacc на Mac
Я получаю эту ошибку, когда пытаюсь скомпилировать. Раньше я компилировал файлы lex без проблем, но я не могу заставить yacc компилироваться без ошибок. :~ yacc project-5.y :~ lex project.l :~g++ -o $dragon project-5.tab.c lex.yy.c clang:...
2547 просмотров
schedule 25.09.2022

Какой объем буферизации требуется для лексирования, управляемого таблицами?
Я пишу реализацию оболочки POSIX на Rust. Это связано с некоторыми довольно неудобными требованиями: Ввод должен читаться построчно. Если ввод поступает из источника, для которого поиск невозможен, это означает, что ввод необходимо читать по...
412 просмотров
schedule 27.09.2022

Использование lex / flex вне yacc / bison
В настоящее время я использую bison и flex для анализа формул линейной временной логики и создания из них автоматов. Я использую flex по умолчанию, то есть записываю токен в yylval, если необходимо, и возвращаю идентификатор токена bison. Я...
314 просмотров
schedule 29.12.2023

Как создать программу, объединяющую Parser и Lexer
Я хочу создать компилятор, используя Ocamllex/Ocamlyacc, и я хочу создать основную программу, объединяющую оба моих OcamlParser и OcamlLexer. Дело в том, что я знаю, как это сделать, используя ввод в командной строке, например следующий код: let...
166 просмотров
schedule 29.02.2024

Что делает return yytext[0]?
В этой части lex программы lex-yacc для чего добавляются строки . return yytext[0]; \n return yytext[0]; Это лексическая часть %{ #include "y.tab.h" %} %% a return A; b return B; . return yytext[0]; \n return yytext[0]; %% Что он...
2505 просмотров
schedule 20.05.2024

Идентификатор ключевого слова C в lex
Я новичок в написании файлов lex, и я не уверен, правильно ли форматирую свой файл. Я пытаюсь захватить ключевые слова C из исходного файла C и распечатать их обратно с префиксом строки формата. Моя попытка (показывает неполный список ключевых...
485 просмотров
schedule 06.03.2024