|
| template<typename INDEX_TYPE > |
| LVARRAY_HOST_DEVICE constexpr std::enable_if< std::is_signed< INDEX_TYPE >::value, bool >::type | isPositive (INDEX_TYPE const i) |
| |
| template<typename INDEX_TYPE > |
| LVARRAY_HOST_DEVICE constexpr std::enable_if< !std::is_signed< INDEX_TYPE >::value, bool >::type | isPositive (INDEX_TYPE) |
| |
| template<typename ITER > |
| DISABLE_HD_WARNING constexpr LVARRAY_HOST_DEVICE std::iterator_traits< ITER >::difference_type | iterDistance (ITER first, ITER const last, std::input_iterator_tag) |
| |
| template<typename RandomAccessIterator > |
| DISABLE_HD_WARNING constexpr LVARRAY_HOST_DEVICE std::iterator_traits< RandomAccessIterator >::difference_type | iterDistance (RandomAccessIterator first, RandomAccessIterator last, std::random_access_iterator_tag) |
| |
| template<typename ITER > |
| DISABLE_HD_WARNING constexpr LVARRAY_HOST_DEVICE std::iterator_traits< ITER >::difference_type | iterDistance (ITER const first, ITER const last) |
| |
| template<typename T > |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE void | destroy (T *const LVARRAY_RESTRICT ptr, std::ptrdiff_t const size) |
| | Destory the values in the array. More...
|
| |
| template<typename ITER , typename T > |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE void | uninitializedCopy (ITER first, ITER const &last, T *LVARRAY_RESTRICT dst) |
| | Copy construct values from the source to the destination. More...
|
| |
| template<typename T > |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE void | uninitializedMove (T *const LVARRAY_RESTRICT dst, std::ptrdiff_t const size, T *const LVARRAY_RESTRICT src) |
| | Move construct values from the source to the destination. More...
|
| |
| template<typename T > |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE void | uninitializedShiftDown (T *const LVARRAY_RESTRICT ptr, std::ptrdiff_t const size, std::ptrdiff_t const amount) |
| | Shift values down into uninitialized memory. More...
|
| |
| template<typename T > |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE void | uninitializedShiftUp (T *const LVARRAY_RESTRICT ptr, std::ptrdiff_t const size, std::ptrdiff_t const amount) |
| | Shift values up into uninitialized memory. More...
|
| |
| template<typename T , typename ... ARGS> |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE void | resize (T *const LVARRAY_RESTRICT ptr, std::ptrdiff_t const size, std::ptrdiff_t const newSize, ARGS &&... args) |
| | Resize the give array. More...
|
| |
| template<typename T > |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE void | shiftUp (T *const LVARRAY_RESTRICT ptr, std::ptrdiff_t const size, std::ptrdiff_t const index, std::ptrdiff_t const n) |
| | Shift the values in the array at or above the given position up by the given amount. New uninitialized values take their place. More...
|
| |
| template<typename T > |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE void | shiftDown (T *const LVARRAY_RESTRICT ptr, std::ptrdiff_t const size, std::ptrdiff_t const index, std::ptrdiff_t const n) |
| | Shift the values in the array at or above the given position down by the given amount overwriting the existing values. The n entries at the end of the array are not destroyed. More...
|
| |
| template<typename T > |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE void | erase (T *const LVARRAY_RESTRICT ptr, std::ptrdiff_t const size, std::ptrdiff_t const index, std::ptrdiff_t const n=1) |
| | Shift the values in the array at or above the given position down by the given amount overwriting the existing values. The n entries at the end of the array are then destroyed. More...
|
| |
| template<typename T , typename ... ARGS> |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE void | emplaceBack (T *const LVARRAY_RESTRICT ptr, std::ptrdiff_t const size, ARGS &&... args) |
| | Append the to the array constructing the new value in place. More...
|
| |
| template<typename T , typename ITER > |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE std::ptrdiff_t | append (T *const LVARRAY_RESTRICT ptr, std::ptrdiff_t const size, ITER first, ITER const last) |
| | Append the given values to the array. More...
|
| |
| template<typename T , typename ... ARGS> |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE void | emplace (T *const LVARRAY_RESTRICT ptr, std::ptrdiff_t const size, std::ptrdiff_t const index, ARGS &&... args) |
| | Insert into the array constructing the new value in place. More...
|
| |
| template<typename T , typename ITERATOR > |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE void | insert (T *const LVARRAY_RESTRICT ptr, std::ptrdiff_t const size, std::ptrdiff_t const index, ITERATOR first, std::ptrdiff_t const n) |
| | Insert the given values into the array at the given position. More...
|
| |
| template<typename T > |
| DISABLE_HD_WARNING LVARRAY_HOST_DEVICE void | popBack (T *const LVARRAY_RESTRICT ptr, std::ptrdiff_t const size) |
| | Destroy the value at the end of the array. More...
|
| |
Contains functions for operating on a contiguous array of values.
Most functions accept a pointer and a size as the first two arguments. Values in this range are expected to be in a valid state. Values past the end of the array are expected to be uninitialized. Functions that increase the size of the array expect the array to have a large enough capacity to handle the increase.