|  | Home | Libraries | People | FAQ | More | 
boost::proto::is_transform — Boolean metafunction which tells whether a type is a PrimitiveTransform or not.
// In header: <boost/proto/traits.hpp>
template<typename T> 
struct is_transform :  mpl::bool_<true-or-false> {
};
            proto::is_transform<> is used by the
            proto::make<>
            transform to determine whether a type R represents a
            PrimitiveTransform to apply, or whether it merely represents itself.
          
            It is also used by the 
            proto::call<>
            transform to determine whether the function types R(),
            R(A1), and R(A1, A2) should
            be passed the expression, state and data parameters (as needed).
          
            Unless specialized for a type
            T, proto::is_transform<T>::value
            is computed as follows:
            
                  If T is a class type that inherits directly or indirectly from
                  an instantiation of
                  proto::transform<>,
                  proto::is_transform<T>::value is true.
                
                  Otherwise, proto::is_transform<T>::value
                  is false.