template<typename COLLECTION, typename KEYTYPE, typename VALUETYPE, typename SUPER, typename HASH>
class maxon::MapBase< COLLECTION, KEYTYPE, VALUETYPE, SUPER, HASH >
MapBase is a helper template to be used as base class for map-like collections. It will add iterator-based utility functions such as ToString, Find or AppendAll.
- Template Parameters
-
| COLLECTION | The actual collection class, this has to have Collection as (direct or indirect) base class. |
| VALUETYPE | The type of values stored in the collection. |
| SUPER | The class to be used as base class for Collection. |
| HASH | The hash class to be used for elements of the collection. |
- See also
- $ref maps
|
| template<typename... ARGS> |
| MAXON_ATTRIBUTE_FORCE_INLINE | MapBase (ARGS &&... args) |
| |
| MapImpl< COLLECTION & > | ToMap () |
| |
| MapImpl< const COLLECTION & > | ToMap () const |
| |
| MAXON_ATTRIBUTE_FORCE_INLINE | operator MapImpl< COLLECTION & > () |
| |
| MAXON_ATTRIBUTE_FORCE_INLINE | operator MapImpl< const COLLECTION & > () const |
| |
| template<typename... ARGS> |
| MAXON_ATTRIBUTE_FORCE_INLINE | MapBase0 (ARGS &&... args) |
| |
| MAXON_ATTRIBUTE_FORCE_INLINE Bool | Contains (typename ByValueParam< KEYTYPE >::type key) const |
| |
| template<typename PAIR > |
| MAXON_ATTRIBUTE_FORCE_INLINE SFINAEHelper< Bool, typename PAIR::KeyType >::type | Contains (const PAIR &pair) const |
| |
| ResultRef< VALUETYPE > | Append (const KEYTYPE &key) |
| |
| template<typename PAIR > |
| SFINAEHelper< ResultRef< VALUETYPE >, typename PAIR::KeyType >::type | Append (const PAIR &pair) |
| |
| template<typename COLLECTION2 > |
| Result< void > | Add (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY) |
| |
| template<typename COLLECTION2 > |
| Result< void > | AppendAll (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY) |
| |
| template<typename COLLECTION2 > |
| Result< void > | AppendAllInverse (COLLECTION2 &&other) |
| |
| template<typename COLLECTION2 > |
| Bool | ContainsAllImpl (COLLECTION2 &&other, OverloadRank0) const |
| |
| 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 |
| |
| 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 |
| |