Вопросы по теме 'boost-spirit'

Как увеличить размер исполняемого стека gcc?
У меня есть большая метапрограмма Boost/Spirit, которая сбрасывает стек gcc, когда я пытаюсь ее скомпилировать. Как я могу увеличить размер стека gcc, чтобы я мог скомпилировать эту программу? Примечание: бесконечной рекурсии не происходит, но...
16192 просмотров
schedule 16.03.2024

Ошибки компиляции в файлах повышения
Я получаю много ошибок при компиляции кода с использованием библиотек повышения, в основном, когда я использую пространство имен Spirit. Ошибки являются синтаксическими ошибками в файлах повышения, таких как:...
199 просмотров

Как я могу реализовать const в Boost Spirit?
В настоящее время я заинтересован в Boost Spirit и пытаюсь что-то построить. Можем ли мы реализовать что-то вроде const в C++, используя Spirit? Например, пользователь определит такой элемент, как; constant var PROG_LANG="Java";...
349 просмотров

Phoenix::bind для лямбда-выражений C++11 в семантических действиях boost::spirit::qi
Моя цель — создать обходной путь, чтобы я мог использовать лямбда-выражения C++11 внутри семантических действий Boost Spirit Qi, имея при этом доступ к более расширенному набору заполнителей qi, таких как qi::_pass или qi::_r1, без необходимость...
2153 просмотров
schedule 10.11.2023

C++ Spirit Boost: преобразование входного итератора в прямой итератор
Итак, я очень новичок в Boost, но у меня возникают проблемы при попытке сделать некоторые из самых простых вещей в моем проекте приложения win32 в vs2010. Я зашел в свойства своего проекта vs2010 и убедился, что мои включаемые файлы находятся в...
164 просмотров

Boost Spirit в строковое правило
Предполагая, что у меня есть следующее правило, ожидающее строковое значение, но должно преобразовать его в целое число: integer %= attr_cast<int,std::string>( lexeme[ -(char_('+') | char_('-')) >> char_("1-9")...
602 просмотров
schedule 17.10.2022

Повышение духа, возвращаемое значение семантического действия мешает атрибуту правила
Следующая программа представляет собой искусственный пример (уменьшенный из более крупной грамматики, над которой я работаю), демонстрирующий странное поведение. Вывод программы, работающей как есть, является «привет» и неверен. Если я удалю...
960 просмотров
schedule 11.01.2024

Ошибка функции Boost Spirit Phoenix
Этот код взят из примеров для библиотек Boost Spirit, все в порядке: on_error<fail>(expr,error_handler_function(eh)("expecting ", _4, _3)); Однако этот код не удалось скомпилировать в Xcode:...
98 просмотров
schedule 01.03.2024

Ошибка при компиляции грамматики с включенной отладкой
Я пытаюсь отладить грамматику boost::spirit, которую я хочу использовать в проекте Visual Studio: это мой фрагмент кода: #include <boost/spirit/include/classic.hpp> #include <boost/spirit/include/qi.hpp> #include...
210 просмотров

непоследовательное поведение грамматики Boost Spirit
У меня есть небольшая грамматика, которую я хочу использовать в рабочем проекте. Минимальный исполняемый пример: #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wunused-local-typedefs" #pragma GCC diagnostic ignored...
137 просмотров
schedule 08.09.2022

Spirit X3, семантическое действие приводит к сбою компиляции: атрибут не имеет ожидаемого размера
Этот код не компилируется (gcc 5.3.1 + boost 1.60): #include <boost/spirit/home/x3.hpp> namespace x3 = boost::spirit::x3; template <typename T> void parse(T begin, T end) { auto dest = x3::lit('[') >> x3::int_ >> ';'...
311 просмотров
schedule 24.10.2022

Как установить максимальную рекурсию в духе повышения
Использование boost::spirit, если у меня есть рекурсивное правило для разбора скобок rule<std::string::iterator, std::string()> term; term %= string("(") >> *term >> string(")"); как ограничить максимальное количество...
133 просмотров
schedule 30.07.2022

Разбор командного языка с помощью Boost Spirit
Я создаю синтаксический анализатор командного языка, который я собрал по кусочкам из различных примеров. Я прочитал документы Boost Spirit Qi и Lex и думаю, что понимаю основы, но из того, что я прочитал, мне следует избегать атрибутов и использовать...
985 просмотров

Пример калькулятора Boost Spirit x3 (calc8, calc9) ошибка компоновщика
Я очень новичок в Boost Spirit (и с Boost). Очень интересная библиотека. Я использую qtcreator + MinGW 5.3. Я просто добавляю каждый исходный файл из git_hub_calc8 в новый проект и добавить некоторую библиотеку повышения, но я получил...
313 просмотров

Использование семантических действий в духе повышения для задания полей
Предполагая, что у вас есть синтаксический анализатор, использующий дух ускорения, который устанавливает это поле за исключением поля id. Можно ли использовать семантические действия для генерации и установки поля id? Или есть лучший способ добиться...
45 просмотров
schedule 02.02.2024