#include <bitmap_allocator.h>
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_vector & | operator= (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 |
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.
typedef const _Tp& __gnu_cxx::balloc::__mini_vector< _Tp >::const_reference |
Definition at line 240 of file bitmap_allocator.h.
typedef std::ptrdiff_t __gnu_cxx::balloc::__mini_vector< _Tp >::difference_type |
Definition at line 242 of file bitmap_allocator.h.
typedef pointer __gnu_cxx::balloc::__mini_vector< _Tp >::iterator |
Definition at line 243 of file bitmap_allocator.h.
typedef _Tp* __gnu_cxx::balloc::__mini_vector< _Tp >::pointer |
Definition at line 238 of file bitmap_allocator.h.
typedef _Tp& __gnu_cxx::balloc::__mini_vector< _Tp >::reference |
Definition at line 239 of file bitmap_allocator.h.
typedef std::size_t __gnu_cxx::balloc::__mini_vector< _Tp >::size_type |
Definition at line 241 of file bitmap_allocator.h.
typedef _Tp __gnu_cxx::balloc::__mini_vector< _Tp >::value_type |
Definition at line 237 of file bitmap_allocator.h.
__gnu_cxx::balloc::__mini_vector< _Tp >::__mini_vector | ( | const __mini_vector< _Tp > & | ) | [private] |
__gnu_cxx::balloc::__mini_vector< _Tp >::__mini_vector | ( | ) | [inline] |
Definition at line 267 of file bitmap_allocator.h.
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.
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().
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().
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().
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.
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().
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().
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().
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().
__mini_vector& __gnu_cxx::balloc::__mini_vector< _Tp >::operator= | ( | const __mini_vector< _Tp > & | ) | [private] |
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.
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().
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().
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++().
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().
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().
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().