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

Как я могу использовать boost::mpl::fold с boost::fusion::map?
Когда я пытаюсь скомпилировать это: #include <boost/fusion/container/map.hpp> #include <boost/mpl/fold.hpp> int main(int argc, char** argv) { typedef boost::fusion::map < boost::fusion::pair<int, const...
1265 просмотров
schedule 31.10.2022

Boost.MPL и генерация списка типов
Фон Это для менеджера памяти в игровом движке. У меня есть freelist , и я хотел бы иметь список времени компиляции, если они. (например, вектор MPL или Fusion). freelist соответствуют размерам выделения, и при выделении/освобождении объектов...
4242 просмотров

Как использовать boost::fusion::transform для гетерогенных контейнеров?
Boost.org пример для fusion::transform выглядит следующим образом: struct triple { typedef int result_type; int operator()(int t) const { return t * 3; }; }; // ... assert(transform(make_vector(1,2,3), triple()) ==...
1144 просмотров
schedule 13.07.2022

Как сериализовать fusion::vector?
Скажите, как я могу сериализовать/десериализовать тип объекта fusion::vector? Спасибо.
373 просмотров
schedule 13.07.2022

вопрос о форсированном слиянии
У меня возникли проблемы с компиляцией следующего (я новичок в fusion). В частности, я не уверен, откуда берется "_" (в is_same)? Из boost::лямбда? Буст::mpl? Какое включение мне нужно для компиляции? template <typename T> struct check {...
342 просмотров
schedule 13.04.2023

Перебор Boost fusion::vector
Я пытаюсь перебрать вектор boost::fusion, используя: typedef typename fusion::result_of::begin<T>::type t_iter; std::cout << distance(begin(t), end(t)) << std::endl; for(t_iter it = begin(t); it != end(t); next(it)){...
2312 просмотров
schedule 23.11.2022

Как заполнить boost::fusion::vector во время выполнения?
Во-первых, приносим извинения за сходство с моим предыдущим вопросом здесь , но я не думаю, что спрашивал правильная вещь. У меня есть метод: template <typename T> void some_method( T &t) {...} который принимает тип...
3636 просмотров
schedule 27.09.2022

применить boost :: fusion :: for_each для boost :: fusion :: vector с изменяемым функциональным объектом
Я пытаюсь использовать boost :: fusion :: vector. Однако у меня проблемы с очень простой проблемой. #include <iostream> #include <string> #include <boost/fusion/container/vector.hpp> #include <boost/fusion/algorithm.hpp>...
2782 просмотров
schedule 09.05.2022

разобрать строку в структуру с помощью Boost Spirit
У меня есть следующий код, который мне нужен для анализа строки и перемещения ее в структуру, определенную следующим образом: #include "boost\spirit\include\classic.hpp" #include "boost\spirit\include\qi.hpp" #include...
771 просмотров

Почему Boost.Spirit корректно разбирает идентификатор в std::string, а не в адаптированную структуру, состоящую исключительно из std::string?
Я определил правило для идентификатора: начинать с буквенного символа, за которым следует любое количество буквенно-цифровых символов. У меня разные результаты, когда я анализирую непосредственно std::string по сравнению с адаптированной...
962 просмотров

Адаптация пустой структуры для Boost Fusion
У меня пустая структура: struct MyStruct {}; Я хочу адаптировать это для использования в Boost Fusion. Обычно я бы использовал BOOST_FUSION_ADAPT_STRUCT , но для этого макроса требуются два параметра, чтобы назвать структуру и перечислить...
492 просмотров
schedule 09.12.2022

Ограничения BOOST_FUSION_ADAPT_STRUCT
Я пробовал играть с макросом BOOST_FUSION_ADAPT_STRUCT и пробовал некоторые наивные вещи, такие как использование Fusion для печати любой произвольной структуры. Начиная с этого пример кода, приведенный в документации , мне не удалось выполнить...
4823 просмотров
schedule 15.10.2022

Объявление адаптации Boost Fusion для шаблонной самореферентной структуры
Я пытаюсь объявить самореферентную структуру, подобную дереву, которая основана на типе данных, которые может содержать структура. Я сталкиваюсь с ошибками компиляции при попытке объявить определение адаптации шаблона boost fusion для этой структуры....
139 просмотров
schedule 19.06.2022

ускоренное слияние копирует меньшую последовательность в большую последовательность
До сих пор я копировал последовательность слияния src в последовательность слияния dst. struct Dst { ... } dst; boost::fusion::copy( src, dst ); Однако dst, представляющая собой структуру, адаптированную как последовательность слияния, имеет...
121 просмотров
schedule 28.12.2022

Указатели на члены класса при повторении с помощью boost::fusion
У меня есть boost::graph, который использует связанные свойства, такие как следующие: struct Vertex { std::string id; }; Если я хочу использовать эту информацию в boost::dynamic_properties (например, для печати в формате graphml), я...
405 просмотров

Привязка симпатичного принтера к актерам boost::phoenix при итерации с boost::fusion
Этот вопрос является продолжением указателей на членов класса при повторении с boost::fusion , где работает принятое решение. Теперь я хочу не только добавить (примитивные) значения в карту свойств, но и использовать симпатичный принтер для...
92 просмотров

Генерация шаблонного кода путем преобразования аргументов в строковые литералы.
В одном из своих проектов я пытаюсь реализовать более общий подход к написанию наших собственных упрощенных XML-файлов. Для этого я успешно использовал boost-fusion . Для каждого нового формата файла XML клиент должен написать следующее. Просто...
264 просмотров

Вложенные структуры Boost Fusion
Можно ли определить (или адаптировать) структуру Boost Fusion, содержащую элементы Boost Fusion, в одном операторе? Например, как я могу адаптировать или определить что-то эквивалентное этому: struct Outer { int i; float j; struct...
311 просмотров
schedule 29.10.2022

Получение списка типов членов из адаптированной структуры boost fusion
У меня есть адаптированные структуры boost fusion, подобные этой: struct A { int x; double y; std::string z; }; BOOST_FUSION_ADAPT_STRUCT( A, x, y, z ) Я хотел бы перебрать типы адаптации во время компиляции....
118 просмотров