__gnu_cxx::balloc::__mini_vector< _Tp > Class Template Reference

__mini_vector<> is a stripped down version of the full-fledged std::vector<>. More...

#include <bitmap_allocator.h>

List of all members.

Public Types

typedef _Tp value_type
typedef _Tp * pointer
typedef _Tp & reference
typedef const _Tp & const_reference
typedef std::size_t size_type
typedef std::ptrdiff_t difference_type
typedef pointer iterator

Public Member Functions

 __mini_vector ()
size_type size () const throw ()
iterator begin () const throw ()
iterator end () const throw ()
reference back () const throw ()
reference operator[] (const size_type __pos) const throw ()
void insert (iterator __pos, const_reference __x)
void push_back (const_reference __x)
void pop_back () throw ()
void erase (iterator __pos) throw ()
void clear () throw ()

Private Member Functions

 __mini_vector (const __mini_vector &)
__mini_vectoroperator= (const __mini_vector &)
size_type _M_space_left () const throw ()
pointer allocate (size_type __n)
void deallocate (pointer __p, size_type)

Private Attributes

pointer _M_start
pointer _M_finish
pointer _M_end_of_storage


Detailed Description

template<typename _Tp>
class __gnu_cxx::balloc::__mini_vector< _Tp >

__mini_vector<> is a stripped down version of the full-fledged std::vector<>.

It is to be used only for built-in types or PODs. Notable differences are:

1. Not all accessor functions are present. 2. Used ONLY for PODs. 3. No Allocator template argument. Uses operator new() to get memory, and operator delete() to free it. Caveat: The dtor does NOT free the memory allocated, so this a memory-leaking vector!

Definition at line 231 of file bitmap_allocator.h.


Member Typedef Documentation

template<typename _Tp>
typedef const _Tp& __gnu_cxx::balloc::__mini_vector< _Tp >::const_reference

Definition at line 240 of file bitmap_allocator.h.

template<typename _Tp>
typedef std::ptrdiff_t __gnu_cxx::balloc::__mini_vector< _Tp >::difference_type

Definition at line 242 of file bitmap_allocator.h.

template<typename _Tp>
typedef pointer __gnu_cxx::balloc::__mini_vector< _Tp >::iterator

Definition at line 243 of file bitmap_allocator.h.

template<typename _Tp>
typedef _Tp* __gnu_cxx::balloc::__mini_vector< _Tp >::pointer

Definition at line 238 of file bitmap_allocator.h.

template<typename _Tp>
typedef _Tp& __gnu_cxx::balloc::__mini_vector< _Tp >::reference

Definition at line 239 of file bitmap_allocator.h.

template<typename _Tp>
typedef std::size_t __gnu_cxx::balloc::__mini_vector< _Tp >::size_type

Definition at line 241 of file bitmap_allocator.h.

template<typename _Tp>
typedef _Tp __gnu_cxx::balloc::__mini_vector< _Tp >::value_type

Definition at line 237 of file bitmap_allocator.h.


Constructor & Destructor Documentation

template<typename _Tp>
__gnu_cxx::balloc::__mini_vector< _Tp >::__mini_vector ( const __mini_vector< _Tp > &   )  [private]

template<typename _Tp>
__gnu_cxx::balloc::__mini_vector< _Tp >::__mini_vector (  )  [inline]

Definition at line 267 of file bitmap_allocator.h.


Member Function Documentation

template<typename _Tp>
size_type __gnu_cxx::balloc::__mini_vector< _Tp >::_M_space_left (  )  const throw () [inline, private]

Definition at line 251 of file bitmap_allocator.h.

References __gnu_cxx::balloc::__mini_vector< _Tp >::_M_end_of_storage, and __gnu_cxx::balloc::__mini_vector< _Tp >::_M_finish.

template<typename _Tp>
pointer __gnu_cxx::balloc::__mini_vector< _Tp >::allocate ( size_type  __n  )  [inline, private]

Definition at line 255 of file bitmap_allocator.h.

Referenced by __gnu_cxx::balloc::__mini_vector< _Tp >::insert().

template<typename _Tp>
reference __gnu_cxx::balloc::__mini_vector< _Tp >::back (  )  const throw () [inline]

Definition at line 295 of file bitmap_allocator.h.

References __gnu_cxx::balloc::__mini_vector< _Tp >::end().

Referenced by __gnu_cxx::free_list::_M_validate().

template<typename _Tp>
iterator __gnu_cxx::balloc::__mini_vector< _Tp >::begin (  )  const throw () [inline]

Definition at line 287 of file bitmap_allocator.h.

References __gnu_cxx::balloc::__mini_vector< _Tp >::_M_start.

Referenced by __gnu_cxx::bitmap_allocator< _Tp >::_M_allocate_single_object(), __gnu_cxx::bitmap_allocator< _Tp >::_M_deallocate_single_object(), __gnu_cxx::free_list::_M_validate(), and __gnu_cxx::balloc::__mini_vector< _Tp >::insert().

template<typename _Tp>
void __gnu_cxx::balloc::__mini_vector< _Tp >::clear (  )  throw () [inline]

Definition at line 325 of file bitmap_allocator.h.

References __gnu_cxx::balloc::__mini_vector< _Tp >::_M_finish, and __gnu_cxx::balloc::__mini_vector< _Tp >::_M_start.

template<typename _Tp>
void __gnu_cxx::balloc::__mini_vector< _Tp >::deallocate ( pointer  __p,
size_type   
) [inline, private]

Definition at line 259 of file bitmap_allocator.h.

Referenced by __gnu_cxx::balloc::__mini_vector< _Tp >::insert().

template<typename _Tp>
iterator __gnu_cxx::balloc::__mini_vector< _Tp >::end (  )  const throw () [inline]

Definition at line 291 of file bitmap_allocator.h.

References __gnu_cxx::balloc::__mini_vector< _Tp >::_M_finish.

Referenced by __gnu_cxx::bitmap_allocator< _Tp >::_M_allocate_single_object(), __gnu_cxx::bitmap_allocator< _Tp >::_M_deallocate_single_object(), __gnu_cxx::free_list::_M_validate(), __gnu_cxx::balloc::__mini_vector< _Tp >::back(), and __gnu_cxx::balloc::__mini_vector< _Tp >::insert().

template<typename _Tp>
void __gnu_cxx::balloc::__mini_vector< _Tp >::erase ( iterator  __pos  )  throw ()

Definition at line 377 of file bitmap_allocator.h.

Referenced by __gnu_cxx::bitmap_allocator< _Tp >::_M_deallocate_single_object().

template<typename _Tp>
void __gnu_cxx::balloc::__mini_vector< _Tp >::insert ( iterator  __pos,
const_reference  __x 
)

Definition at line 332 of file bitmap_allocator.h.

References __gnu_cxx::balloc::__mini_vector< _Tp >::_M_end_of_storage, __gnu_cxx::balloc::__mini_vector< _Tp >::_M_finish, __gnu_cxx::balloc::__mini_vector< _Tp >::_M_start, __gnu_cxx::balloc::__mini_vector< _Tp >::allocate(), __gnu_cxx::balloc::__mini_vector< _Tp >::begin(), __gnu_cxx::balloc::__mini_vector< _Tp >::deallocate(), __gnu_cxx::balloc::__mini_vector< _Tp >::end(), and __gnu_cxx::balloc::__mini_vector< _Tp >::size().

Referenced by __gnu_cxx::free_list::_M_validate(), and __gnu_cxx::balloc::__mini_vector< _Tp >::push_back().

template<typename _Tp>
__mini_vector& __gnu_cxx::balloc::__mini_vector< _Tp >::operator= ( const __mini_vector< _Tp > &   )  [private]

template<typename _Tp>
reference __gnu_cxx::balloc::__mini_vector< _Tp >::operator[] ( const size_type  __pos  )  const throw () [inline]

Definition at line 299 of file bitmap_allocator.h.

References __gnu_cxx::balloc::__mini_vector< _Tp >::_M_start.

template<typename _Tp>
void __gnu_cxx::balloc::__mini_vector< _Tp >::pop_back (  )  throw () [inline]

Definition at line 318 of file bitmap_allocator.h.

References __gnu_cxx::balloc::__mini_vector< _Tp >::_M_finish.

Referenced by __gnu_cxx::free_list::_M_validate().

template<typename _Tp>
void __gnu_cxx::balloc::__mini_vector< _Tp >::push_back ( const_reference  __x  )  [inline]

Definition at line 306 of file bitmap_allocator.h.

References __gnu_cxx::balloc::__mini_vector< _Tp >::_M_finish, and __gnu_cxx::balloc::__mini_vector< _Tp >::insert().

Referenced by __gnu_cxx::bitmap_allocator< _Tp >::_S_refill_pool().

template<typename _Tp>
size_type __gnu_cxx::balloc::__mini_vector< _Tp >::size (  )  const throw () [inline]

Definition at line 283 of file bitmap_allocator.h.

References __gnu_cxx::balloc::__mini_vector< _Tp >::_M_finish, and __gnu_cxx::balloc::__mini_vector< _Tp >::_M_start.

Referenced by __gnu_cxx::bitmap_allocator< _Tp >::_M_allocate_single_object(), __gnu_cxx::bitmap_allocator< _Tp >::_M_deallocate_single_object(), __gnu_cxx::balloc::_Bitmap_counter< __gnu_cxx::bitmap_allocator::_Alloc_block * >::_M_reset(), __gnu_cxx::free_list::_M_validate(), __gnu_cxx::balloc::__mini_vector< _Tp >::insert(), and __gnu_cxx::balloc::_Bitmap_counter< __gnu_cxx::bitmap_allocator::_Alloc_block * >::operator++().


Member Data Documentation

template<typename _Tp>
pointer __gnu_cxx::balloc::__mini_vector< _Tp >::_M_end_of_storage [private]

Definition at line 248 of file bitmap_allocator.h.

Referenced by __gnu_cxx::balloc::__mini_vector< _Tp >::_M_space_left(), and __gnu_cxx::balloc::__mini_vector< _Tp >::insert().

template<typename _Tp>
pointer __gnu_cxx::balloc::__mini_vector< _Tp >::_M_finish [private]

Definition at line 247 of file bitmap_allocator.h.

Referenced by __gnu_cxx::balloc::__mini_vector< _Tp >::_M_space_left(), __gnu_cxx::balloc::__mini_vector< _Tp >::clear(), __gnu_cxx::balloc::__mini_vector< _Tp >::end(), __gnu_cxx::balloc::__mini_vector< _Tp >::insert(), __gnu_cxx::balloc::__mini_vector< _Tp >::pop_back(), __gnu_cxx::balloc::__mini_vector< _Tp >::push_back(), and __gnu_cxx::balloc::__mini_vector< _Tp >::size().

template<typename _Tp>
pointer __gnu_cxx::balloc::__mini_vector< _Tp >::_M_start [private]

Definition at line 246 of file bitmap_allocator.h.

Referenced by __gnu_cxx::balloc::__mini_vector< _Tp >::begin(), __gnu_cxx::balloc::__mini_vector< _Tp >::clear(), __gnu_cxx::balloc::__mini_vector< _Tp >::insert(), __gnu_cxx::balloc::__mini_vector< _Tp >::operator[](), and __gnu_cxx::balloc::__mini_vector< _Tp >::size().


The documentation for this class was generated from the following file:
Generated on Tue Feb 2 16:58:11 2010 for GNU C++ STL by  doxygen 1.4.7