当前位置: 首页>>代码示例>>C++>>正文


C++ Tuple::dynamically_typed方法代码示例

本文整理汇总了C++中Tuple::dynamically_typed方法的典型用法代码示例。如果您正苦于以下问题:C++ Tuple::dynamically_typed方法的具体用法?C++ Tuple::dynamically_typed怎么用?C++ Tuple::dynamically_typed使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Tuple的用法示例。


在下文中一共展示了Tuple::dynamically_typed方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: operator

 bool operator()(const Tuple& tup) const {
   if (not tup.dynamically_typed()) {
     // statically typed tuples return &typeid(type_list<T...>)
     // as type token
     return typeid(detail::type_list<T...>)== *(tup.type_token());
   }
   // always use a full dynamic match for dynamic typed tuples
   else if (tup.size() == sizeof...(T)) {
     auto& tarr = static_types_array<T...>::arr;
     return std::equal(tup.begin(), tup.end(), tarr.begin(),
               types_only_eq);
   }
   return false;
 }
开发者ID:asmodehn,项目名称:actor-framework,代码行数:14,代码来源:matches.hpp

示例2: get_cache_entry

 uint64_t get_cache_entry(const std::type_info* type_token,
                          const Tuple& value) {
   CAF_REQUIRE(type_token != nullptr);
   if (value.dynamically_typed()) {
     return m_dummy.second; // all groups enabled
   }
   size_t i = find_token_pos(type_token);
   // if we didn't found a cache entry ...
   if (i == m_cache_end) {
     // ... 'create' one (override oldest element in cache if full)
     advance_(m_cache_end);
     if (m_cache_end == m_cache_begin) {
       advance_(m_cache_begin);
     }
     m_cache[i].first = type_token;
     idx_token_type idx_token;
     m_cache[i].second = calc_bitmask(m_cases, idx_token, *type_token, value);
   }
   return m_cache[i].second;
 }
开发者ID:ariosx,项目名称:actor-framework,代码行数:20,代码来源:match_expr.hpp


注:本文中的Tuple::dynamically_typed方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。