Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode > Struct Template Reference

This value traits template is used to create value traits from user defined node traits where value_traits::value_type will store a node_traits::node. More...

#include <member_value_traits.hpp>

Public Types

typedef NodeTraits node_traits
 
typedef T value_type
 
typedef node_traits::node node
 
typedef node_traits::node_ptr node_ptr
 
typedef node_traits::const_node_ptr const_node_ptr
 
typedef pointer_traits< node_ptrnode_ptr_traits
 
typedef pointer_traits
< node_ptr >::template
rebind_pointer< T >::type 
pointer
 
typedef pointer_traits
< node_ptr >::template
rebind_pointer< const T >
::type 
const_pointer
 
typedef value_typereference
 
typedef const value_typeconst_reference
 

Static Public Member Functions

static node_ptr to_node_ptr (reference value)
 
static const_node_ptr to_node_ptr (const_reference value)
 
static pointer to_value_ptr (const node_ptr &n)
 
static const_pointer to_value_ptr (const const_node_ptr &n)
 

Static Public Attributes

static const link_mode_type link_mode = LinkMode
 

Detailed Description

template<class T, class NodeTraits, typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
struct boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >

This value traits template is used to create value traits from user defined node traits where value_traits::value_type will store a node_traits::node.

Member Typedef Documentation

template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
typedef node_traits::const_node_ptr boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::const_node_ptr
template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
typedef pointer_traits<node_ptr>::template rebind_pointer<const T>::type boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::const_pointer
template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
typedef const value_type& boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::const_reference
template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
typedef node_traits::node boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::node
template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
typedef node_traits::node_ptr boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::node_ptr
template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
typedef pointer_traits<node_ptr> boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::node_ptr_traits
template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
typedef NodeTraits boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::node_traits
template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
typedef pointer_traits<node_ptr>::template rebind_pointer<T>::type boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::pointer
template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
typedef value_type& boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::reference
template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
typedef T boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::value_type

Member Function Documentation

template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
static node_ptr boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::to_node_ptr ( reference  value)
inlinestatic
template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
static const_node_ptr boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::to_node_ptr ( const_reference  value)
inlinestatic
template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
static pointer boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::to_value_ptr ( const node_ptr n)
inlinestatic
template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
static const_pointer boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::to_value_ptr ( const const_node_ptr n)
inlinestatic

Member Data Documentation

template<class T , class NodeTraits , typename NodeTraits::node T::* PtrToMember, link_mode_type LinkMode>
const link_mode_type boost::intrusive::member_value_traits< T, NodeTraits, PtrToMember, LinkMode >::link_mode = LinkMode
static

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