Public Types | Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes
bk_lib::detail::left_right_rep< L, R > Class Template Reference

#include <left_right_sequence.h>

Inheritance diagram for bk_lib::detail::left_right_rep< L, R >:
Inheritance graph
[legend]

List of all members.

Public Types

enum  { block_size = ((sizeof(max_type)+(sizeof(align_type)-1)) / sizeof(align_type)) * sizeof(align_type) }
typedef right_align_type::type align_type
typedef const L * const_left_iterator
typedef std::reverse_iterator
< const R * > 
const_right_iterator
typedef
bk_lib::detail::align_of
< left_type >::type 
left_align_type
typedef L * left_iterator
typedef L left_type
typedef right_type::type max_type
typedef
bk_lib::detail::align_of
< right_type >::type 
right_align_type
typedef std::reverse_iterator
< R * > 
right_iterator
typedef R right_type
typedef unsigned int size_type

Public Member Functions

void clear (bool releaseMem=false)
bool empty () const
void erase_left (left_iterator it)
void erase_left_unordered (left_iterator it)
void erase_right (right_iterator it)
void erase_right_unordered (right_iterator it)
const left_typeleft (size_type i) const
left_typeleft (size_type i)
const_left_iterator left_begin () const
left_iterator left_begin ()
size_type left_capacity () const
const_left_iterator left_end () const
left_iterator left_end ()
 left_right_rep ()
size_type left_size () const
void pop_left ()
void pop_right ()
void push_left (const left_type &x)
void push_right (const right_type &x)
const_right_iterator right_begin () const
right_iterator right_begin ()
size_type right_capacity () const
const_right_iterator right_end () const
right_iterator right_end ()
size_type right_size () const
void shrink_left (left_iterator it)
void shrink_right (right_iterator it)
size_type size () const

Public Attributes

typedef left_align_type
typedef left_type

Protected Types

typedef unsigned char buf_type

Protected Member Functions

buf_typebegin ()
const buf_typebegin () const
size_type capacity () const
buf_typeend ()
const buf_typeend () const
buf_typeleft ()
 left_right_rep (const left_right_rep &)
left_right_repoperator= (const left_right_rep &)
size_type raw_size () const
void realloc ()
void release ()
buf_typeright ()

Protected Attributes

buf_typebuf_
size_type cap_: 31
size_type free_: 1
size_type left_
size_type right_

Detailed Description

template<class L, class R>
class bk_lib::detail::left_right_rep< L, R >

Definition at line 35 of file left_right_sequence.h.


Member Typedef Documentation

template<class L, class R>
typedef right_align_type ::type bk_lib::detail::left_right_rep< L, R >::align_type

Reimplemented in bk_lib::detail::with_inline_buffer< L, R, cap >.

Definition at line 53 of file left_right_sequence.h.

template<class L, class R>
typedef unsigned char bk_lib::detail::left_right_rep< L, R >::buf_type [protected]
template<class L, class R>
typedef const L* bk_lib::detail::left_right_rep< L, R >::const_left_iterator

Definition at line 41 of file left_right_sequence.h.

template<class L, class R>
typedef std::reverse_iterator<const R*> bk_lib::detail::left_right_rep< L, R >::const_right_iterator

Definition at line 43 of file left_right_sequence.h.

Definition at line 45 of file left_right_sequence.h.

template<class L, class R>
typedef L* bk_lib::detail::left_right_rep< L, R >::left_iterator

Definition at line 40 of file left_right_sequence.h.

template<class L, class R>
typedef L bk_lib::detail::left_right_rep< L, R >::left_type

Definition at line 37 of file left_right_sequence.h.

template<class L, class R>
typedef right_type ::type bk_lib::detail::left_right_rep< L, R >::max_type

Definition at line 49 of file left_right_sequence.h.

Definition at line 46 of file left_right_sequence.h.

template<class L, class R>
typedef std::reverse_iterator<R*> bk_lib::detail::left_right_rep< L, R >::right_iterator

Definition at line 42 of file left_right_sequence.h.

template<class L, class R>
typedef R bk_lib::detail::left_right_rep< L, R >::right_type

Definition at line 38 of file left_right_sequence.h.

template<class L, class R>
typedef unsigned int bk_lib::detail::left_right_rep< L, R >::size_type

Definition at line 39 of file left_right_sequence.h.


Member Enumeration Documentation

template<class L, class R>
anonymous enum
Enumerator:
block_size 

Definition at line 145 of file left_right_sequence.h.


Constructor & Destructor Documentation

template<class L, class R>
bk_lib::detail::left_right_rep< L, R >::left_right_rep ( ) [inline]

Definition at line 57 of file left_right_sequence.h.

template<class L, class R>
bk_lib::detail::left_right_rep< L, R >::left_right_rep ( const left_right_rep< L, R > &  ) [inline, protected]

Definition at line 147 of file left_right_sequence.h.


Member Function Documentation

template<class L, class R>
buf_type* bk_lib::detail::left_right_rep< L, R >::begin ( ) [inline, protected]

Definition at line 150 of file left_right_sequence.h.

template<class L, class R>
const buf_type* bk_lib::detail::left_right_rep< L, R >::begin ( ) const [inline, protected]

Definition at line 151 of file left_right_sequence.h.

template<class L, class R>
size_type bk_lib::detail::left_right_rep< L, R >::capacity ( ) const [inline, protected]

Definition at line 156 of file left_right_sequence.h.

template<class L, class R>
void bk_lib::detail::left_right_rep< L, R >::clear ( bool  releaseMem = false) [inline]

Definition at line 76 of file left_right_sequence.h.

template<class L, class R>
bool bk_lib::detail::left_right_rep< L, R >::empty ( ) const [inline]

Definition at line 59 of file left_right_sequence.h.

template<class L, class R>
buf_type* bk_lib::detail::left_right_rep< L, R >::end ( ) [inline, protected]

Definition at line 152 of file left_right_sequence.h.

template<class L, class R>
const buf_type* bk_lib::detail::left_right_rep< L, R >::end ( ) const [inline, protected]

Definition at line 153 of file left_right_sequence.h.

template<class L, class R>
void bk_lib::detail::left_right_rep< L, R >::erase_left ( left_iterator  it) [inline]

Definition at line 110 of file left_right_sequence.h.

template<class L, class R>
void bk_lib::detail::left_right_rep< L, R >::erase_left_unordered ( left_iterator  it) [inline]

Definition at line 117 of file left_right_sequence.h.

template<class L, class R>
void bk_lib::detail::left_right_rep< L, R >::erase_right ( right_iterator  it) [inline]

Definition at line 123 of file left_right_sequence.h.

template<class L, class R>
void bk_lib::detail::left_right_rep< L, R >::erase_right_unordered ( right_iterator  it) [inline]

Definition at line 132 of file left_right_sequence.h.

template<class L, class R>
const left_type& bk_lib::detail::left_right_rep< L, R >::left ( size_type  i) const [inline]

Definition at line 73 of file left_right_sequence.h.

template<class L, class R>
left_type& bk_lib::detail::left_right_rep< L, R >::left ( size_type  i) [inline]

Definition at line 74 of file left_right_sequence.h.

template<class L, class R>
buf_type* bk_lib::detail::left_right_rep< L, R >::left ( ) [inline, protected]

Definition at line 154 of file left_right_sequence.h.

template<class L, class R>
const_left_iterator bk_lib::detail::left_right_rep< L, R >::left_begin ( ) const [inline]

Definition at line 65 of file left_right_sequence.h.

template<class L, class R>
left_iterator bk_lib::detail::left_right_rep< L, R >::left_begin ( ) [inline]

Definition at line 67 of file left_right_sequence.h.

template<class L, class R>
size_type bk_lib::detail::left_right_rep< L, R >::left_capacity ( ) const [inline]

Definition at line 63 of file left_right_sequence.h.

template<class L, class R>
const_left_iterator bk_lib::detail::left_right_rep< L, R >::left_end ( ) const [inline]

Definition at line 66 of file left_right_sequence.h.

template<class L, class R>
left_iterator bk_lib::detail::left_right_rep< L, R >::left_end ( ) [inline]

Definition at line 68 of file left_right_sequence.h.

template<class L, class R>
size_type bk_lib::detail::left_right_rep< L, R >::left_size ( ) const [inline]

Definition at line 60 of file left_right_sequence.h.

template<class L, class R>
left_right_rep& bk_lib::detail::left_right_rep< L, R >::operator= ( const left_right_rep< L, R > &  ) [inline, protected]

Definition at line 148 of file left_right_sequence.h.

template<class L, class R>
void bk_lib::detail::left_right_rep< L, R >::pop_left ( ) [inline]

Definition at line 101 of file left_right_sequence.h.

template<class L, class R>
void bk_lib::detail::left_right_rep< L, R >::pop_right ( ) [inline]

Definition at line 105 of file left_right_sequence.h.

template<class L, class R>
void bk_lib::detail::left_right_rep< L, R >::push_left ( const left_type x) [inline]

Definition at line 86 of file left_right_sequence.h.

template<class L, class R>
void bk_lib::detail::left_right_rep< L, R >::push_right ( const right_type x) [inline]

Definition at line 94 of file left_right_sequence.h.

template<class L, class R>
size_type bk_lib::detail::left_right_rep< L, R >::raw_size ( ) const [inline, protected]

Definition at line 157 of file left_right_sequence.h.

template<class L , class R >
void bk_lib::detail::left_right_rep< L, R >::realloc ( ) [protected]

Definition at line 168 of file left_right_sequence.h.

template<class L, class R>
void bk_lib::detail::left_right_rep< L, R >::release ( ) [inline, protected]

Definition at line 158 of file left_right_sequence.h.

template<class L, class R>
buf_type* bk_lib::detail::left_right_rep< L, R >::right ( ) [inline, protected]

Definition at line 155 of file left_right_sequence.h.

template<class L, class R>
const_right_iterator bk_lib::detail::left_right_rep< L, R >::right_begin ( ) const [inline]

Definition at line 69 of file left_right_sequence.h.

template<class L, class R>
right_iterator bk_lib::detail::left_right_rep< L, R >::right_begin ( ) [inline]

Definition at line 71 of file left_right_sequence.h.

template<class L, class R>
size_type bk_lib::detail::left_right_rep< L, R >::right_capacity ( ) const [inline]

Definition at line 64 of file left_right_sequence.h.

template<class L, class R>
const_right_iterator bk_lib::detail::left_right_rep< L, R >::right_end ( ) const [inline]

Definition at line 70 of file left_right_sequence.h.

template<class L, class R>
right_iterator bk_lib::detail::left_right_rep< L, R >::right_end ( ) [inline]

Definition at line 72 of file left_right_sequence.h.

template<class L, class R>
size_type bk_lib::detail::left_right_rep< L, R >::right_size ( ) const [inline]

Definition at line 61 of file left_right_sequence.h.

template<class L, class R>
void bk_lib::detail::left_right_rep< L, R >::shrink_left ( left_iterator  it) [inline]

Definition at line 138 of file left_right_sequence.h.

template<class L, class R>
void bk_lib::detail::left_right_rep< L, R >::shrink_right ( right_iterator  it) [inline]

Definition at line 141 of file left_right_sequence.h.

template<class L, class R>
size_type bk_lib::detail::left_right_rep< L, R >::size ( ) const [inline]

Definition at line 62 of file left_right_sequence.h.


Member Data Documentation

template<class L, class R>
buf_type* bk_lib::detail::left_right_rep< L, R >::buf_ [protected]

Definition at line 160 of file left_right_sequence.h.

template<class L, class R>
size_type bk_lib::detail::left_right_rep< L, R >::cap_ [protected]

Definition at line 161 of file left_right_sequence.h.

template<class L, class R>
size_type bk_lib::detail::left_right_rep< L, R >::free_ [protected]

Definition at line 162 of file left_right_sequence.h.

template<class L, class R>
size_type bk_lib::detail::left_right_rep< L, R >::left_ [protected]

Definition at line 163 of file left_right_sequence.h.

template<class L, class R>
typedef bk_lib::detail::left_right_rep< L, R >::left_align_type

Definition at line 53 of file left_right_sequence.h.

template<class L, class R>
typedef bk_lib::detail::left_right_rep< L, R >::left_type

Definition at line 49 of file left_right_sequence.h.

template<class L, class R>
size_type bk_lib::detail::left_right_rep< L, R >::right_ [protected]

Definition at line 164 of file left_right_sequence.h.


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


clasp
Author(s): Benjamin Kaufmann
autogenerated on Thu Aug 27 2015 12:41:40