Classes | Namespaces | Macros
operators.hpp File Reference
#include <cstddef>
#include <iterator>
#include <boost/config.hpp>
#include <boost/detail/workaround.hpp>
Include dependency graph for operators.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  boost::operators_impl::additive1< T, B >
 
struct  boost::operators_impl::additive2< T, U, B >
 
struct  boost::operators_impl::arithmetic1< T, B >
 
struct  boost::operators_impl::arithmetic2< T, U, B >
 
struct  boost::operators_impl::bidirectional_iteratable< T, P, B >
 
struct  boost::operators_impl::bidirectional_iterator_helper< T, V, D, P, R >
 
struct  boost::operators_impl::bitwise1< T, B >
 
struct  boost::operators_impl::bitwise2< T, U, B >
 
struct  boost::operators_impl::decrementable< T, B >
 
struct  boost::operators_impl::dereferenceable< T, P, B >
 
class  boost::operators_impl::operators_detail::empty_base< T >
 
struct  boost::operators_impl::equality_comparable1< T, B >
 
struct  boost::operators_impl::equality_comparable2< T, U, B >
 
struct  boost::operators_impl::equivalent1< T, B >
 
struct  boost::operators_impl::equivalent2< T, U, B >
 
struct  boost::operators_impl::euclidean_ring_operators1< T, B >
 
struct  boost::operators_impl::euclidean_ring_operators2< T, U, B >
 
struct  boost::operators_impl::euclidian_ring_operators1< T, B >
 
struct  boost::operators_impl::euclidian_ring_operators2< T, U, B >
 
struct  boost::operators_impl::operators_detail::false_t
 
struct  boost::operators_impl::field_operators1< T, B >
 
struct  boost::operators_impl::field_operators2< T, U, B >
 
struct  boost::operators_impl::forward_iteratable< T, P, B >
 
struct  boost::operators_impl::forward_iterator_helper< T, V, D, P, R >
 
struct  boost::operators_impl::incrementable< T, B >
 
struct  boost::operators_impl::indexable< T, I, R, B >
 
struct  boost::operators_impl::input_iteratable< T, P, B >
 
struct  boost::operators_impl::input_iterator_helper< T, V, D, P, R >
 
struct  boost::operators_impl::integer_arithmetic1< T, B >
 
struct  boost::operators_impl::integer_arithmetic2< T, U, B >
 
struct  boost::operators_impl::integer_multiplicative1< T, B >
 
struct  boost::operators_impl::integer_multiplicative2< T, U, B >
 
struct  boost::operators_impl::is_chained_base< T >
 
struct  boost::operators_impl::less_than_comparable1< T, B >
 
struct  boost::operators_impl::less_than_comparable2< T, U, B >
 
struct  boost::operators_impl::multiplicative1< T, B >
 
struct  boost::operators_impl::multiplicative2< T, U, B >
 
struct  boost::operators_impl::operators< T, U >
 
struct  boost::operators_impl::operators2< T, U >
 
struct  boost::operators_impl::operators<T, T >
 
struct  boost::operators_impl::ordered_euclidean_ring_operators1< T, B >
 
struct  boost::operators_impl::ordered_euclidean_ring_operators2< T, U, B >
 
struct  boost::operators_impl::ordered_euclidian_ring_operators1< T, B >
 
struct  boost::operators_impl::ordered_euclidian_ring_operators2< T, U, B >
 
struct  boost::operators_impl::ordered_field_operators1< T, B >
 
struct  boost::operators_impl::ordered_field_operators2< T, U, B >
 
struct  boost::operators_impl::ordered_ring_operators1< T, B >
 
struct  boost::operators_impl::ordered_ring_operators2< T, U, B >
 
struct  boost::operators_impl::output_iteratable< T, B >
 
struct  boost::operators_impl::output_iterator_helper< T >
 
struct  boost::operators_impl::partially_ordered1< T, B >
 
struct  boost::operators_impl::partially_ordered2< T, U, B >
 
struct  boost::operators_impl::random_access_iteratable< T, P, D, R, B >
 
struct  boost::operators_impl::random_access_iterator_helper< T, V, D, P, R >
 
struct  boost::operators_impl::ring_operators1< T, B >
 
struct  boost::operators_impl::ring_operators2< T, U, B >
 
struct  boost::operators_impl::shiftable1< T, B >
 
struct  boost::operators_impl::shiftable2< T, U, B >
 
struct  boost::operators_impl::totally_ordered1< T, B >
 
struct  boost::operators_impl::totally_ordered2< T, U, B >
 
struct  boost::operators_impl::operators_detail::true_t
 
struct  boost::operators_impl::unit_steppable< T, B >
 

Namespaces

 boost
 BOOST_MOVE_USE_STANDARD_LIBRARY_MOVE.
 
 boost::operators_impl
 
 boost::operators_impl::operators_detail
 

Macros

#define BOOST_BINARY_OPERATOR(NAME, OP)
 
#define BOOST_BINARY_OPERATOR_COMMUTATIVE(NAME, OP)
 
#define BOOST_BINARY_OPERATOR_NON_COMMUTATIVE(NAME, OP)
 
#define BOOST_OPERATOR2_LEFT(name)   name##2##_##left
 
#define BOOST_OPERATOR_TEMPLATE(template_name)
 
#define BOOST_OPERATOR_TEMPLATE1(template_name1)
 
#define BOOST_OPERATOR_TEMPLATE2(template_name2)
 
#define BOOST_OPERATOR_TEMPLATE3(template_name3)
 
#define BOOST_OPERATOR_TEMPLATE4(template_name4)
 

Macro Definition Documentation

◆ BOOST_BINARY_OPERATOR

#define BOOST_BINARY_OPERATOR (   NAME,
  OP 
)
Value:
template <class T, class U, class B = operators_detail::empty_base<T> > \
struct NAME##2 : B \
{ \
friend T operator OP( T lhs, const U& rhs ) { return lhs OP##= rhs; } \
}; \
\
template <class T, class B = operators_detail::empty_base<T> > \
struct NAME##1 : B \
{ \
friend T operator OP( T lhs, const T& rhs ) { return lhs OP##= rhs; } \
};

Definition at line 338 of file operators.hpp.

◆ BOOST_BINARY_OPERATOR_COMMUTATIVE

#define BOOST_BINARY_OPERATOR_COMMUTATIVE (   NAME,
  OP 
)
Value:
template <class T, class U, class B = operators_detail::empty_base<T> > \
struct NAME##2 : B \
{ \
friend T operator OP( T lhs, const U& rhs ) { return lhs OP##= rhs; } \
friend T operator OP( const U& lhs, T rhs ) { return rhs OP##= lhs; } \
}; \
\
template <class T, class B = operators_detail::empty_base<T> > \
struct NAME##1 : B \
{ \
friend T operator OP( T lhs, const T& rhs ) { return lhs OP##= rhs; } \
};

Definition at line 219 of file operators.hpp.

◆ BOOST_BINARY_OPERATOR_NON_COMMUTATIVE

#define BOOST_BINARY_OPERATOR_NON_COMMUTATIVE (   NAME,
  OP 
)
Value:
template <class T, class U, class B = operators_detail::empty_base<T> > \
struct NAME##2 : B \
{ \
friend T operator OP( T lhs, const U& rhs ) { return lhs OP##= rhs; } \
}; \
\
template <class T, class U, class B = operators_detail::empty_base<T> > \
struct BOOST_OPERATOR2_LEFT(NAME) : B \
{ \
friend T operator OP( const U& lhs, const T& rhs ) \
{ return T( lhs ) OP##= rhs; } \
}; \
\
template <class T, class B = operators_detail::empty_base<T> > \
struct NAME##1 : B \
{ \
friend T operator OP( T lhs, const T& rhs ) { return lhs OP##= rhs; } \
};

Definition at line 233 of file operators.hpp.

◆ BOOST_OPERATOR2_LEFT

#define BOOST_OPERATOR2_LEFT (   name)    name##2##_##left

Definition at line 162 of file operators.hpp.

◆ BOOST_OPERATOR_TEMPLATE

#define BOOST_OPERATOR_TEMPLATE (   template_name)
Value:
template <class T \
,class U = T \
,class B = operators_detail::empty_base<T> \
,class O = typename is_chained_base<U>::value \
> \
struct template_name; \
\
template<class T, class U, class B> \
struct template_name<T, U, B, operators_detail::false_t> \
: template_name##2<T, U, B> {}; \
\
template<class T, class U> \
struct template_name<T, U, operators_detail::empty_base<T>, operators_detail::true_t> \
: template_name##1<T, U> {}; \
\
template <class T, class B> \
struct template_name<T, T, B, operators_detail::false_t> \
: template_name##1<T, B> {}; \
\
template<class T, class U, class B, class O> \
struct is_chained_base< template_name<T, U, B, O> > { \
typedef operators_detail::true_t value; \
}; \
BOOST_OPERATOR_TEMPLATE2(template_name##2) \
BOOST_OPERATOR_TEMPLATE1(template_name##1)

Definition at line 725 of file operators.hpp.

◆ BOOST_OPERATOR_TEMPLATE1

#define BOOST_OPERATOR_TEMPLATE1 (   template_name1)
Value:
template<class T, class B> \
struct is_chained_base< template_name1<T, B> > { \
typedef operators_detail::true_t value; \
};

Definition at line 705 of file operators.hpp.

◆ BOOST_OPERATOR_TEMPLATE2

#define BOOST_OPERATOR_TEMPLATE2 (   template_name2)
Value:
template<class T, class U, class B> \
struct is_chained_base< template_name2<T, U, B> > { \
typedef operators_detail::true_t value; \
};

Definition at line 697 of file operators.hpp.

◆ BOOST_OPERATOR_TEMPLATE3

#define BOOST_OPERATOR_TEMPLATE3 (   template_name3)
Value:
template<class T, class U, class V, class B> \
struct is_chained_base< template_name3<T, U, V, B> > { \
typedef operators_detail::true_t value; \
};

Definition at line 689 of file operators.hpp.

◆ BOOST_OPERATOR_TEMPLATE4

#define BOOST_OPERATOR_TEMPLATE4 (   template_name4)
Value:
template<class T, class U, class V, class W, class B> \
struct is_chained_base< template_name4<T, U, V, W, B> > { \
typedef operators_detail::true_t value; \
};

Definition at line 681 of file operators.hpp.

NAME
string NAME
T
T
Definition: mem_fn_cc.hpp:25
BOOST_OPERATOR2_LEFT
#define BOOST_OPERATOR2_LEFT(name)
Definition: operators.hpp:162
BOOST_OPERATOR_TEMPLATE2
#define BOOST_OPERATOR_TEMPLATE2(template_name2)
Definition: operators.hpp:697


sick_visionary_ros
Author(s): SICK AG TechSupport 3D Snapshot
autogenerated on Thu Feb 8 2024 03:56:21