问题标签 [boost-hana]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
537 浏览

c++11 - Clang 3.6.0 在尝试编译“hana/example/core/is_a.cpp”时崩溃

尝试从https://github.com/ldionne/hana最新来源(截至今天)编译 Boost.Hana 库。期间发生崩溃make examples。是最新的源-编译器组合有问题,还是我没有真正安装所需的编译器版本(Hana 需要 Clang 中的一些最新错误修复)?我对 OS X 还很陌生,所以在设置编译器和库时有些吃力,并且不知道如何正确配置 cmake 以使用新安装的 clang 进行构建。

我已经通过 Homebrew 安装了 clang:

当我尝试只使用新安装的编译器时,构建失败,因为它找不到“cstdio”标头。

所以我还从 github 克隆了“libcxx”并更改了 CMakeCache.txt 中的设置:

这是我现在在崩溃输出中得到的引用make examples

0 投票
1 回答
177 浏览

c++ - 创建具有不可移动/不可复制类型的 hana 元组

我正试图围绕着伟大的 boost::hana 并试图弄清楚如何翻译一些老式的元组代码。

也许它有点特别,但我的类型既不可复制也不可移动,并且想将它们打包在容器中。考虑政策设计...

我想我只是不知道如何在价值世界中创建一个 hana 元组。我尝试的方式不起作用,因为make<Tuple>(CompT{}...)需要可复制或至少可移动的类型。

所以很可能这不是这样做的方法。还是这是hana的限制?

谢谢!

0 投票
1 回答
1608 浏览

c++ - 是否可以反省使用 Boost Hana 的方法?

Boost Hana提供了以简单而美观的方式自省类成员字段的能力:

但是,文档仅提及 member fields。我也想反省一下方法。我试图用一种方法天真地扩展这个例子:

这编译。但是,一旦我尝试使用它,使用类似于上面的代码(for_each...),我就会得到很多编译错误。由于没有显示方法自省的示例,我想知道它是否受支持。

0 投票
1 回答
270 浏览

c++ - 通过引用提升 hana fold_left lamba 调用

我想遍历一个多图(地图的地图),例如:map<int,map<char, string>>在 boost hana 的帮助下。Lamba 函数at不能采用引用类型&map(编译错误:非常量引用),因此,我无法在多映射中加载或存储元素。

是否可以像我一样用 boost::hana 解决这个问题?还是有其他方法?

更新1:

没有hana 的先前解决方案需要参数包。但我需要一个接受键作为元组的函数。

0 投票
1 回答
635 浏览

c++ - 提升元组类型的hana大小

我知道如何获取元组对象的大小,boost::hana如下所示:

但是元组类型的大小呢?stl 已经提供了以下元组类型特征:

hana 中是否有类似的类型特征?

0 投票
2 回答
2058 浏览

c++ - 是否可以使用 Boost.Hana 反序列化?

我开始使用 Boost.Hana,想知道是否有办法反序列化回 Boost.Hana 已知的 Struct。例如,我知道将这样的 Struct 序列化为 json 字符串非常简单,但我没有找到任何关于其他方式的信息。目前是不可能用 Boost.Hana 反序列化数据还是我错过了什么?

0 投票
1 回答
325 浏览

c++ - 为什么`boost::hana::range_c`不是序列?

我想hana::ziphana::tupleand上使用hana::range_c,但hana::range_c不被认为是Sequence,这是hana::zip. 这个决定背后的原因是什么?在尊重该决定的同时,我如何(惯用地)实现我的目标?

0 投票
1 回答
291 浏览

c++ - 使用 Boost.Hana 定义编译时 Comparable 对象

我正在努力将用户定义的类型作为hana::map. 我遇到一种static_assert说法,即必须在编译时进行比较。我确实实现constexpr bool operator==了(我相信)所有这些的组合。有什么问题?由于 my operator==is constexpr,我的对象应该在编译时具有可比性,对吧?

0 投票
3 回答
1098 浏览

c++ - Hana:如何从变体创建类型元组?

如果我有一个变体,像这样:

有没有一种简单的方法可以将变体可以包含的类型提取到 Boost.Hana 元组中,以便以下内容成立:

0 投票
3 回答
611 浏览

c++ - 在 boost hana 中过滤元组

我不确定我是否正确使用了 boost hana,但contains似乎有效。

为什么大小为ht10?