template<typename T>
class maxon::DefaultSortedArray< T >
Sorted array template for data types which provide an operator < and operator ==.
Usage is simply
DefaultSortedArray<Int> a;
if (a[0] > a[1]) ...
#define iferr_return
Definition: resultbase.h:1531
- Template Parameters
-
| T | Type of the array elements. |
|
| | DefaultSortedArray () |
| |
| | DefaultSortedArray (DefaultSortedArray &&src) |
| |
| | MAXON_OPERATOR_MOVE_ASSIGNMENT (DefaultSortedArray) |
| |
| | SortedArray () |
| |
| | SortedArray (const typename ARRAY::AllocatorType &a) |
| |
| | SortedArray (SortedArray &&src) |
| |
| | ~SortedArray () |
| |
| | MAXON_OPERATOR_MOVE_ASSIGNMENT (SortedArray) |
| |
| void | Reset () |
| |
| void | Flush () |
| |
| ResultMem | SetCapacityHint (Int requestedCapacity, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY) |
| |
| Int | GetCount () const |
| |
| Int | GetCapacityCount () const |
| |
| const TYPE & | operator[] (Int idx) const |
| |
| MAXON_ATTRIBUTE_FORCE_INLINE ResultRef< TYPE > | Append (ARGS &&... args) |
| |
| ResultPtr< TYPE > | AppendPtr (TYPE *x) |
| |
| Bool | PopPtr (TYPE **dst) |
| |
| ResultPtr< TYPE > | InsertPtr (Int position, TYPE *x) |
| |
| ResultRef< TYPE > | Insert (Int position, ARGS &&... args) |
| |
| ResultMemT< Iterator > | Insert (Iterator position, ARGS &&... args) |
| |
| ResultPtr< TYPE > | InsertBlock (Int position, ARGS &&... args) |
| |
| ResultMemT< Iterator > | InsertBlock (Iterator position, ARGS &&... args) |
| |
| ResultPtr< TYPE > | Erase (Int position, Int eraseCnt=1) |
| |
| Iterator | Erase (Iterator position, Int eraseCnt=1) |
| |
| ResultPtr< TYPE > | ErasePtr (Int position, TYPE **dst) |
| |
| ResultMem | SwapErase (Int position, Int eraseCnt=1) |
| |
| Iterator | SwapErase (Iterator position, Int eraseCnt=1) |
| |
| Int | GetBlock (Int position, Block< TYPE, STRIDED > &block) |
| |
| Int | GetBlock (Int position, Block< const TYPE, STRIDED > &block) const |
| |
| Bool | EraseKey (const SEARCH &key) |
| |
| const TYPE * | GetFirst () const |
| |
| TYPE * | GetFirst () |
| |
| const TYPE * | GetLast () const |
| |
| TYPE * | GetLast () |
| |
| ResultMem | Resize (Int newCnt, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::DEFAULT) |
| |
| Bool | Pop (TYPE *dst=nullptr) |
| |
| Int | GetIndex (const TYPE &x) const |
| |
| Result< void > | CopyFrom (const SortedArray &src) |
| |
| Result< void > | CopyFrom (COLLECTION2 &&other) |
| |
| void | Swap (Iterator a, Iterator b) |
| |
| Int | GetMemorySize () const |
| |
| ConstIterator | Begin () const |
| |
| Iterator | Begin () |
| |
| ConstIterator | End () const |
| |
| Iterator | End () |
| |
| void | SortChanged () |
| |
| void | Sort () |
| |
| TYPE * | FindValue (const SEARCH &key) |
| |
| const TYPE * | FindValue (const SEARCH &key) const |
| |
| Int | FindIndex (const SEARCH &key) const |
| |
| ResultRef< TYPE > | InsertValue (const SEARCH &key) |
| |
| ResultRef< TYPE > | InsertValue (const SEARCH &key, Bool &newElement, Int *index=nullptr) |
| |
| BaseArray< T > & | GetUnderlyingArray () |
| |
| const BaseArray< T > & | GetUnderlyingArray () const |
| |
| template<typename... ARGS> |
| constexpr MAXON_ATTRIBUTE_FORCE_INLINE | ArrayBase (ARGS &&... args) |
| |
| ArrayImpl< COLLECTION & > | ToArray () |
| |
| ArrayImpl< const COLLECTION & > | ToArray () const |
| |
| MAXON_ATTRIBUTE_FORCE_INLINE | operator ArrayImpl< COLLECTION & > () |
| |
| MAXON_ATTRIBUTE_FORCE_INLINE | operator ArrayImpl< const COLLECTION & > () const |
| |
| template<typename... ARGS> |
| constexpr MAXON_ATTRIBUTE_FORCE_INLINE | ArrayBase0 (ARGS &&... args) |
| |
| template<typename COLLECTION2 > |
| MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, Bool >::type | operator< (const COLLECTION2 &other) const |
| |
| template<typename COLLECTION2 > |
| MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, Bool >::type | operator<= (const COLLECTION2 &other) const |
| |
| template<typename COLLECTION2 > |
| MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, Bool >::type | operator> (const COLLECTION2 &other) const |
| |
| template<typename COLLECTION2 > |
| MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, Bool >::type | operator>= (const COLLECTION2 &other) const |
| |
| template<typename COMPARE = EqualityCompare, typename COLLECTION2 > |
| MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, COMPARERESULT >::type | Compare (const COLLECTION2 &other, COMPARE &&cmp=COMPARE()) const |
| |
| Bool | IsValidIndex (Int index) const |
| |
| Result< void > | CheckValidIndex (Int index) const |
| |
| Int | FindIndex (typename ByValueParam< VALUETYPE >::type v, Int start) const |
| |
| Int | FindLastIndex (typename ByValueParam< VALUETYPE >::type v) const |
| |
| Int | FindLastIndex (typename ByValueParam< VALUETYPE >::type v, Int start) const |
| |
| Bool | EraseFirst (typename ByValueParam< VALUETYPE >::type v) |
| |
| Int | EraseAll (typename ByValueParam< VALUETYPE >::type v) |
| |
| template<typename COLLECTION2 > |
| Result< void > | AppendAllImpl (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags, Bool overwrite, OverloadRank0) |
| |
| template<typename COLLECTION2 > |
| Result< void > | InsertAll (Int index, COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY) |
| |
| template<typename COLLECTION2 > |
| Result< void > | Add (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY) |
| |
| template<typename COLLECTION2 > |
| Result< void > | CopyValuesFrom (const COLLECTION2 &src, Int srcStart=0, Int start=0, Int count=-1) |
| |
| template<typename COLLECTION2 > |
| Result< void > | SubtractImpl (COLLECTION2 &&other, OverloadRank0) |
| |
| template<typename COLLECTION2 , typename COMPARE > |
| Bool | IsEqualImpl (const COLLECTION2 &other, COMPARE &&cmp, OverloadRank0) const |
| |
| template<typename COLLECTION2 , typename COMPARE > |
| COMPARERESULT | CompareImpl (const COLLECTION2 &other, COMPARE &&cmp, OverloadRank0) const |
| |
| HashInt | GetHashCode () const |
| |
| UniqueHash | GetUniqueHashCode () const |
| |
| MAXON_ATTRIBUTE_FORCE_INLINE AutoIterator< COLLECTION > | Slice (Int start) |
| |
| MAXON_ATTRIBUTE_FORCE_INLINE AutoIterator< const COLLECTION > | Slice (Int start) const |
| |
| MAXON_ATTRIBUTE_FORCE_INLINE AutoIterator< COLLECTION > | Slice (Int start, Int end) |
| |
| MAXON_ATTRIBUTE_FORCE_INLINE AutoIterator< const COLLECTION > | Slice (Int start, Int end) const |
| |
| BlockIterator< COLLECTION, VALUETYPE, false, false > | GetBlocks () |
| |
| BlockIterator< COLLECTION, VALUETYPE, true, false > | GetBlocks () const |
| |
| BlockIterator< COLLECTION, VALUETYPE, false, true > | GetStridedBlocks () |
| |
| BlockIterator< COLLECTION, VALUETYPE, true, true > | GetStridedBlocks () const |
| |
| template<typename... ARGS> |
| MAXON_ATTRIBUTE_FORCE_INLINE | Collection (ARGS &&... args) |
| |
| ResultOk< void > | VariadicAppend () |
| |
| template<typename V , typename... VALUES> |
| Result< void > | VariadicAppend (V &&value, VALUES &&... rest) |
| |
| | operator ValueReceiver< const VALUETYPE & > () |
| |
| | operator ValueReceiver< VALUETYPE && > () |
| |
| | operator ValueReceiver< typename std::conditional< STD_IS_REPLACEMENT (scalar, VALUETYPE) |
| |
| DummyParamType & | type () |
| |
| template<typename FN > |
| Result< Bool > | ForEach (FN &&callback) const |
| |
| template<typename FN > |
| Result< Bool > | ForEach (FN &&callback) |
| |
| template<typename H = COLLECTION> |
| H::Iterator | Find (typename ByValueParam< VALUETYPE >::type v) |
| |
| template<typename H = COLLECTION> |
| H::ConstIterator | Find (typename ByValueParam< VALUETYPE >::type v) const |
| |
| Int | FindIndex (typename ByValueParam< VALUETYPE >::type v) const |
| |
| MAXON_ATTRIBUTE_FORCE_INLINE Bool | Contains (typename ByValueParam< VALUETYPE >::type v) const |
| |
| template<typename... ARGS> |
| MAXON_ATTRIBUTE_FORCE_INLINE | BaseCollection (ARGS &&... args) |
| |
| template<typename COLLECTION2 > |
| MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, Bool >::type | operator== (const COLLECTION2 &other) const |
| |
| template<typename COLLECTION2 > |
| MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, Bool >::type | operator!= (const COLLECTION2 &other) const |
| |
| template<typename COMPARE = EqualityCompare, typename COLLECTION2 > |
| MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value &&!STD_IS_REPLACEMENT(same, typename std::decay< COMPARE >::type, EQUALITY), Bool >::type | IsEqual (const COLLECTION2 &other, COMPARE &&cmp=COMPARE()) const |
| |
| template<typename COLLECTION2 > |
| MAXON_ATTRIBUTE_FORCE_INLINE Result< void > | AppendAll (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY) |
| |
| template<typename COLLECTION2 > |
| MAXON_ATTRIBUTE_FORCE_INLINE Result< void > | CopyFrom (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::FIT_TO_SIZE) |
| |
| template<typename COLLECTION2 > |
| MAXON_ATTRIBUTE_FORCE_INLINE Result< void > | Subtract (COLLECTION2 &&other) |
| |
| template<typename COLLECTION2 > |
| MAXON_ATTRIBUTE_FORCE_INLINE Result< void > | Intersect (const COLLECTION2 &other) |
| |
| template<typename COLLECTION2 > |
| Bool | Intersects (const COLLECTION2 &other) const |
| |
| template<typename COLLECTION2 > |
| MAXON_ATTRIBUTE_FORCE_INLINE Result< void > | CopyFromImpl (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags, OverloadRank0) |
| |
| template<typename COLLECTION2 > |
| Result< void > | AppendAllImpl (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags, Bool overwrite, OverloadRank0) |
| |
| template<typename COLLECTION2 > |
| Result< void > | IntersectImpl (COLLECTION2 &&other, OverloadRank0) |
| |
| MAXON_ATTRIBUTE_FORCE_INLINE Bool | IsEmpty () const |
| |
| MAXON_ATTRIBUTE_FORCE_INLINE Bool | IsPopulated () const |
| |
| String | ToString (const FormatStatement *formatStatement=nullptr) const |
| |
| template<typename COLLECTION2 > |
| MAXON_ATTRIBUTE_FORCE_INLINE Bool | ContainsAll (COLLECTION2 &&other) const |
| |
| template<typename COLLECTION2 > |
| Bool | ContainsAllImpl (COLLECTION2 &&other, OverloadRank0) const |
| |