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]) ...
- Template Parameters
- 
  
    | T | Type of the array elements. |  
 
|  | 
|  | DefaultSortedArray () | 
|  | 
|  | DefaultSortedArray (DefaultSortedArray &&src) | 
|  | 
|  | MAXON_OPERATOR_MOVE_ASSIGNMENT (DefaultSortedArray) | 
|  | 
|  | SortedArray () | 
|  | 
|  | SortedArray (const typename BaseArray< T > ::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 | 
|  | 
| ResultRef< TYPE > | Append () | 
|  | 
| ResultRef< TYPE > | Append (const TYPE &x) | 
|  | 
| ResultRef< TYPE > | Append (TYPE &&x) | 
|  | 
| ResultPtr< TYPE > | AppendPtr (TYPE *x) | 
|  | 
| Bool | PopPtr (TYPE **dst) | 
|  | 
| ResultRef< TYPE > | Insert (Int position) | 
|  | 
| ResultMemT< Iterator > | Insert (Iterator position) | 
|  | 
| ResultRef< TYPE > | Insert (Int position, const TYPE &x) | 
|  | 
| ResultMemT< Iterator > | Insert (Iterator position, const TYPE &x) | 
|  | 
| ResultRef< TYPE > | Insert (Int position, TYPE &&x) | 
|  | 
| ResultMemT< Iterator > | Insert (Iterator position, TYPE &&x) | 
|  | 
| ResultPtr< TYPE > | Insert (Int position, const Block< const TYPE > &values) | 
|  | 
| ResultMemT< Iterator > | Insert (Iterator position, const Block< const TYPE > &values) | 
|  | 
| ResultPtr< TYPE > | InsertPtr (Int position, TYPE *x) | 
|  | 
| 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 | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE | ArrayBase (ARGS &&... args) | 
|  | 
| ArrayImpl< SortedArray< DefaultSortedArray< T >, BaseArray< T >, BASESORTFLAGS::NONE, false > & > | ToArray () | 
|  | 
| ArrayImpl< const SortedArray< DefaultSortedArray< T >, BaseArray< T >, BASESORTFLAGS::NONE, false > & > | ToArray () const | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE | operator ArrayImpl< SortedArray< DefaultSortedArray< T >, BaseArray< T >, BASESORTFLAGS::NONE, false > & > () | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE | operator ArrayImpl< const SortedArray< DefaultSortedArray< T >, BaseArray< T >, BASESORTFLAGS::NONE, false > & > () const | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE | ArrayBase0 (ARGS &&... args) | 
|  | 
| Bool | IsValidIndex (Int index) const | 
|  | 
| Result< void > | CheckValidIndex (Int index) const | 
|  | 
| Int | FindIndex (typename ByValueParam< BaseArray< T > ::ValueType >::type v, Int start) const | 
|  | 
| Int | FindLastIndex (typename ByValueParam< BaseArray< T > ::ValueType >::type v) const | 
|  | 
| Int | FindLastIndex (typename ByValueParam< BaseArray< T > ::ValueType >::type v, Int start) const | 
|  | 
| Bool | EraseFirst (typename ByValueParam< BaseArray< T > ::ValueType >::type v) | 
|  | 
| Int | EraseAll (typename ByValueParam< BaseArray< T > ::ValueType >::type v) | 
|  | 
| Result< void > | AppendAllImpl (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags, Bool overwrite, OverloadRank0) | 
|  | 
| Result< void > | InsertAll (Int index, COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY) | 
|  | 
| Result< void > | Add (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY) | 
|  | 
| Result< void > | SubtractImpl (COLLECTION2 &&other, OverloadRank0) | 
|  | 
| Bool | IsEqualImpl (const COLLECTION2 &other, COMPARE &&cmp, OverloadRank0) const | 
|  | 
| HashInt | GetHashCode () const | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE AutoIterator< SortedArray< DefaultSortedArray< T >, BaseArray< T >, BASESORTFLAGS::NONE, false > > | Slice (Int start) | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE AutoIterator< const SortedArray< DefaultSortedArray< T >, BaseArray< T >, BASESORTFLAGS::NONE, false > > | Slice (Int start) const | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE AutoIterator< SortedArray< DefaultSortedArray< T >, BaseArray< T >, BASESORTFLAGS::NONE, false > > | Slice (Int start, Int end) | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE AutoIterator< const SortedArray< DefaultSortedArray< T >, BaseArray< T >, BASESORTFLAGS::NONE, false > > | Slice (Int start, Int end) const | 
|  | 
| BlockIterator< SortedArray< DefaultSortedArray< T >, BaseArray< T >, BASESORTFLAGS::NONE, false >, BaseArray< T > ::ValueType, false, false > | GetBlocks () | 
|  | 
| BlockIterator< SortedArray< DefaultSortedArray< T >, BaseArray< T >, BASESORTFLAGS::NONE, false >, BaseArray< T > ::ValueType, true, false > | GetBlocks () const | 
|  | 
| BlockIterator< SortedArray< DefaultSortedArray< T >, BaseArray< T >, BASESORTFLAGS::NONE, false >, BaseArray< T > ::ValueType, false, true > | GetStridedBlocks () | 
|  | 
| BlockIterator< SortedArray< DefaultSortedArray< T >, BaseArray< T >, BASESORTFLAGS::NONE, false >, BaseArray< T > ::ValueType, true, true > | GetStridedBlocks () const | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE | Collection (ARGS &&... args) | 
|  | 
| ResultOk< void > | VariadicAppend () | 
|  | 
| Result< void > | VariadicAppend (V &&value, VALUES &&... rest) | 
|  | 
|  | operator ValueReceiver< const BaseArray< T > ::ValueType & > () | 
|  | 
|  | operator ValueReceiver< BaseArray< T > ::ValueType && > () | 
|  | 
|  | operator ValueReceiver< typename std::conditional< STD_IS_REPLACEMENT (scalar, BaseArray< T > ::ValueType) | 
|  | 
| DummyParamType & | type () | 
|  | 
| Result< Bool > | ForEach (FN &&callback) const | 
|  | 
| Result< Bool > | ForEach (FN &&callback) | 
|  | 
| H::Iterator | Find (typename ByValueParam< BaseArray< T > ::ValueType >::type v) | 
|  | 
| H::ConstIterator | Find (typename ByValueParam< BaseArray< T > ::ValueType >::type v) const | 
|  | 
| Int | FindIndex (typename ByValueParam< BaseArray< T > ::ValueType >::type v) const | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE Bool | Contains (typename ByValueParam< BaseArray< T > ::ValueType >::type v) const | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE | BaseCollection (ARGS &&... args) | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, Bool >::type | operator== (const COLLECTION2 &other) const | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, Bool >::type | operator!= (const COLLECTION2 &other) const | 
|  | 
| 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 | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE Result< void > | AppendAll (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY) | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE Result< void > | CopyFrom (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::FIT_TO_SIZE) | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE Result< void > | Subtract (COLLECTION2 &&other) | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE Result< void > | Intersect (const COLLECTION2 &other) | 
|  | 
| Bool | Intersects (const COLLECTION2 &other) const | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE Result< void > | CopyFromImpl (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags, OverloadRank0) | 
|  | 
| Result< void > | AppendAllImpl (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags, Bool overwrite, OverloadRank0) | 
|  | 
| 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 | 
|  | 
| MAXON_ATTRIBUTE_FORCE_INLINE Bool | ContainsAll (COLLECTION2 &&other) const | 
|  | 
| Bool | ContainsAllImpl (COLLECTION2 &&other, OverloadRank0) const | 
|  |