Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::bimaps::relation::detail::relation_info_hook< TA, TB, Info, force_mutable > Class Template Reference

#include <mutant_relation.hpp>

Inheritance diagram for boost::bimaps::relation::detail::relation_info_hook< TA, TB, Info, force_mutable >:
Collaboration diagram for boost::bimaps::relation::detail::relation_info_hook< TA, TB, Info, force_mutable >:

Public Types

typedef BOOST_DEDUCED_TYPENAME
tagged_info_type::value_type 
info_type
 
typedef BOOST_DEDUCED_TYPENAME
tagged_info_type::tag 
info_tag
 
typedef relation_storage< TA,
TB, false > 
non_mutable_storage
 
typedef ::boost::mpl::vector2
< relation_storage< TA, TB,
true >, relation_storage< TA,
TB, false > > 
mutant_views
 
typedef BOOST_DEDUCED_TYPENAME
tags::support::default_tagged
< TA, member_at::left >::type 
tagged_left_type
 
typedef BOOST_DEDUCED_TYPENAME
tags::support::default_tagged
< TB, member_at::right >::type 
tagged_right_type
 
typedef
BOOST_DEDUCED_TYPENAME::boost::mpl::if_c
< force_mutable,
BOOST_DEDUCED_TYPENAME::boost::remove_const
< BOOST_DEDUCED_TYPENAME
tagged_left_type::value_type >
::type, BOOST_DEDUCED_TYPENAME
tagged_left_type::value_type >
::type 
left_value_type
 The type stored in the relation. More...
 
typedef
BOOST_DEDUCED_TYPENAME::boost::mpl::if_c
< force_mutable,
BOOST_DEDUCED_TYPENAME::boost::remove_const
< BOOST_DEDUCED_TYPENAME
tagged_right_type::value_type >
::type, BOOST_DEDUCED_TYPENAME
tagged_right_type::value_type >
::type 
right_value_type
 The type stored in the relation. More...
 
typedef BOOST_DEDUCED_TYPENAME
tagged_left_type::tag 
left_tag
 The tag of the member. By default it is member_at::{side}. More...
 
typedef BOOST_DEDUCED_TYPENAME
tagged_right_type::tag 
right_tag
 The tag of the member. By default it is member_at::{side}. More...
 

Public Member Functions

BOOST_DEDUCED_TYPENAME
base_::left_value_type
get_left ()
 
const BOOST_DEDUCED_TYPENAME
base_::left_value_type
get_left () const
 
BOOST_DEDUCED_TYPENAME
base_::right_value_type
get_right ()
 
const BOOST_DEDUCED_TYPENAME
base_::right_value_type
get_right () const
 

Public Attributes

info_type info
 
BOOST_DEDUCED_TYPENAME
base_::left_value_type 
left
 data More...
 
BOOST_DEDUCED_TYPENAME
base_::right_value_type 
right
 data More...
 

Protected Member Functions

 relation_info_hook ()
 
 relation_info_hook (BOOST_DEDUCED_TYPENAME::boost::call_traits< BOOST_DEDUCED_TYPENAME base_::left_value_type >::param_type l, BOOST_DEDUCED_TYPENAME::boost::call_traits< BOOST_DEDUCED_TYPENAME base_::right_value_type >::param_type r, BOOST_DEDUCED_TYPENAME::boost::call_traits< info_type >::param_type i=info_type())
 
template<class Relation >
 relation_info_hook (const Relation &rel)
 
template<class Relation >
void change_to (const Relation &rel)
 
template<class Archive >
void serialize (Archive &ar, const unsigned int)
 

Member Typedef Documentation

template<class TA , class TB , class Info , bool force_mutable>
typedef BOOST_DEDUCED_TYPENAME tagged_info_type::tag boost::bimaps::relation::detail::relation_info_hook< TA, TB, Info, force_mutable >::info_tag
template<class TA , class TB , class Info , bool force_mutable>
typedef BOOST_DEDUCED_TYPENAME tagged_info_type::value_type boost::bimaps::relation::detail::relation_info_hook< TA, TB, Info, force_mutable >::info_type
template<class TA, class TB, bool force_mutable = false>
typedef BOOST_DEDUCED_TYPENAME tagged_left_type ::tag boost::bimaps::relation::symmetrical_base< TA, TB, force_mutable >::left_tag
inherited

The tag of the member. By default it is member_at::{side}.

template<class TA, class TB, bool force_mutable = false>
typedef BOOST_DEDUCED_TYPENAME ::boost::mpl::if_c< force_mutable, BOOST_DEDUCED_TYPENAME ::boost::remove_const< BOOST_DEDUCED_TYPENAME tagged_left_type::value_type >::type, BOOST_DEDUCED_TYPENAME tagged_left_type::value_type >::type boost::bimaps::relation::symmetrical_base< TA, TB, force_mutable >::left_value_type
inherited

The type stored in the relation.

typedef ::boost::mpl::vector2< relation_storage< TA , TB , true >, relation_storage< TA , TB , false > > boost::bimaps::relation::detail::relation_storage< TA , TB , force_mutable >::mutant_views
inherited
typedef relation_storage<TA ,TB ,false> boost::bimaps::relation::detail::relation_storage< TA , TB , force_mutable >::non_mutable_storage
inherited
template<class TA, class TB, bool force_mutable = false>
typedef BOOST_DEDUCED_TYPENAME tagged_right_type::tag boost::bimaps::relation::symmetrical_base< TA, TB, force_mutable >::right_tag
inherited

The tag of the member. By default it is member_at::{side}.

template<class TA, class TB, bool force_mutable = false>
typedef BOOST_DEDUCED_TYPENAME ::boost::mpl::if_c< force_mutable, BOOST_DEDUCED_TYPENAME ::boost::remove_const< BOOST_DEDUCED_TYPENAME tagged_right_type::value_type >::type, BOOST_DEDUCED_TYPENAME tagged_right_type::value_type >::type boost::bimaps::relation::symmetrical_base< TA, TB, force_mutable >::right_value_type
inherited

The type stored in the relation.

template<class TA, class TB, bool force_mutable = false>
typedef BOOST_DEDUCED_TYPENAME tags::support::default_tagged< TA, member_at::left >::type boost::bimaps::relation::symmetrical_base< TA, TB, force_mutable >::tagged_left_type
inherited
template<class TA, class TB, bool force_mutable = false>
typedef BOOST_DEDUCED_TYPENAME tags::support::default_tagged< TB, member_at::right >::type boost::bimaps::relation::symmetrical_base< TA, TB, force_mutable >::tagged_right_type
inherited

Constructor & Destructor Documentation

template<class TA , class TB , class Info , bool force_mutable>
boost::bimaps::relation::detail::relation_info_hook< TA, TB, Info, force_mutable >::relation_info_hook ( )
inlineprotected
template<class TA , class TB , class Info , bool force_mutable>
boost::bimaps::relation::detail::relation_info_hook< TA, TB, Info, force_mutable >::relation_info_hook ( BOOST_DEDUCED_TYPENAME::boost::call_traits< BOOST_DEDUCED_TYPENAME base_::left_value_type >::param_type  l,
BOOST_DEDUCED_TYPENAME::boost::call_traits< BOOST_DEDUCED_TYPENAME base_::right_value_type >::param_type  r,
BOOST_DEDUCED_TYPENAME::boost::call_traits< info_type >::param_type  i = info_type() 
)
inlineprotected
template<class TA , class TB , class Info , bool force_mutable>
template<class Relation >
boost::bimaps::relation::detail::relation_info_hook< TA, TB, Info, force_mutable >::relation_info_hook ( const Relation &  rel)
inlineprotected

Member Function Documentation

template<class TA , class TB , class Info , bool force_mutable>
template<class Relation >
void boost::bimaps::relation::detail::relation_info_hook< TA, TB, Info, force_mutable >::change_to ( const Relation &  rel)
inlineprotected
template<class TA , class TB , class Info , bool force_mutable>
template<class Archive >
void boost::bimaps::relation::detail::relation_info_hook< TA, TB, Info, force_mutable >::serialize ( Archive &  ar,
const unsigned int   
)
inlineprotected

Member Data Documentation

template<class TA , class TB , class Info , bool force_mutable>
info_type boost::bimaps::relation::detail::relation_info_hook< TA, TB, Info, force_mutable >::info

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