__gnu_cxx::__pool_alloc< _Tp > Class Template Reference
Utilities » Memory » Allocators

`#include <pool_allocator.h>`

Inheritance diagram for __gnu_cxx::__pool_alloc< _Tp >:
[legend]

## Public Types

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

| __pool_alloc (const __pool_alloc &) noexcept
template<typename _Tp1 >
| __pool_alloc (const __pool_alloc< _Tp1 > &) noexcept
const_pointer | address (const_reference __x) const noexcept
pointer | address (reference __x) const noexcept
pointer | allocate (size_type __n, const void *=0)
template<typename _Up , typename... _Args>
void | construct (_Up *__p, _Args &&... __args)
void | deallocate (pointer __p, size_type __n)
template<typename _Up >
void | destroy (_Up *__p)
size_type | max_size () const noexcept

## Detailed Description

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

Allocator using a memory pool with a single lock.

Definition at line 124 of file pool_allocator.h.

## Member Typedef Documentation

## const_pointer

template<typename _Tp >

typedef const _Tp* __gnu_cxx::__pool_alloc< _Tp >::const_pointer

Definition at line 133 of file pool_allocator.h.

## const_reference

template<typename _Tp >

typedef const _Tp& __gnu_cxx::__pool_alloc< _Tp >::const_reference

Definition at line 135 of file pool_allocator.h.

## difference_type

template<typename _Tp >

typedef std::ptrdiff_t __gnu_cxx::__pool_alloc< _Tp >::difference_type

Definition at line 131 of file pool_allocator.h.

## pointer

template<typename _Tp >

typedef _Tp* __gnu_cxx::__pool_alloc< _Tp >::pointer

Definition at line 132 of file pool_allocator.h.

## propagate_on_container_move_assignment

template<typename _Tp >

typedef std::true_type __gnu_cxx::__pool_alloc< _Tp >::propagate_on_container_move_assignment

Definition at line 145 of file pool_allocator.h.

## reference

template<typename _Tp >

typedef _Tp& __gnu_cxx::__pool_alloc< _Tp >::reference

Definition at line 134 of file pool_allocator.h.

## size_type

template<typename _Tp >

typedef std::size_t __gnu_cxx::__pool_alloc< _Tp >::size_type

Definition at line 130 of file pool_allocator.h.

## value_type

template<typename _Tp >

typedef _Tp __gnu_cxx::__pool_alloc< _Tp >::value_type

Definition at line 136 of file pool_allocator.h.

## Constructor & Destructor Documentation

## __pool_alloc() [1/3]

template<typename _Tp >

__gnu_cxx::__pool_alloc< _Tp >::__pool_alloc | ( |  | ) |

inline noexcept

Definition at line 148 of file pool_allocator.h.

## __pool_alloc() [2/3]

template<typename _Tp >

__gnu_cxx::__pool_alloc< _Tp >::__pool_alloc | ( | const __pool_alloc< _Tp > & |  | ) |

inline noexcept

Definition at line 150 of file pool_allocator.h.

## __pool_alloc() [3/3]

template<typename _Tp >
template<typename _Tp1 >

__gnu_cxx::__pool_alloc< _Tp >::__pool_alloc | ( | const __pool_alloc< _Tp1 > & |  | ) |

inline noexcept

Definition at line 153 of file pool_allocator.h.

## ~__pool_alloc()

template<typename _Tp >

__gnu_cxx::__pool_alloc< _Tp >::~__pool_alloc | ( |  | ) |

inline noexcept

Definition at line 155 of file pool_allocator.h.

## Member Function Documentation

## address() [1/2]

template<typename _Tp >

const_pointer __gnu_cxx::__pool_alloc< _Tp >::address | ( | const_reference | __x | ) | const

inline noexcept

Definition at line 162 of file pool_allocator.h.

## address() [2/2]

template<typename _Tp >

pointer __gnu_cxx::__pool_alloc< _Tp >::address | ( | reference | __x | ) | const

inline noexcept

Definition at line 158 of file pool_allocator.h.

## allocate()

template<typename _Tp >

_Tp * __gnu_cxx::__pool_alloc< _Tp >::allocate | ( | size_type | __n,
|  | const void * | = `0`
| ) |  |

Definition at line 214 of file pool_allocator.h.

## construct()

template<typename _Tp >
template<typename _Up , typename... _Args>

void __gnu_cxx::__pool_alloc< _Tp >::construct | ( | _Up * | __p,
|  | _Args &&... | __args
| ) |  |

inline

Definition at line 172 of file pool_allocator.h.

## deallocate()

template<typename _Tp >

void __gnu_cxx::__pool_alloc< _Tp >::deallocate | ( | pointer | __p,
|  | size_type | __n
| ) |  |

Definition at line 268 of file pool_allocator.h.

## destroy()

template<typename _Tp >
template<typename _Up >

void __gnu_cxx::__pool_alloc< _Tp >::destroy | ( | _Up * | __p | ) |

inline

Definition at line 177 of file pool_allocator.h.

## max_size()

template<typename _Tp >

size_type __gnu_cxx::__pool_alloc< _Tp >::max_size | ( |  | ) | const

inline noexcept

Definition at line 166 of file pool_allocator.h.

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

- pool_allocator.h