Boost C++ 库

……这是世界上最受尊敬、设计最精良的 C++ 库项目之一。 Herb SutterAndrei Alexandrescu, C++ Coding Standards

结构体模板 is_transform - Boost C++ 函数库
PrevUpHomeNext

结构体模板 is_transform

boost::proto::is_transform — 布尔元函数,用于判断一个类型是否为 PrimitiveTransform

提要

// In header: <boost/proto/traits.hpp>

template<typename T> 
struct is_transform :  mpl::bool_<true-or-false> {
};

描述

proto::is_transform<>proto::make<> 变换器用来确定一个类型 R 是否表示一个要应用的 PrimitiveTransform,还是仅仅表示它本身。

它也被 proto::call<> 变换器用来确定函数类型 R()R(A1)R(A1, A2) 是否应(根据需要)接收表达式、状态和数据参数。

除非为类型 T 特化,否则 proto::is_transform<T>::value 的计算如下:

  • 如果 T 是一个类类型,它直接或间接继承自 proto::transform<> 的实例化,则 proto::is_transform<T>::valuetrue

  • 否则,proto::is_transform<T>::valuefalse


PrevUpHomeNext