问题标签 [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.
c++ - Boost hana 获取第一个匹配的索引
因此,我正在尝试使用boost::hana
该库创建一个库,该库需要基于值获取元素索引的功能:
有没有可能的方法来做到这一点?更好的是,它已经在hana
我不知道了吗?
感谢您的支持!
c++ - Why is boost::hana's set not default constructable?
today I found that boost::hana
's map
and set
aren't default constructable, while the tuple
is. Is there any particular reason for this because it is quite annoying.
This
fails with the following error:
even though it is perfectly valid to have an empty map or set:
Which compiles flawlessly.
Any help is appreciated.
EDIT:
It doesn't actually matter if it is empty, it is always illegal to default construct map
s and set
s.
c++ - STL 和 Hana 元组之间的转换
完成此操作的hana方式是什么?我意识到我可以使用:hana::make_tuple(std::ref(x), std::ref(y), std::ref(z))
,但这似乎不必要地冗长。
c++ - 检查元组类型是否是彼此的子集
假设我有 2 个未实例化的元组。有没有一种惯用的方法来检查一组是否是另一组的子集?
如果这需要另一种类型而不是hana::tuple_c
,这也很好。实际上,我当前的输入由 组成std::tuple
,但我无法让它工作。
不起作用的代码(但我觉得应该有类似的可能):
我目前的解决方法boost::mpl
是做一个交集,然后比较结果。这可行,但我对纯boost::hana
解决方案感兴趣:
c++ - 如何为 Hana 序列编写 for 循环?
我有一个 Boos.Hana 序列,我想将它打印到屏幕上,用逗号分隔。但是逗号仅分隔元素,所以我必须检查我是否在最后一个元素。
目前我的 hack 非常糟糕(查看指针并转换为void*
.
在 Boost.Fusion 的情况下,它更复杂,因为我使用了融合迭代器(boost::fusion::begin
和boost::fusion::end
),但至少我可以比较迭代器。( bool last = result_of::equal_to<typename result_of::next<First>::type, Last>::value
)。
问这个问题的另一种方法是 Hana 中是否有(元)迭代器。
c++ - C++:使用 boost::hana 将数组元素扩展为函数的参数
我在两个月前发现了 boost::hana。看起来很强大,所以我决定看看。从文档中我看到了这个例子:
这相当于:
我想知道是否有可能(如果是的话如何)像这样写:
编译时的一种“解包”,甚至:
c++ - Boost.Hana:如何检查函数是否具有特定类型的专业化?
我有一个模板函数,默认情况下没有定义,但它专门用于某些类型:
如何编写一个 constexpr 函数来告诉我类型 T 是否具有上述函数的特化?
我的最大努力:
然而,这个静态断言会触发,如果我做对了,我希望它不会触发。
c++ - 访问 tuple_t 的类型
我有这个代码:
这输出:
我想访问 'char*' 类型,但如果我这样做:
它输出:
这是因为它是一个参考,如果我这样做:
然后它输出'char *'。
这是访问 tuple_t 类型的方法吗?必须有不那么繁琐的方法。
c++ - 在集合中寻找一个值
我有以下代码:
如何获得特定类型的值?:
像 'mySet[char*]' 什么的。设置是否适用于此,还是我必须使用地图?
c++ - 有没有办法获取地图类型?
我有以下代码:
有没有办法事先知道“myMap”的类型?我尝试使用:
但它失败了,因为 decltype(myMap) 是 hana::map< implementation-defined >。是否有一种“result_of”元函数可以提供 imp 定义的类型?喜欢:
我需要存储类成员映射的类型。