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

This is the specialization to embed extra bits of information in a raw pointer. More...

#include <pointer_plus_bits.hpp>

Public Types

typedef Tpointer
 

Static Public Member Functions

static pointer get_pointer (pointer n)
 
static void set_pointer (pointer &n, pointer p)
 
static std::size_t get_bits (pointer n)
 
static void set_bits (pointer &n, std::size_t c)
 

Static Public Attributes

static const std::size_t Mask = ((std::size_t(1u) << NumBits) - 1)
 

Detailed Description

template<class T, std::size_t NumBits>
struct boost::intrusive::pointer_plus_bits< T *, NumBits >

This is the specialization to embed extra bits of information in a raw pointer.

The extra bits are stored in the lower bits of the pointer.

Member Typedef Documentation

template<class T , std::size_t NumBits>
typedef T* boost::intrusive::pointer_plus_bits< T *, NumBits >::pointer

Member Function Documentation

template<class T , std::size_t NumBits>
static std::size_t boost::intrusive::pointer_plus_bits< T *, NumBits >::get_bits ( pointer  n)
inlinestatic
template<class T , std::size_t NumBits>
static pointer boost::intrusive::pointer_plus_bits< T *, NumBits >::get_pointer ( pointer  n)
inlinestatic

References T.

template<class T , std::size_t NumBits>
static void boost::intrusive::pointer_plus_bits< T *, NumBits >::set_bits ( pointer n,
std::size_t  c 
)
inlinestatic
template<class T , std::size_t NumBits>
static void boost::intrusive::pointer_plus_bits< T *, NumBits >::set_pointer ( pointer n,
pointer  p 
)
inlinestatic

Member Data Documentation

template<class T , std::size_t NumBits>
const std::size_t boost::intrusive::pointer_plus_bits< T *, NumBits >::Mask = ((std::size_t(1u) << NumBits) - 1)
static

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