Dash Core Source Documentation (0.16.0.1)
Find detailed information regarding the Dash Core source code.
#include <with_capacity.hpp>
Public Types | |
using | no_capacity_t = no_capacity< T, MemoryPolicy > |
using | node_t = node< T, MemoryPolicy > |
using | edit_t = typename MemoryPolicy::transience_t::edit |
using | size_t = std::size_t |
Public Member Functions | |
with_capacity (node_t *p, size_t s, size_t c) | |
with_capacity (const with_capacity &other) | |
with_capacity (const no_capacity_t &other) | |
with_capacity (with_capacity &&other) | |
with_capacity & | operator= (const with_capacity &other) |
with_capacity & | operator= (with_capacity &&other) |
~with_capacity () | |
void | inc () |
void | dec () |
const T * | data () const |
T * | data () |
operator no_capacity_t () const | |
template<typename Fn > | |
void | for_each_chunk (Fn &&fn) const |
template<typename Fn > | |
bool | for_each_chunk_p (Fn &&fn) const |
const T & | get (std::size_t index) const |
const T & | get_check (std::size_t index) const |
bool | equals (const with_capacity &other) const |
with_capacity | push_back (T value) const |
void | push_back_mut (edit_t e, T value) |
with_capacity | assoc (std::size_t idx, T value) const |
void | assoc_mut (edit_t e, std::size_t idx, T value) |
template<typename Fn > | |
with_capacity | update (std::size_t idx, Fn &&op) const |
template<typename Fn > | |
void | update_mut (edit_t e, std::size_t idx, Fn &&op) |
with_capacity | take (std::size_t sz) const |
void | take_mut (edit_t e, std::size_t sz) |
Static Public Member Functions | |
static const with_capacity & | empty () |
template<typename Iter , typename Sent , std::enable_if_t< is_forward_iterator_v< Iter > &&compatible_sentinel_v< Iter, Sent >, bool > = true> | |
static with_capacity | from_range (Iter first, Sent last) |
template<typename U > | |
static with_capacity | from_initializer_list (std::initializer_list< U > values) |
static with_capacity | from_fill (size_t n, T v) |
static size_t | recommend_up (size_t sz, size_t cap) |
static size_t | recommend_down (size_t sz, size_t cap) |
Public Attributes | |
node_t * | ptr |
size_t | size |
size_t | capacity |
Friends | |
void | swap (with_capacity &x, with_capacity &y) |
Detailed Description
template<typename T, typename MemoryPolicy>
struct immer::detail::arrays::with_capacity< T, MemoryPolicy >
Definition at line 18 of file with_capacity.hpp.
Member Typedef Documentation
◆ edit_t
using immer::detail::arrays::with_capacity< T, MemoryPolicy >::edit_t = typename MemoryPolicy::transience_t::edit |
Definition at line 23 of file with_capacity.hpp.
◆ no_capacity_t
using immer::detail::arrays::with_capacity< T, MemoryPolicy >::no_capacity_t = no_capacity<T, MemoryPolicy> |
Definition at line 20 of file with_capacity.hpp.
◆ node_t
using immer::detail::arrays::with_capacity< T, MemoryPolicy >::node_t = node<T, MemoryPolicy> |
Definition at line 22 of file with_capacity.hpp.
◆ size_t
using immer::detail::arrays::with_capacity< T, MemoryPolicy >::size_t = std::size_t |
Definition at line 24 of file with_capacity.hpp.
Constructor & Destructor Documentation
◆ with_capacity() [1/4]
|
inline |
Definition at line 40 of file with_capacity.hpp.
◆ with_capacity() [2/4]
|
inline |
◆ with_capacity() [3/4]
|
inline |
Definition at line 50 of file with_capacity.hpp.
References immer::detail::arrays::no_capacity< T, MemoryPolicy >::ptr, and immer::detail::arrays::no_capacity< T, MemoryPolicy >::size.
◆ with_capacity() [4/4]
|
inline |
Definition at line 56 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::empty().
◆ ~with_capacity()
|
inline |
Definition at line 83 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::dec().
Member Function Documentation
◆ assoc()
|
inline |
Definition at line 218 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::capacity, immer::detail::arrays::node< T, MemoryPolicy >::copy_n(), immer::detail::arrays::node< T, MemoryPolicy >::delete_n(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::ptr, and immer::detail::arrays::with_capacity< T, MemoryPolicy >::size.
◆ assoc_mut()
|
inline |
Definition at line 230 of file with_capacity.hpp.
References immer::detail::arrays::node< T, MemoryPolicy >::can_mutate(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::capacity, immer::detail::arrays::node< T, MemoryPolicy >::copy_n(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::data(), immer::detail::arrays::node< T, MemoryPolicy >::delete_n(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::ptr, and immer::detail::arrays::with_capacity< T, MemoryPolicy >::size.
Referenced by immer::array_transient< T, MemoryPolicy >::set().
◆ data() [1/2]
|
inline |
Definition at line 101 of file with_capacity.hpp.
References immer::detail::arrays::node< T, MemoryPolicy >::data(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::ptr.
Referenced by immer::detail::arrays::with_capacity< T, MemoryPolicy >::assoc_mut(), immer::array_transient< T, MemoryPolicy >::begin(), immer::array_transient< T, MemoryPolicy >::data(), immer::array_transient< T, MemoryPolicy >::end(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::equals(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::for_each_chunk(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::for_each_chunk_p(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::get(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::get_check(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::push_back_mut(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::take_mut(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::update_mut().
◆ data() [2/2]
|
inline |
Definition at line 102 of file with_capacity.hpp.
References immer::detail::arrays::node< T, MemoryPolicy >::data(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::ptr.
◆ dec()
|
inline |
Definition at line 94 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::capacity, immer::detail::arrays::node< T, MemoryPolicy >::delete_n(), immer::detail::csl::get(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::ptr, immer::detail::arrays::node< T, MemoryPolicy >::refs(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::size.
Referenced by immer::detail::arrays::with_capacity< T, MemoryPolicy >::~with_capacity().
◆ empty()
|
inlinestatic |
Definition at line 30 of file with_capacity.hpp.
References immer::detail::arrays::node< T, MemoryPolicy >::make_n().
Referenced by immer::array_transient< T, MemoryPolicy >::empty(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::with_capacity().
◆ equals()
|
inline |
◆ for_each_chunk()
|
inline |
Definition at line 141 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::data(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::size.
◆ for_each_chunk_p()
|
inline |
Definition at line 147 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::data(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::size.
◆ from_fill()
|
inlinestatic |
Definition at line 135 of file with_capacity.hpp.
References immer::detail::arrays::node< T, MemoryPolicy >::fill_n().
◆ from_initializer_list()
|
inlinestatic |
Definition at line 129 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::from_range().
◆ from_range()
|
inlinestatic |
Definition at line 118 of file with_capacity.hpp.
References immer::detail::arrays::node< T, MemoryPolicy >::copy_n(), count, and immer::detail::distance().
Referenced by immer::detail::arrays::with_capacity< T, MemoryPolicy >::from_initializer_list().
◆ get()
|
inline |
Definition at line 152 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::data().
Referenced by immer::array_transient< T, MemoryPolicy >::operator[]().
◆ get_check()
|
inline |
Definition at line 157 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::data(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::size.
Referenced by immer::array_transient< T, MemoryPolicy >::at().
◆ inc()
|
inline |
Definition at line 88 of file with_capacity.hpp.
References immer::detail::csl::get(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::ptr, and immer::detail::arrays::node< T, MemoryPolicy >::refs().
◆ operator no_capacity_t()
|
inline |
Definition at line 104 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::capacity, immer::detail::arrays::node< T, MemoryPolicy >::copy_n(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::ptr, immer::detail::arrays::node< T, MemoryPolicy >::refs(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::size.
◆ operator=() [1/2]
|
inline |
Definition at line 62 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::swap.
◆ operator=() [2/2]
|
inline |
Definition at line 69 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::swap.
◆ push_back()
|
inline |
Definition at line 187 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::capacity, immer::detail::arrays::node< T, MemoryPolicy >::copy_n(), immer::detail::arrays::node< T, MemoryPolicy >::delete_n(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::ptr, immer::detail::arrays::with_capacity< T, MemoryPolicy >::recommend_up(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::size.
◆ push_back_mut()
|
inline |
Definition at line 200 of file with_capacity.hpp.
References immer::detail::arrays::node< T, MemoryPolicy >::can_mutate(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::capacity, immer::detail::arrays::node< T, MemoryPolicy >::copy_e(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::data(), immer::detail::arrays::node< T, MemoryPolicy >::delete_n(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::ptr, immer::detail::arrays::with_capacity< T, MemoryPolicy >::recommend_up(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::size.
Referenced by immer::array_transient< T, MemoryPolicy >::push_back().
◆ recommend_down()
|
inlinestatic |
Definition at line 180 of file with_capacity.hpp.
Referenced by immer::detail::arrays::with_capacity< T, MemoryPolicy >::take(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::take_mut().
◆ recommend_up()
|
inlinestatic |
Definition at line 171 of file with_capacity.hpp.
Referenced by immer::detail::arrays::with_capacity< T, MemoryPolicy >::push_back(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::push_back_mut().
◆ take()
|
inline |
Definition at line 279 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::capacity, immer::detail::arrays::node< T, MemoryPolicy >::copy_n(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::ptr, and immer::detail::arrays::with_capacity< T, MemoryPolicy >::recommend_down().
◆ take_mut()
|
inline |
Definition at line 286 of file with_capacity.hpp.
References immer::detail::arrays::node< T, MemoryPolicy >::can_mutate(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::capacity, immer::detail::arrays::node< T, MemoryPolicy >::copy_e(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::data(), immer::detail::destroy_n(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::ptr, immer::detail::arrays::with_capacity< T, MemoryPolicy >::recommend_down(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::size.
Referenced by immer::array_transient< T, MemoryPolicy >::take().
◆ update()
|
inline |
Definition at line 247 of file with_capacity.hpp.
References immer::detail::arrays::with_capacity< T, MemoryPolicy >::capacity, immer::detail::arrays::node< T, MemoryPolicy >::copy_n(), immer::detail::arrays::node< T, MemoryPolicy >::delete_n(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::ptr, and immer::detail::arrays::with_capacity< T, MemoryPolicy >::size.
◆ update_mut()
|
inline |
Definition at line 261 of file with_capacity.hpp.
References immer::detail::arrays::node< T, MemoryPolicy >::can_mutate(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::capacity, immer::detail::arrays::node< T, MemoryPolicy >::copy_e(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::data(), immer::detail::arrays::node< T, MemoryPolicy >::delete_n(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::ptr, and immer::detail::arrays::with_capacity< T, MemoryPolicy >::size.
Referenced by immer::array_transient< T, MemoryPolicy >::update().
Friends And Related Function Documentation
◆ swap
|
friend |
Definition at line 75 of file with_capacity.hpp.
Referenced by immer::detail::arrays::with_capacity< T, MemoryPolicy >::operator=().
Member Data Documentation
◆ capacity
size_t immer::detail::arrays::with_capacity< T, MemoryPolicy >::capacity |
Definition at line 28 of file with_capacity.hpp.
Referenced by immer::detail::arrays::with_capacity< T, MemoryPolicy >::assoc(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::assoc_mut(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::dec(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::operator no_capacity_t(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::push_back(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::push_back_mut(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::take(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::take_mut(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::update(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::update_mut(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::with_capacity().
◆ ptr
node_t* immer::detail::arrays::with_capacity< T, MemoryPolicy >::ptr |
Definition at line 26 of file with_capacity.hpp.
Referenced by immer::detail::arrays::with_capacity< T, MemoryPolicy >::assoc(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::assoc_mut(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::data(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::dec(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::equals(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::inc(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::operator no_capacity_t(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::push_back(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::push_back_mut(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::take(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::take_mut(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::update(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::update_mut(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::with_capacity().
◆ size
size_t immer::detail::arrays::with_capacity< T, MemoryPolicy >::size |
Definition at line 27 of file with_capacity.hpp.
Referenced by immer::detail::arrays::with_capacity< T, MemoryPolicy >::assoc(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::assoc_mut(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::dec(), immer::array_transient< T, MemoryPolicy >::end(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::equals(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::for_each_chunk(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::for_each_chunk_p(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::get_check(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::operator no_capacity_t(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::push_back(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::push_back_mut(), immer::array_transient< T, MemoryPolicy >::size(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::take_mut(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::update(), immer::detail::arrays::with_capacity< T, MemoryPolicy >::update_mut(), and immer::detail::arrays::with_capacity< T, MemoryPolicy >::with_capacity().
The documentation for this struct was generated from the following file:
- src/immer/detail/arrays/with_capacity.hpp