libstdc++: __gnu_cxx::bitmap_allocator< _Tp > Class Template Reference (original) (raw)

#include <[bitmap_allocator.h](a01187%5Fsource.html)>

Public Types
typedef free_list::__mutex_type __mutex_type
typedef const _Tp * const_pointer
typedef const _Tp & const_reference
typedef std::ptrdiff_t difference_type
typedef _Tp * pointer
typedef std::true_type propagate_on_container_move_assignment
typedef _Tp & reference
typedef std::size_t size_type
typedef _Tp value_type
Public Member Functions
bitmap_allocator (const bitmap_allocator &) noexcept
template<typename _Tp1 >
bitmap_allocator (const bitmap_allocator< _Tp1 > &) noexcept
pointer _M_allocate_single_object ()
void _M_deallocate_single_object (pointer __p) throw ()
const_pointer address (const_reference __r) const noexcept
pointer address (reference __r) const noexcept
pointer allocate (size_type __n)
pointer allocate (size_type __n, typename bitmap_allocator< void >::const_pointer)
template<typename _Up , typename... _Args>
void construct (_Up *__p, _Args &&... __args)
void deallocate (pointer __p, size_type __n) throw ()
template<typename _Up >
void destroy (_Up *__p)
size_type max_size () const noexcept

template<typename _Tp>
class __gnu_cxx::bitmap_allocator< _Tp >

Bitmap Allocator, primary template.

Definition at line 683 of file bitmap_allocator.h.

__mutex_type

const_pointer

const_reference

difference_type

pointer

propagate_on_container_move_assignment

size_type

value_type

bitmap_allocator() [1/3]

bitmap_allocator() [2/3]

bitmap_allocator() [3/3]

template<typename _Tp >

template<typename _Tp1 >

~bitmap_allocator()

_M_allocate_single_object()

Allocates memory for a single object of size sizeof(_Tp).

Exceptions

std::bad_alloc. If memory cannot be allocated.

Complexity: Worst case complexity is O(N), but that is hardly ever hit. If and when this particular case is encountered, the next few cases are guaranteed to have a worst case complexity of O(1)! That's why this function performs very well on average. You can consider this function to have a complexity referred to commonly as: Amortized Constant time.

Definition at line 824 of file bitmap_allocator.h.

References __gnu_cxx::__detail::__bit_allocate(), __gnu_cxx::__detail::__num_bitmaps(), and __gnu_cxx::_Bit_scan_forward().

_M_deallocate_single_object()

address() [1/2]

address() [2/2]

allocate() [1/2]

allocate() [2/2]

construct()

template<typename _Tp >

template<typename _Up , typename... _Args>

deallocate()

destroy()

template<typename _Tp >

template<typename _Up >

max_size()


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