Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
multivisitors.hpp File Reference
Include dependency graph for multivisitors.hpp:

Classes

struct  boost::detail::variant::two_variables_holder< VisitorT, Visitable1T, Visitable2T >
 

Namespaces

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

Macros

#define BOOST_VARAINT_MAX_MULTIVIZITOR_PARAMS   4
 
#define BOOST_VARIANT_OPERATOR_BEG()
 
#define BOOST_VARIANT_OPERATOR_END()   ), visitable1_, visitable2_); \
 
#define BOOST_VARANT_VISITORS_VARIABLES_PRINTER(z, n, data)   BOOST_PP_COMMA() boost::ref( BOOST_PP_CAT(vis, n) ) \
 
#define BOOST_VARIANT_VISIT(z, n, data)
 
#define BOOST_VARIANT_APPLY_VISITOR_BEG()
 
#define BOOST_VARIANT_APPLY_VISITOR_END()   ); \
 
#define BOOST_VARANT_VISITORS_VARIABLES_PRINTER(z, n, data)   BOOST_PP_COMMA() BOOST_PP_CAT(var, BOOST_PP_ADD(n, 3)) \
 
#define BOOST_VARIANT_VISIT(z, n, data)
 

Functions

template<class VisitorT , class Visitable1T , class Visitable2T >
two_variables_holder< VisitorT,
Visitable1T, Visitable2T > 
boost::detail::variant::make_two_variables_holder (VisitorT &visitor, Visitable1T &visitable1, Visitable2T &visitable2) BOOST_NOEXCEPT
 
template<class VisitorT , class Visitable1T , class Visitable2T >
two_variables_holder< const
VisitorT, Visitable1T,
Visitable2T > 
boost::detail::variant::make_two_variables_holder (const VisitorT &visitor, Visitable1T &visitable1, Visitable2T &visitable2) BOOST_NOEXCEPT
 

Macro Definition Documentation

#define BOOST_VARAINT_MAX_MULTIVIZITOR_PARAMS   4
#define BOOST_VARANT_VISITORS_VARIABLES_PRINTER (   z,
  n,
  data 
)    BOOST_PP_COMMA() boost::ref( BOOST_PP_CAT(vis, n) ) \
#define BOOST_VARANT_VISITORS_VARIABLES_PRINTER (   z,
  n,
  data 
)    BOOST_PP_COMMA() BOOST_PP_CAT(var, BOOST_PP_ADD(n, 3)) \
#define BOOST_VARIANT_APPLY_VISITOR_BEG ( )
Value:
return ::boost::apply_visitor( \
var2 \
two_variables_holder< VisitorT, Visitable1T, Visitable2T > make_two_variables_holder(VisitorT &visitor, Visitable1T &visitable1, Visitable2T &visitable2) BOOST_NOEXCEPT
Definition: multivisitors.hpp:89
bgl_named_params< PType, BOOST_PP_CAT(graph_visitor, _t)> visitor(const PType &p)
Definition: named_function_params.hpp:171
#define BOOST_VARIANT_APPLY_VISITOR_END ( )    ); \
#define BOOST_VARIANT_OPERATOR_BEG ( )
Value:
return ::boost::apply_visitor( \
::boost::bind<result_type>(boost::ref(visitor_), _1, _2 \
BOOST_FORCEINLINE reference_wrapper< T > BOOST_REF_CONST ref(T &t)
Definition: ref.hpp:131
boost::arg< 2 > _2
Definition: bind.hpp:46
boost::arg< 1 > _1
Definition: bind.hpp:45
#define BOOST_VARIANT_OPERATOR_END ( )    ), visitable1_, visitable2_); \
#define BOOST_VARIANT_VISIT (   z,
  n,
  data 
)
Value:
template <BOOST_PP_ENUM_PARAMS(BOOST_PP_ADD(n, 1), class VisitableUnwrapped)> \
BOOST_VARIANT_AUX_GENERIC_RESULT_TYPE(result_type) operator()( \
BOOST_PP_ENUM_BINARY_PARAMS(BOOST_PP_ADD(n, 1), VisitableUnwrapped, & vis) \
) const \
{ \
} \
#define BOOST_VARANT_VISITORS_VARIABLES_PRINTER(z, n, data)
Definition: multivisitors.hpp:116
void const
Definition: is_convertible.hpp:460
#define BOOST_VARIANT_OPERATOR_BEG()
Definition: multivisitors.hpp:55
#define BOOST_PP_REPEAT
Definition: repeat.hpp:29
#define n
Definition: register_functions_iterate.hpp:7
#define BOOST_PP_ADD(x, y)
Definition: add.hpp:28
#define BOOST_PP_ENUM_BINARY_PARAMS(count, p1, p2)
Definition: enum_binary_params.hpp:27
#define BOOST_VARIANT_OPERATOR_END()
Definition: multivisitors.hpp:60
result_traits< R, F >::type result_type
Definition: bind_template.hpp:15
#define BOOST_VARIANT_VISIT (   z,
  n,
  data 
)
Value:
template <class Visitor BOOST_PP_COMMA() BOOST_PP_ENUM_PARAMS(BOOST_PP_ADD(n, 3), class T)> \
inline BOOST_VARIANT_AUX_GENERIC_RESULT_TYPE(BOOST_DEDUCED_TYPENAME Visitor::result_type) apply_visitor( \
) \
{ \
} \
#define BOOST_VARANT_VISITORS_VARIABLES_PRINTER(z, n, data)
Definition: multivisitors.hpp:116
T
Definition: mem_fn_cc.hpp:25
#define BOOST_PP_REPEAT
Definition: repeat.hpp:29
#define n
Definition: register_functions_iterate.hpp:7
actor< variable< T > > const var(T &v)
Definition: primitives.hpp:230
#define BOOST_PP_ADD(x, y)
Definition: add.hpp:28
#define BOOST_PP_ENUM_BINARY_PARAMS(count, p1, p2)
Definition: enum_binary_params.hpp:27
#define BOOST_DEDUCED_TYPENAME
Definition: suffix.hpp:465
#define BOOST_VARIANT_APPLY_VISITOR_BEG()
Definition: multivisitors.hpp:106
#define BOOST_PP_COMMA()
Definition: comma.hpp:19
data_type const data
Definition: env.hpp:164
#define BOOST_VARIANT_APPLY_VISITOR_END()
Definition: multivisitors.hpp:112
result_traits< R, F >::type result_type
Definition: bind_template.hpp:15