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

Контейнер функторов времени компиляции для управления алгоритмом?
Предположим, я хочу что-то простое, например следующее: У меня есть основной алгоритм, который случайным образом выбирает один из специализированных алгоритмов (специализированных во время компиляции) и обрабатывает этот алгоритм. Эти...
799 просмотров

Повышение::Дух::Ци. Как превратить встроенные выражения парсера в автономные грамматики и как распаковать сгенерированные ими кортежи?
Я использую QI и Phoenix и хочу написать небольшую грамматику, которая возвращает 4 логических значения, которые должны использоваться в качестве аргументов для вызова функции внутри семантического действия. У меня есть несколько функций, которым...
3915 просмотров

Как генерировать обертки для функций С++?
Я пытаюсь создать общий способ обернуть функции С++ (с другого языка). У меня есть список параметров (и итератор) и конкретная функция С++, которая вызывается в списке параметров. Я пытаюсь найти способ распаковать список параметров в качестве...
321 просмотров
schedule 01.08.2023

Как обобщить синтаксический анализатор для получения списков в произвольном порядке?
У меня есть простой синтаксический анализатор, который может анализировать списки целых чисел или строк в кавычках. Если я выполню SIMPLE_CASE , где я принимаю входные данные: std::string input1 = "{ INT: 42, 24 STR: \"Smith\", \"John\" }";...
320 просмотров
schedule 14.04.2022

с кортежами и boost.fusion, есть ли смысл использовать структуру?
кортежи похожи на структуры (обсуждается здесь: Boost::Tuples vs Structs для возвращаемых значений ). похоже, единственное преимущество в том, что структуру удобнее писать, потому что она короче и по ключу, а не по номеру. можно также...
734 просмотров

Проблемы с Boost fusion/mpl после обновления до более новой версии
Это упрощенная версия некоторого кода, который я написал: #include <iostream> #include <boost/mpl/vector.hpp> #include <boost/mpl/contains.hpp> #include <boost/mpl/placeholders.hpp> #include...
938 просмотров
schedule 29.08.2023

tuple — вспомогательная функция get_or
Мне нужна вспомогательная функция кортежа, которая, если запрошенный тип не существует в кортеже, возвращает построенный по умолчанию нулевой тип. e.g. std::tuple<bool, int> tuple(true, 0);...
143 просмотров

boost :: spirit ошибка компиляции при лексических токенах ›10
когда я пытаюсь скомпилировать следующий код, я получаю сбой компиляции (ошибка C2903: «применить»: символ не является ни шаблоном класса, ни шаблоном функции ...), когда token_list> 10 токенов. Код компилируется и анализирует правильно, когда...
178 просмотров
schedule 12.02.2023

boost::fusion, доступ к ключевому типу совместного представления в виде карты
Я пытаюсь преобразовать структуру ash в С++ для включения в свой проект, моя среда разработки - Vista 32 и Visual C++ 2008 Express, и я использую библиотеки boost typedef Component Pcomponent; typedef WaitForstart2 Pcomponent2; typedef...
141 просмотров
schedule 21.08.2022

функция boost::fusion::zip против функции boost::fusion::zip_view
Я мучительно пытаюсь изучить ускоренное слияние и не совсем понимаю разницу между zip_view и результатом функции zip. namespace fuz = boost::fusion; typedef fuz::vector<int,int> vec1; typedef fuz::vector<char,char> vec2; typedef...
495 просмотров
schedule 17.12.2022

Что делать с BOOST_FUSION_ADAPT_STRUCT с более чем 64 участниками?
Попытка создать шаблонный код для огромной структуры с более чем 64 членами и макросом BOOST_FUSION_ADAPT_STRUCT , но он не может быть скомпилирован в обновлении 3 VS2015. Я пытался поиграть с BOOST_FUSION_HAS_VARIADIC_VECTOR и...
811 просмотров

Boost Fusion: проверка адаптированного порядка членов структуры во время компиляции
Я использую BOOST_FUSION_ADAPT_STRUCT() , и мне нужно проверить, что все элементы объявлены и расположены в правильном порядке. Итак, сначала я сделал это: template <typename Sequence> struct checker { static void check() {...
467 просмотров

Создание новой последовательности Boost Fusion с использованием другой
Учитывая последовательность слияния X, я хотел бы создать новую последовательность слияния Y, реализация которой будет основана на X. В частности, я хотел бы создать шаблон класса make_fusion_conforming , чтобы template <class X> struct...
142 просмотров

Как преобразовать типы boost::fusion::vector?
Мне нужно определить два типа для указанного списка типов: первый — это boost::fusion::vector из этих типов, а второй — boost::fusion::vector , где ссылки и const удаляются для каждого типа в списке типов. Например, у меня есть int ,...
186 просмотров
schedule 04.08.2023