Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
operators.hpp File Reference
Include dependency graph for operators.hpp:
This graph shows which files directly or indirectly include this file:

Classes

singleton  boost::type_erasure::any< Concept, T >
 The class template any can store any object that models a specific . More...
 
struct  boost::type_erasure::incrementable< T >
 The incrementable concept allow pre and post increment on an any. More...
 
struct  boost::type_erasure::concept_interface< incrementable< T >, Base, T, typename::boost::enable_if< detail::should_be_non_const< T, Base > >::type >
 
struct  boost::type_erasure::concept_interface< incrementable< T >, Base, T, typename::boost::enable_if< detail::should_be_const< T, Base > >::type >
 
struct  boost::type_erasure::decrementable< T >
 The decrementable concept allow pre and post decrement on an any. More...
 
struct  boost::type_erasure::concept_interface< decrementable< T >, Base, T, typename::boost::enable_if< detail::should_be_non_const< T, Base > >::type >
 
struct  boost::type_erasure::concept_interface< decrementable< T >, Base, T, typename::boost::enable_if< detail::should_be_const< T, Base > >::type >
 
struct  boost::type_erasure::complementable< T, R >
 The complementable concept allow use of the bitwise complement operator on an any. More...
 
struct  boost::type_erasure::concept_interface< complementable< T, R >, Base, T >
 
struct  boost::type_erasure::negatable< T, R >
 The negatable concept allow use of the unary minus operator on an any. More...
 
struct  boost::type_erasure::concept_interface< negatable< T, R >, Base, T >
 
struct  boost::type_erasure::dereferenceable< R, T >
 
struct  boost::type_erasure::addable< T, U, R >
 
struct  boost::type_erasure::concept_interface< addable< T, U, R >, Base, T >
 
struct  boost::type_erasure::concept_interface< addable< T, U, R >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::subtractable< T, U, R >
 
struct  boost::type_erasure::concept_interface< subtractable< T, U, R >, Base, T >
 
struct  boost::type_erasure::concept_interface< subtractable< T, U, R >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::multipliable< T, U, R >
 
struct  boost::type_erasure::concept_interface< multipliable< T, U, R >, Base, T >
 
struct  boost::type_erasure::concept_interface< multipliable< T, U, R >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::dividable< T, U, R >
 
struct  boost::type_erasure::concept_interface< dividable< T, U, R >, Base, T >
 
struct  boost::type_erasure::concept_interface< dividable< T, U, R >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::modable< T, U, R >
 
struct  boost::type_erasure::concept_interface< modable< T, U, R >, Base, T >
 
struct  boost::type_erasure::concept_interface< modable< T, U, R >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::left_shiftable< T, U, R >
 
struct  boost::type_erasure::concept_interface< left_shiftable< T, U, R >, Base, T >
 
struct  boost::type_erasure::concept_interface< left_shiftable< T, U, R >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::right_shiftable< T, U, R >
 
struct  boost::type_erasure::concept_interface< right_shiftable< T, U, R >, Base, T >
 
struct  boost::type_erasure::concept_interface< right_shiftable< T, U, R >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::bitandable< T, U, R >
 
struct  boost::type_erasure::concept_interface< bitandable< T, U, R >, Base, T >
 
struct  boost::type_erasure::concept_interface< bitandable< T, U, R >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::bitorable< T, U, R >
 
struct  boost::type_erasure::concept_interface< bitorable< T, U, R >, Base, T >
 
struct  boost::type_erasure::concept_interface< bitorable< T, U, R >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::bitxorable< T, U, R >
 
struct  boost::type_erasure::concept_interface< bitxorable< T, U, R >, Base, T >
 
struct  boost::type_erasure::concept_interface< bitxorable< T, U, R >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::add_assignable< T, U >
 
struct  boost::type_erasure::concept_interface< add_assignable< T, U >, Base, T, typename::boost::disable_if< ::boost::is_same< typename::boost::type_erasure::placeholder_of< Base >::type, const T & > >::type >
 
struct  boost::type_erasure::concept_interface< add_assignable< T, U >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::subtract_assignable< T, U >
 
struct  boost::type_erasure::concept_interface< subtract_assignable< T, U >, Base, T, typename::boost::disable_if< ::boost::is_same< typename::boost::type_erasure::placeholder_of< Base >::type, const T & > >::type >
 
struct  boost::type_erasure::concept_interface< subtract_assignable< T, U >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::multiply_assignable< T, U >
 
struct  boost::type_erasure::concept_interface< multiply_assignable< T, U >, Base, T, typename::boost::disable_if< ::boost::is_same< typename::boost::type_erasure::placeholder_of< Base >::type, const T & > >::type >
 
struct  boost::type_erasure::concept_interface< multiply_assignable< T, U >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::divide_assignable< T, U >
 
struct  boost::type_erasure::concept_interface< divide_assignable< T, U >, Base, T, typename::boost::disable_if< ::boost::is_same< typename::boost::type_erasure::placeholder_of< Base >::type, const T & > >::type >
 
struct  boost::type_erasure::concept_interface< divide_assignable< T, U >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::mod_assignable< T, U >
 
struct  boost::type_erasure::concept_interface< mod_assignable< T, U >, Base, T, typename::boost::disable_if< ::boost::is_same< typename::boost::type_erasure::placeholder_of< Base >::type, const T & > >::type >
 
struct  boost::type_erasure::concept_interface< mod_assignable< T, U >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::left_shift_assignable< T, U >
 
struct  boost::type_erasure::concept_interface< left_shift_assignable< T, U >, Base, T, typename::boost::disable_if< ::boost::is_same< typename::boost::type_erasure::placeholder_of< Base >::type, const T & > >::type >
 
struct  boost::type_erasure::concept_interface< left_shift_assignable< T, U >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::right_shift_assignable< T, U >
 
struct  boost::type_erasure::concept_interface< right_shift_assignable< T, U >, Base, T, typename::boost::disable_if< ::boost::is_same< typename::boost::type_erasure::placeholder_of< Base >::type, const T & > >::type >
 
struct  boost::type_erasure::concept_interface< right_shift_assignable< T, U >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::bitand_assignable< T, U >
 
struct  boost::type_erasure::concept_interface< bitand_assignable< T, U >, Base, T, typename::boost::disable_if< ::boost::is_same< typename::boost::type_erasure::placeholder_of< Base >::type, const T & > >::type >
 
struct  boost::type_erasure::concept_interface< bitand_assignable< T, U >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::bitor_assignable< T, U >
 
struct  boost::type_erasure::concept_interface< bitor_assignable< T, U >, Base, T, typename::boost::disable_if< ::boost::is_same< typename::boost::type_erasure::placeholder_of< Base >::type, const T & > >::type >
 
struct  boost::type_erasure::concept_interface< bitor_assignable< T, U >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::bitxor_assignable< T, U >
 
struct  boost::type_erasure::concept_interface< bitxor_assignable< T, U >, Base, T, typename::boost::disable_if< ::boost::is_same< typename::boost::type_erasure::placeholder_of< Base >::type, const T & > >::type >
 
struct  boost::type_erasure::concept_interface< bitxor_assignable< T, U >, Base, U, typename::boost::disable_if< ::boost::type_erasure::is_placeholder< T > >::type >
 
struct  boost::type_erasure::equality_comparable< T, U >
 
struct  boost::type_erasure::less_than_comparable< T, U >
 
struct  boost::type_erasure::subscriptable< R, T, N >
 
struct  boost::type_erasure::ostreamable< Os, T >
 The ostreamable concept allows an any to be written to a std::ostream. More...
 
struct  boost::type_erasure::istreamable< Is, T >
 The istreamable concept allows an any to be read from a std::istream. More...
 

Namespaces

 boost
 Duration formatting facet for input.
 
 boost::type_erasure
 
 boost::type_erasure::detail
 

Macros

#define BOOST_TYPE_ERASURE_UNARY_INPLACE_OPERATOR(name, op)
 INTERNAL ONLY. More...
 
#define BOOST_TYPE_ERASURE_UNARY_OPERATOR(name, op)
 INTERNAL ONLY. More...
 
#define BOOST_TYPE_ERASURE_BINARY_OPERATOR(name, op)
 INTERNAL ONLY. More...
 
#define BOOST_TYPE_ERASURE_ASSIGNMENT_OPERATOR(name, op)
 INTERNAL ONLY. More...
 

Functions

template<class F , class T , class U >
bool boost::type_erasure::detail::less_impl (const F &f, const T &lhs, const U &rhs,::boost::mpl::true_)
 
template<class F , class T , class U >
bool boost::type_erasure::detail::less_impl (const F &f, const T &lhs, const U &rhs,::boost::mpl::false_)
 

Macro Definition Documentation

#define BOOST_TYPE_ERASURE_ASSIGNMENT_OPERATOR (   name,
  op 
)

INTERNAL ONLY.

#define BOOST_TYPE_ERASURE_BINARY_OPERATOR (   name,
  op 
)

INTERNAL ONLY.

#define BOOST_TYPE_ERASURE_UNARY_INPLACE_OPERATOR (   name,
  op 
)

INTERNAL ONLY.

#define BOOST_TYPE_ERASURE_UNARY_OPERATOR (   name,
  op 
)
Value:
template<class T = _self, class R = T> \
struct name \
{ \
static R apply(const T& arg) { return op arg; } \
}; \
\
template<class T, class R, class Base> \
struct concept_interface<name<T, R>, Base, T> : Base \
{ \
{ \
return ::boost::type_erasure::call(name<T, R>(), *this); \
} \
};
const int name
Definition: gzip.hpp:94
void const
Definition: is_convertible.hpp:460
T
Definition: mem_fn_cc.hpp:25
detail::keywords< 1 > arg
Definition: args.hpp:34
Definition: arg_fwd.hpp:23
auto call(F f, Context const &context, mpl::true_)
Definition: call.hpp:52
adjacency_iterator typedef T::adjacency_iterator type
Definition: graph_traits.hpp:42

INTERNAL ONLY.