Вопросы по теме 'boost-hana'
Доступ к типам tuple_t
У меня есть этот код:
auto myTuple = hana::tuple_t<int, char*, long>;
std::cout << boost::typeindex::type_id<decltype(myTuple[1_c])>().pretty_name() << std::endl;
Это выводит:...
123 просмотров
schedule
12.02.2023
Объединение нескольких карт
Я уже спрашивал об этом в списке рассылки Boost, но, похоже, я не совсем ясно выразил свои намерения. Это также может быть я не совсем понимаю, как я могу это сделать.
Я хочу объединить несколько карт в хане, см. следующий пример кода:...
204 просмотров
schedule
09.01.2024
Перебор boost::hana::tuple
Я не мог найти способ получить доступ к реальному объекту с hana::for_each итерацией по кортежам.
struct A {
std::string name;
}
struct B {
std::string name;
}
using type_t = decltype(boost::hana::tuple_t<A, B>);
type_t names;...
1238 просмотров
schedule
12.06.2023
Использование boost::hana и CMake без полной установки (внешний проект?)
Недавно я скачал новейшую библиотеку boost, чтобы получить доступ к boost::hana, и прочитал их документацию страница , на которой они предлагают использовать "модуль FindHana.cmake для настройки Hana в качестве внешнего проекта для использования"....
474 просмотров
schedule
03.12.2022
Цикл constexpr без содержимого constexpr
Я хочу использовать boost hana для генерации этого окончательного кода:
template < typename ... Ts >
void foo(Ts ... data) {
constexpr auto tuple = hana::make_tuple(data...);
//Code that I need to be generate...
591 просмотров
schedule
27.04.2024
`boost::hana` самоанализ шаблонной функции
Я хотел бы узнать, определяет ли тип функцию-член с аргументом шаблона, но аргумент шаблона ограничен SFINAE.
Пример У меня есть тип A с одной функцией foo
struct A{
template<typename T>...
159 просмотров
schedule
04.09.2022
Как создать boost::hana::map с ключами, являющимися строками времени компиляции (C++14)?
Я видел в списке рассылки boost.hana следующий пример, который не компилируется:
#include <boost/hana.hpp>
#include <string>
namespace hana = boost::hana;
int main(int argc, char **argv) {
constexpr auto m1 = hana::make_map(...
535 просмотров
schedule
26.03.2023
Как объединить две карты Boost Hana?
У меня есть два boost::hana::map , которые нужно объединить.
constexpr auto m1 = hana::make_map(
hana::make_pair("key1"_s, hana::type_c<std::string>),
hana::make_pair("key2"_s, hana::type_c<std::string>)
);
constexpr auto...
109 просмотров
schedule
21.12.2022
Когда массив символов является постоянным выражением?
Я использовал Boost.Hana для генерации строк времени компиляции для использования в качестве параметров шаблона с gcc:
using namespace boost::hana::literals;
#define GQL_STR(tok) decltype(#tok ## _s)
Это зависит от наличия набора...
142 просмотров
schedule
22.04.2023
Определите структуру с более чем 40 полями, используя BOOST_HANA_DEFINE_STRUCT в Boost::Hana
Определение структуры с более чем 40 полями с помощью макроса BOOST_HANA_DEFINE_STRUCT в библиотеке Boost::hana, например,
#include <boost/hana/define_struct.hpp>
namespace hana = boost::hana;
// a simple struct having 41 fields
struct Foo...
229 просмотров
schedule
15.08.2022
Как преобразовать boost::hana::map в лямбды
У меня есть следующий код
template <typename T>
void my_func(T& /*var*/)
{
};
auto my_types = hana::make_map(
hana::make_pair(hana::type_c<std::uint32_t>, hana::integral_c<std::uint8_t, 1>),...
87 просмотров
schedule
27.10.2022
Не постоянное выражение в лямбда-функции
У меня такой код:
#include <boost/hana.hpp>
#include <array>
#include <iostream>
#include <utility>
namespace hana = boost::hana;
#define HEADER_CONNECT 0b00010000
#define HEADER_CONNACK 0b00001000
struct ConnectFrame
{...
147 просмотров
schedule
27.02.2022
Объединение предикатов функциональным способом
Предоставляет ли Boost Hana возможность комбинировать предикаты с логическими операторами?
Я имею в виду что-то примерно такое
constexpr auto both = [](auto&& f, auto&& g){
return [&f,&g](auto&& x){ return f(x)...
59 просмотров
schedule
01.01.2023