|
using | Super = ArrayBase< Block< const InterfaceReference *const, STRIDED, MOVE >, const InterfaceReference *const, BlockBase< const InterfaceReference *const, STRIDED >, DefaultCompare > |
|
using | StrideType = typename std::conditional< GENERIC, Char, const InterfaceReference *const >::type |
|
using | IsBlock = std::true_type |
|
using | Iterator = BaseIterator< Block, STRIDED > |
|
using | ConstIterator = BaseIterator< Block, STRIDED > |
|
using | SwapByteChar = typename std::conditional< std::is_same< const Byte, const const InterfaceReference *const >::value, Char, Byte >::type |
|
using | Super = BaseCollection< COLLECTION, SUPER > |
|
using | ValueType = VALUETYPE |
|
using | IsCollection = std::true_type |
|
using | IsBaseArray = std::false_type |
|
| Block () |
|
constexpr | Block (const InterfaceReference *const *ptr, Int size, Int stride=(STRIDED &&GENERIC) ? -1 :SIZEOF(StrideType)) |
|
| Block (Iterator start, Int size, Int stride=(STRIDED &&GENERIC) ? -1 :SIZEOF(StrideType)) |
|
MAXON_IMPLICIT | Block (const InterfaceReference *const(&array)[N]) |
|
MAXON_IMPLICIT | Block (const std::initializer_list< typename std::remove_const< const InterfaceReference *const >::type > &list) |
|
| Block (ANY *ptr, Int size) |
|
| Block (const Block< ANY > &src) |
|
MAXON_IMPLICIT | Block (ANY(&array)[N]) |
|
| Block (const Block &src)=default |
|
Block & | operator= (const Block &src)=default |
|
Result< void > | CopyFrom (const Block &src)=delete |
|
| operator ArrayImpl< Block & > ()=delete |
|
| operator ArrayImpl< const Block & > () const=delete |
|
Int | GetStride () const |
|
Bool | IsStrided () const |
|
void | Set (const InterfaceReference *const *ptr, Int size, Int stride=(STRIDED &&GENERIC) ? -1 :SIZEOF(StrideType)) |
|
void | Reset () |
|
| operator typename std::conditional< STRIDED, DeleteReturnType01, Block< const InterfaceReference *const, true, MOVE >>::type () const |
|
| operator typename std::conditional< STRIDED||CONSTBLOCK, DeleteReturnType02, Block< const const InterfaceReference *const, true, MOVE >>::type () const |
|
| operator typename std::conditional< CONSTBLOCK, DeleteReturnType03, const Block< const const InterfaceReference *const, STRIDED, MOVE > & >::type () const |
|
| operator typename std::conditional< STRIDED||!MOVE, DeleteReturnType04, Block< const InterfaceReference *const, true, false >>::type () const |
|
| operator typename std::conditional< STRIDED||!MOVE||CONSTBLOCK, DeleteReturnType05, Block< const const InterfaceReference *const, true, false >>::type () const |
|
| operator typename std::conditional<!MOVE||CONSTBLOCK, DeleteReturnType06, const Block< const const InterfaceReference *const, STRIDED, false > & >::type () const |
|
| operator typename std::conditional<!MOVE, DeleteReturnType07, const Block< const InterfaceReference *const, STRIDED, false > & >::type () const |
|
| operator typename std::conditional< GENERIC, DeleteReturnType08, const Block< typename InheritConst< Generic, const InterfaceReference *const >::type, STRIDED > & >::type () const |
|
| operator typename std::conditional< BYTE_OR_CHAR, const Block< typename InheritConst< SwapByteChar, const InterfaceReference *const >::type, STRIDED >, DeleteReturnType09 >::type & () const |
|
| operator typename std::conditional< BYTE_OR_CHAR &&!CONSTBLOCK, const Block< const SwapByteChar, STRIDED >, const DeleteReturnType09 >::type & () const |
|
const InterfaceReference *const * | GetFirst () const |
|
void | SetFirst (const InterfaceReference *const *value) |
|
const InterfaceReference *const * | GetLast () const |
|
const InterfaceReference *const & | operator[] (Int index) const |
|
Block | Slice (Int start) const |
|
Block | Slice (Int start, Int end) const |
|
Bool | StartsWith (const Block &prefix) const |
|
Bool | EndsWith (const Block &suffix) const |
|
Iterator | Begin () const |
|
Iterator | End () const |
|
Int | GetCapacityCount () const |
|
Result< void > | CopyValuesFrom (const Block< T2, S2, M2 > &other) |
|
Result< void > | CopyValuesFrom (const COLLECTION &other) |
|
Result< void > | ConstructValuesFrom (const Block< T2, S2, M2 > &other) |
|
Int | GetMemorySize () const |
|
Int | GetBlock (Int index, Block< const const InterfaceReference *const, false > &block) const |
|
Int | GetBlock (Int index, typename std::conditional< CONSTBLOCK, DeleteReturnType01, Block< const InterfaceReference *const, false > & >::type block) const |
|
Int | GetBlock (Int index, typename std::conditional< CONSTBLOCK, DeleteReturnType02, StridedBlock< const InterfaceReference *const > & >::type block) const |
|
Int | GetBlock (Int index, StridedBlock< const const InterfaceReference *const > &block) const |
|
UniqueHash | GetUniqueHashCode () const |
|
void | CombineUniqueHash (UniqueHasher &hash) const |
|
std::enable_if<!STRIDED &&std::is_same< BLOCK, Block >::value, Bool >::type | IsEqualImpl (const BLOCK &other, COMPARE &&cmp, OverloadRank1) const |
|
const InterfaceReference *const * | GetPtr (Int index) const |
|
constexpr MAXON_ATTRIBUTE_FORCE_INLINE | ArrayBase (ARGS &&... args) |
|
ArrayImpl< Block< const InterfaceReference *const, STRIDED, MOVE > & > | ToArray () |
|
ArrayImpl< const Block< const InterfaceReference *const, STRIDED, MOVE > & > | ToArray () const |
|
MAXON_ATTRIBUTE_FORCE_INLINE | operator ArrayImpl< Block< const InterfaceReference *const, STRIDED, MOVE > & > () |
|
MAXON_ATTRIBUTE_FORCE_INLINE | operator ArrayImpl< const Block< const InterfaceReference *const, STRIDED, MOVE > & > () const |
|
template<typename... ARGS> |
constexpr MAXON_ATTRIBUTE_FORCE_INLINE | ArrayBase0 (ARGS &&... args) |
|
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 > | SubtractImpl (COLLECTION2 &&other, OverloadRank0) |
|
template<typename COLLECTION2 , typename COMPARE > |
Bool | IsEqualImpl (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 |
|
static const Block & | NullValueRef () |
|
static const VALUETYPE & | GetMapKey (const VALUETYPE &key) |
|
| VALUETYPE |
|