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: