Dash Core Source Documentation (0.16.0.1)
Find detailed information regarding the Dash Core source code.
•All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
prevector.h
Go to the documentation of this file.
117 difference_type friend operator-(const_iterator a, const_iterator b) { return (&(*a) - &(*b)); }
144 const_reverse_iterator operator++(int) { const_reverse_iterator copy(*this); ++(*this); return copy; }
145 const_reverse_iterator operator--(int) { const_reverse_iterator copy(*this); --(*this); return copy; }
161 const T* direct_ptr(difference_type pos) const { return reinterpret_cast<const T*>(_union.direct) + pos; }
163 const T* indirect_ptr(difference_type pos) const { return reinterpret_cast<const T*>(_union.indirect) + pos; }
181 _union.indirect = static_cast<char*>(realloc(_union.indirect, ((size_t)sizeof(T)) * new_capacity));
198 const T* item_ptr(difference_type pos) const { return is_direct() ? direct_ptr(pos) : indirect_ptr(pos); }
561 // We know that internally the iterators are pointing to continues memory, so we can directly use the pointers here
562 // This avoids internal use of std::copy and operator++ on the iterators and instead allows efficient memcpy/memmove
bool operator!=(const prevector< N, T, Size, Diff > &other) const
Definition: prevector.h:516
std::bidirectional_iterator_tag iterator_category
Definition: prevector.h:86
prevector & operator=(const prevector< N, T, Size, Diff > &other)
Definition: prevector.h:297
void fill(T *dst, const_iterator first, const_iterator last)
Definition: prevector.h:228
bool operator<=(const_iterator x) const
Definition: prevector.h:125
const T & operator[](size_type pos) const
Definition: prevector.h:112
const_iterator & operator-=(size_type n)
Definition: prevector.h:121
const_reverse_iterator & operator--()
Definition: prevector.h:142
void insert(iterator pos, InputIterator first, InputIterator last)
Definition: prevector.h:401
const_reverse_iterator operator--(int)
Definition: prevector.h:145
void fill(T *dst, InputIterator first, InputIterator last)
Definition: prevector.h:220
const T * operator->() const
Definition: prevector.h:141
Definition: prevector.h:100
bool operator==(const prevector< N, T, Size, Diff > &other) const
Definition: prevector.h:499
void resize_uninitialized(size_type new_size)
Definition: prevector.h:414
const_reverse_iterator & operator++()
Definition: prevector.h:143
bool operator==(const_reverse_iterator x) const
Definition: prevector.h:146
prevector(const prevector< N, T, Size, Diff > &other)
Definition: prevector.h:286
const_reverse_iterator operator++(int)
Definition: prevector.h:144
bool operator>=(const_iterator x) const
Definition: prevector.h:124
prevector & operator=(prevector< N, T, Size, Diff > &&other)
Definition: prevector.h:305
void insert(iterator pos, size_type count, const T &value)
Definition: prevector.h:388
const_iterator operator+(size_type n)
Definition: prevector.h:118
Definition: prevector.h:152
const_reverse_iterator(reverse_iterator x)
Definition: prevector.h:139
bool operator>(const_iterator x) const
Definition: prevector.h:126
const_reverse_iterator(const T *ptr_)
Definition: prevector.h:138
Implements a drop-in replacement for std::vector<T> which stores up to N elements directly (without h...
Definition: prevector.h:39
bool operator!=(const_reverse_iterator x) const
Definition: prevector.h:147
bool operator==(reverse_iterator x) const
Definition: prevector.h:96
const_iterator operator-(size_type n)
Definition: prevector.h:120
Definition: prevector.h:130
Definition: prevector.h:49
std::random_access_iterator_tag iterator_category
Definition: prevector.h:56
union prevector::direct_or_indirect _union
std::bidirectional_iterator_tag iterator_category
Definition: prevector.h:137
std::random_access_iterator_tag iterator_category
Definition: prevector.h:107
bool operator!=(const_iterator x) const
Definition: prevector.h:123
static void assign_to(const_iterator b, const_iterator e, V &v)
Definition: prevector.h:560
difference_type friend operator-(iterator a, iterator b)
Definition: prevector.h:66
bool operator<(const_iterator x) const
Definition: prevector.h:127
void * memmove(void *a, const void *b, size_t c)
bool operator==(const_iterator x) const
Definition: prevector.h:122
bool operator!=(reverse_iterator x) const
Definition: prevector.h:97
const_iterator & operator+=(size_type n)
Definition: prevector.h:119
Definition: prevector.h:79
difference_type friend operator-(const_iterator a, const_iterator b)
Definition: prevector.h:117