Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::spirit::x3::variant< Types > Struct Template Reference

#include <variant.hpp>

Collaboration diagram for boost::spirit::x3::variant< Types >:

Public Types

typedef boost::variant< Types...> variant_type
 
typedef mpl::list< typename
detail::remove_forward< Types >
::type...> 
types
 
typedef variant< Types...> base_type
 

Public Member Functions

 variant ()
 
template<typename T , typename disable_if< is_base_of< base_type, T >>::type >
 variant (T const &rhs)
 
template<typename T , typename disable_if< is_base_of< base_type, T >>::type >
 variant (T &&rhs)
 
 variant (variant const &rhs)
 
 variant (variant &rhs)
 
 variant (variant &&rhs)
 
variantoperator= (variant const &rhs)
 
variantoperator= (variant &&rhs)
 
template<typename T >
variantoperator= (T const &rhs)
 
template<typename T >
variantoperator= (T &&rhs)
 
template<typename F >
F::result_type apply_visitor (F const &v)
 
template<typename F >
F::result_type apply_visitor (F const &v) const
 
template<typename F >
F::result_type apply_visitor (F &v)
 
template<typename F >
F::result_type apply_visitor (F &v) const
 
variant_type const & get () const
 
variant_typeget ()
 

Public Attributes

variant_type var
 

Member Typedef Documentation

template<typename... Types>
typedef variant<Types...> boost::spirit::x3::variant< Types >::base_type
template<typename... Types>
typedef mpl::list<typename detail::remove_forward<Types>::type...> boost::spirit::x3::variant< Types >::types
template<typename... Types>
typedef boost::variant<Types...> boost::spirit::x3::variant< Types >::variant_type

Constructor & Destructor Documentation

template<typename... Types>
boost::spirit::x3::variant< Types >::variant ( )
inline
template<typename... Types>
template<typename T , typename disable_if< is_base_of< base_type, T >>::type >
boost::spirit::x3::variant< Types >::variant ( T const &  rhs)
inlineexplicit
template<typename... Types>
template<typename T , typename disable_if< is_base_of< base_type, T >>::type >
boost::spirit::x3::variant< Types >::variant ( T &&  rhs)
inlineexplicit
template<typename... Types>
boost::spirit::x3::variant< Types >::variant ( variant< Types > const &  rhs)
inline
template<typename... Types>
boost::spirit::x3::variant< Types >::variant ( variant< Types > &  rhs)
inline
template<typename... Types>
boost::spirit::x3::variant< Types >::variant ( variant< Types > &&  rhs)
inline

Member Function Documentation

template<typename... Types>
template<typename F >
F::result_type boost::spirit::x3::variant< Types >::apply_visitor ( F const &  v)
inline
template<typename... Types>
template<typename F >
F::result_type boost::spirit::x3::variant< Types >::apply_visitor ( F const &  v) const
inline
template<typename... Types>
template<typename F >
F::result_type boost::spirit::x3::variant< Types >::apply_visitor ( F &  v)
inline
template<typename... Types>
template<typename F >
F::result_type boost::spirit::x3::variant< Types >::apply_visitor ( F &  v) const
inline
template<typename... Types>
variant_type const& boost::spirit::x3::variant< Types >::get ( ) const
inline
template<typename... Types>
variant_type& boost::spirit::x3::variant< Types >::get ( )
inline
template<typename... Types>
variant& boost::spirit::x3::variant< Types >::operator= ( variant< Types > const &  rhs)
inline
template<typename... Types>
variant& boost::spirit::x3::variant< Types >::operator= ( variant< Types > &&  rhs)
inline
template<typename... Types>
template<typename T >
variant& boost::spirit::x3::variant< Types >::operator= ( T const &  rhs)
inline
template<typename... Types>
template<typename T >
variant& boost::spirit::x3::variant< Types >::operator= ( T &&  rhs)
inline

Member Data Documentation


The documentation for this struct was generated from the following file: