Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext

Struct template transform

boost::proto::transform — Inherit from this to make your type a PrimitiveTransform.

Synopsis

// In header: <boost/proto/transform/impl.hpp>

template<typename PrimitiveTransform> 
struct transform {
  // types
  typedef  ;

  // member classes/structs/unions
  template<typename This, typename Expr> 
  struct result<> {
    // types
    typedef ,  >:: ;
  };
  template<typename This, typename Expr, typename State> 
  struct result<> {
    // types
    typedef  >:: ;
  };
  template<typename This, typename Expr, typename State, typename Data> 
  struct result<> {
    // types
    typedef  ;
  };

  // public member functions
  template<typename Expr> 
    , >:: 
    () ;
  template<typename Expr, typename State> 
    >:: 
    (, ) ;
  template<typename Expr, typename State> 
    >:: 
    (, ) ;
  template<typename Expr, typename State, typename Data> 
     
    (, , ) ;
  template<typename Expr, typename State, typename Data> 
     
    (, , ) ;
};

Description

transform public member functions

  1. template<typename Expr> 
      , >:: 
      ( expr) ;

    Returns:

    typename PrimitiveTransform::template impl<Expr &, unspecified, unspecified>()(expr, unspecified, unspecified)
  2. template<typename Expr, typename State> 
      >:: 
      ( expr,  state) ;

    Returns:

    typename PrimitiveTransform::template impl<Expr &, State &, unspecified>()(expr, state, unspecified)
  3. template<typename Expr, typename State> 
      >:: 
      ( expr,  state) ;

    Returns:

    typename PrimitiveTransform::template impl<Expr &, State const &, unspecified>()(expr, state, unspecified)
  4. template<typename Expr, typename State, typename Data> 
       
      ( expr,  state,  data) ;

    Returns:

    typename PrimitiveTransform::template impl<Expr &, State &, Data &>()(expr, state, data)
  5. template<typename Expr, typename State, typename Data> 
       
      ( expr,  state,  data) ;

    Returns:

    typename PrimitiveTransform::template impl<Expr &, State const &, Data &>()(expr, state, data)

PrevUpHomeNext