Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.
PrevUpHomeNext

Struct transforms_type

boost::proto::transforms_type — The type used to define the global proto::transforms, a key for use when creating and accessing a slot in a transform environment for a set of external transforms.

Synopsis

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


struct transforms_type {

  // public member functions
  template<typename Value> 
    env<transforms_type, see-below> operator=(Value &) const;
  template<typename Value> 
    env<transforms_type, see-below> operator=(Value const &) const;
};

Description

The proto::transforms_type type, along with the proto::transforms global, are declared using the BOOST_PROTO_DEFINE_ENV_VAR() macro.

transforms_type public member functions

  1. template<typename Value> 
      env<transforms_type, see-below> operator=(Value & value) const;
    template<typename Value> 
      env<transforms_type, see-below> operator=(Value const & value) const;

    If Value is a specialization boost::reference_wrapper<T>, this function returns env<transforms_type, T &>(value.get()).

    Else, if the type Value is non-copyable (i.e., a function, an array, abstract, or an ostream), this function returns env<transforms_type, Value cv &>(value), where cv is const for the second overload, and empty for the first.

    Otherwise, this function returns env<transforms_type, Value>(value).


PrevUpHomeNext