Macros | |
#define | IMPLEMENT_CUSTOM_BASELISTNODE(NODE, linkPtr) |
#define | NewObjCopy(T, SRC) |
#define | PRIVATE_MAXON_C_ARRAY_B(count, T, ...) |
#define | PRIVATE_MAXON_C_ARRAY_A(count, T, ...) |
#define | MAXON_C_ARRAY(T, ...) |
Typedefs | |
template<typename T , Int COUNT, Int MINCHUNKSIZE = COUNT, BASEARRAYFLAGS MEMFLAGS = BASEARRAYFLAGS::NONE, typename ALLOCATOR = DefaultAllocator> | |
using | BufferedBaseArray = typename BufferedBaseArraySelector< COUNT, MINCHUNKSIZE, MEMFLAGS, ALLOCATOR >::template Type< T > |
template<typename T > | |
using | Pointer = BaseRef< T, PointerHandler > |
template<typename T > | |
using | UniqueRef = BaseRef< T, UniqueRefHandler > |
template<typename T > | |
using | StrongRef = BaseRef< T, StrongRefHandler > |
template<typename T > | |
using | StrongCOWRef = BaseRef< const T, StrongCOWRefHandler > |
template<typename T > | |
using | AutoMem = UniqueRef< RawMem< T > > |
template<typename T > | |
using | StridedBlock = Block< T, true > |
template<typename T , Bool STRIDED = false> | |
using | MoveBlock = Block< T, STRIDED, true > |
using | OpaqueRef = StrongRef< OpaqueBase > |
using | MemoryObserverCallback = MEMORY_OBSERVER_FLAGS(*)(void *callbackData, const void *target, MEMORY_OBSERVER_STATE state) |
using | MemoryMetadataDestructor = void(*)(void *metadata) |
Enumerations | |
enum class | BASEARRAYFLAGS { NONE , MOVEANDCOPYOBJECTS } |
enum class | BLOCKARRAYFLAGS { NONE , MOVEANDCOPYOBJECTS , NOINSERTERASE , GROW_SLOWLY } |
enum class | BURSTTRIE_SORT { NONE , LINEAR_SEARCH , BINARY_SEARCH } |
enum class | COLLECTION_RESIZE_FLAGS { NONE , ON_SHRINK_KEEP_CAPACITY , ON_SHRINK_FIT_TO_SIZE , ON_GROW_RESERVE_CAPACITY , ON_GROW_FIT_TO_SIZE , ON_GROW_UNINITIALIZED , ON_GROW_UNSPECIFIED , ON_RESIZE_UNSPECIFIED , FIT_TO_SIZE , DEFAULT , POD_UNINITIALIZED } |
enum class | HASHMAP_ENTRY_LAYOUT { HASH_KEY_VALUE , KEY_HASH_VALUE , HASH_VALUE_KEY , HASH_VALUE , KEY_VALUE , VALUE } |
enum class | HASHMAP_MODE { DEFAULT , SYNCHRONIZED , NO_NONEMPTY_BUCKET_TABLE } |
enum class | BASESORTFLAGS { NONE , MOVEANDCOPYOBJECTS } |
enum class | MEMORY_OBSERVER_FLAGS : Int { DEFAULT , CLAIM_SHARED_OWNERSHIP , CLAIM_EXCLUSIVE_OWNERSHIP , KEEP_OBSERVER , INVOKE_WITH_UNLOCKED_TARGET } |
enum class | MEMORY_OBSERVER_STATE : Int { DEFAULT , TARGET_IS_LOCKED , TARGET_HAS_EXCLUSIVE_OWNERSHIP } |
Functions | |
enum maxon::BASEARRAYFLAGS | MAXON_ENUM_FLAGS (BASEARRAYFLAGS) |
template<typename T > | |
T * | PrivateInitCopy (void *ptr, const T &src) |
template<typename T , Int N> | |
Block< T > | ToBlock (T(&array)[N]) |
template<typename T > | |
Block< typename maxon::details::BlockType< T >::type > | ToBlock (T *ptr, Int size) |
template<typename T > | |
Block< T > | ToSingletonBlock (T &value) |
template<typename T > | |
Block< const T > | ToSingletonBlock (const T &value) |
template<typename T > | |
StridedBlock< typename maxon::details::BlockType< T >::type > | ToBlock (T *ptr, Int size, Int stride) |
Block< const Char > | CharToBlock (const Char *str) |
Block< const UChar > | CharToBlock (const UChar *str) |
template<Int N> | |
Block< const Char > | CharToBlock (const Char(&str)[N]) |
template<Int N> | |
Block< const UChar > | CharToBlock (const UChar(&str)[N]) |
template<Int N> | |
Block< const Utf32Char > | CharToBlock (const Utf32Char(&str)[N]) |
enum maxon::BLOCKARRAYFLAGS | MAXON_ENUM_FLAGS (BLOCKARRAYFLAGS) |
enum maxon::BURSTTRIE_SORT | MAXON_ENUM_LIST (BURSTTRIE_SORT) |
template<typename C > | |
Int | PrivateGetCount (const C &collection, OverloadRank0) |
template<typename T , Int N> | |
Int | PrivateGetCount (T(&array)[N], OverloadRank1) |
template<typename C > | |
SFINAEHelper< Int, typename C::IsCollection >::type | PrivateGetCount (const C &collection, OverloadRank2) |
template<typename ITERABLE > | |
Int | GetCount (const ITERABLE &iterable) |
template<typename SET , typename KEY > | |
MAXON_ATTRIBUTE_FORCE_INLINE Bool | PrivateContains (const SET &set, const KEY &key, OverloadRank0) |
template<typename T , Int N, typename KEY > | |
Bool | PrivateContains (T(&array)[N], const KEY &key, OverloadRank1) |
template<typename SET , typename KEY > | |
MAXON_ATTRIBUTE_FORCE_INLINE auto | PrivateContains (const SET &set, const KEY &key, OverloadRank1) -> decltype(set.Contains(key)) |
template<typename SET , typename KEY > | |
MAXON_ATTRIBUTE_FORCE_INLINE SFINAEHelper< Bool, typename SET::IsCollection >::type | PrivateContains (const SET &set, const KEY &key, OverloadRank2) |
template<typename PREDICATE , typename KEY > | |
MAXON_ATTRIBUTE_FORCE_INLINE Bool | Contains (const PREDICATE &predicate, const KEY &key) |
template<typename COMPARE , typename T1 , typename T2 > | |
MAXON_ATTRIBUTE_FORCE_INLINE Bool | PrivateIsEqual (COMPARE &&cmp, const T1 &a, const T2 &b, OverloadRank0) |
template<typename COMPARE , typename T1 , typename T2 > | |
MAXON_ATTRIBUTE_FORCE_INLINE auto | PrivateIsEqual (COMPARE &&cmp, const T1 &a, const T2 &b, OverloadRank1) -> decltype(cmp.IsEqual(a, b)) |
template<typename PREDICATE , typename T1 , typename T2 > | |
MAXON_ATTRIBUTE_FORCE_INLINE Bool | IsEqual (PREDICATE &&predicate, const T1 &a, const T2 &b) |
MAXON_MEMBERTYPE_DETECTOR (IsCollection, IsCollection, std::false_type) | |
enum maxon::COLLECTION_RESIZE_FLAGS | MAXON_ENUM_FLAGS (COLLECTION_RESIZE_FLAGS, "net.maxon.datatype.enum.collection_resize_flags", EARLY) |
template<typename COLLECTION , typename T > | |
std::conditional<!STD_IS_REPLACEMENT(reference, COLLECTION) &&(GetCollectionKind< COLLECTION >::value !=COLLECTION_KIND::NONE), T &&, T & >::type | ValueForward (T &x) |
template<typename COLLECTION , typename T , Bool STRIDED> | |
const Block< T, STRIDED, !STD_IS_REPLACEMENT(reference, COLLECTION) &&(GetCollectionKind< COLLECTION >::value !=COLLECTION_KIND::NONE)> & | BlockForward (const Block< T, STRIDED > &block) |
template<typename COLLECTION > | |
COLLECTION && | PrivateGetMap (COLLECTION &&c, OverloadRank0) |
template<typename COLLECTION > | |
Substitute< COLLECTION &&, typename std::remove_reference< COLLECTION >::type::MapType >::type | PrivateGetMap (COLLECTION &&c, OverloadRank1) |
MAXON_MEMBERTYPE_DETECTOR (GetNonConstIteratorType, Iterator, std::false_type) | |
MAXON_MEMBERTYPE_DETECTOR (GetConstIteratorType, ConstIterator, std::false_type) | |
MAXON_MEMBERTYPE_DETECTOR (GetCollectionType, CollectionType, T) | |
MAXON_MEMBERTYPE_DETECTOR (IsForEachIterator, IsForEachIterator, std::false_type) | |
template<typename I > | |
ReverseIterator< typename GetIteratorType< typename std::remove_reference< I >::type >::type > | RBegin (I &&iterable) |
template<typename I > | |
ReverseIterator< typename GetIteratorType< typename std::remove_reference< I >::type >::type > | REnd (I &&iterable) |
template<typename COLLECTION > | |
MAXON_ATTRIBUTE_FORCE_INLINE auto | begin (COLLECTION &&c) -> decltype(c.Begin()) |
template<typename COLLECTION > | |
MAXON_ATTRIBUTE_FORCE_INLINE auto | end (COLLECTION &&c) -> decltype(c.End()) |
enum maxon::HASHMAP_ENTRY_LAYOUT | MAXON_ENUM_LIST (HASHMAP_ENTRY_LAYOUT) |
enum maxon::HASHMAP_MODE | MAXON_ENUM_LIST (HASHMAP_MODE) |
template<typename RANGETYPE > | |
Int | GetRangeItemCount (const RANGETYPE &data) |
enum maxon::BASESORTFLAGS | MAXON_ENUM_FLAGS (BASESORTFLAGS) |
template<typename T , typename HANDLER , typename TAG , Int TAG_BITS, TAG DEFAULT_VALUE, Bool ENABLE_POINTER_CONVERSION> | |
SFINAEHelper< String, T >::type | ToString (const TaggedBaseRef< T, HANDLER, TAG, TAG_BITS, DEFAULT_VALUE, ENABLE_POINTER_CONVERSION > &object, const FormatStatement *formatStatement, Bool checkDataType=true) |
MAXON_ASSERT_STANDARD_LAYOUT (WeakRefBase) | |
MAXON_ASSERT_STANDARD_LAYOUT (WeakRefTargetBase) | |
enum maxon::MEMORY_OBSERVER_FLAGS Int | MAXON_ENUM_FLAGS (MEMORY_OBSERVER_FLAGS) |
enum maxon::MEMORY_OBSERVER_STATE Int | MAXON_ENUM_FLAGS (MEMORY_OBSERVER_STATE) |
Block< const Char > | ToBlock () const |
MAXON_ATTRIBUTE_NO_INLINE void | DoSort () const |
Variables | |
static const Int | BASEARRAY_DEFAULT_CHUNK_SIZE |
static constexpr Int | BLOCKARRAY_DEFAULT_SIZE_EXPONENT |
#define IMPLEMENT_CUSTOM_BASELISTNODE | ( | NODE, | |
linkPtr | |||
) |
Use this macro to implement custom BaseListNodes where T and NODE are equal. NODE is the name of the class and linkPtr is the address of the BaseListLinkPOD. Don't forget that your custom node must have a destructor which has to call this->Remove(). If you want to implement legacy stile GetNext() or GetPrev() you must check IsListHead() when using _GetNext() or _GetPrev().
#define NewObjCopy | ( | T, | |
SRC | |||
) |
#define PRIVATE_MAXON_C_ARRAY_B | ( | count, | |
T, | |||
... | |||
) |
#define PRIVATE_MAXON_C_ARRAY_A | ( | count, | |
T, | |||
... | |||
) |
#define MAXON_C_ARRAY | ( | T, | |
... | |||
) |
Returns a CArray of type T. The number of elements is automatically determined. The macro can be used to specify an argument for a function parameter of Block type directly in the function call as in
[in] | T | Type of the array elements. |
[in] | ... | Values for the array elements. |
using BufferedBaseArray = typename BufferedBaseArraySelector<COUNT, MINCHUNKSIZE, MEMFLAGS, ALLOCATOR>::template Type<T> |
BufferedBaseArray is a maxon::BaseArray which uses a maxon::FixedBufferAllocator. The allocator's buffer lies within the BufferedBaseArray, so no dynamic memory allocation is needed as long as the reserved space suffices. This can greatly improve performance if the number of elements in an array is usually small.
You shouldn't reserve a large amount of elements, and you shouldn't use BufferedBaseArray
if it is likely that the reserved space won't be enough. E.g., the ports of a node are typically small in number, so a BufferedBaseArray can be used. But the points of polygon object are typically large in number, so don't use a BufferedBaseArray.
Example:
T | Type of the array elements. |
COUNT | Number of elements of the internal buffer. |
MINCHUNKSIZE | The minimum number of elements upon array creation. |
MEMFLAGS | Use BASEARRAYFLAGS::NONE unless you know the object can be moved and/or copied. |
ALLOCATOR | Class for memory allocation if the internal buffer doesn't suffice. |
using Pointer = BaseRef<T, PointerHandler> |
The Pointer template behaves almost identical to an ordinary C++ pointer, with the exception that the default constructor automatically initializes the pointer with nullptr, and the destructor automatically resets the pointer to nullptr. Pointer is a template based on BaseRef with PointerHandler as template argument. As such, you can also use the helper methods of BaseRef for object creation, movement etc.
using UniqueRef = BaseRef<T, UniqueRefHandler> |
The UniqueRef template stores a pointer to an object (usually obtained by NewObj()), and it automatically deletes the object on destruction or reset by means of DeleteObj(). So you don't have to take care of the rather error-prone manual deleting of objects. Note that this behavior means that UniqueRef has the sole ownership on the object. You cannot have more than one UniqueRef pointing to the same Object. UniqueRef is a template based on BaseRef with UniqueRefHandler as template argument. As such, you can also use the helper methods of BaseRef for object creation, movement etc.
T | Type of the object the UniqueRef points to. |
using StrongRef = BaseRef<T, StrongRefHandler> |
A StrongReference can point to a target object and ensures that the target object exists as long as there are strong references to it. As soon as there are no more strong references pointing to it the target object will be destructed.
T | Type of the target object for the strong reference. |
using StrongCOWRef = BaseRef<const T, StrongCOWRefHandler> |
A StrongCOWRef shares the basic behaviour of a StrongReference, but it supports copy-on-write semantics: If a modification of the object is to be made through the reference or if MakeWritable() is invoked, a copy of the object is made unless the reference is exclusive. This ensures that other COW references to the object aren't affected by the modification. If the allocation of a copy fails the reference will be set to null.
T | Type of the target object for the strong reference. |
using StridedBlock = Block<T, true> |
MoveBlock is a type alias for a Block with the MOVE template parameter set to true. MoveBlock can be used for function parameters where the values of the block may be moved to another place by the function. This prevents accidental moves of temporary Blocks (e.g. those returend by ToBlock()) which would happen with Block&&.
T | Type of elements of the block. |
STRIDED | True if a stride other than SIZEOF(T) shall be supported. |
using OpaqueRef = StrongRef<OpaqueBase> |
A strong reference to a hidden class.
using MemoryObserverCallback = MEMORY_OBSERVER_FLAGS (*)(void* callbackData, const void* target, MEMORY_OBSERVER_STATE state) |
using MemoryMetadataDestructor = void (*)(void* metadata) |
|
strong |
Flags for the behaviour of BaseArray when moving objects, can be used to force memcpy/memmove/realloc.
|
strong |
Flags for the behaviour of BlockArray when moving objects (only relevant for Insert() and Erase()).
|
strong |
This enum defines the sorting modes for the buckets of a BurstTrieMap.
|
strong |
Flags for Resize(). Depending on the type of collection the flags might be ignored (except for ON_GROW_UNINITIALIZED).
|
strong |
|
strong |
HASHMAP_MODE can be used as template argument for HashMap to control its behavior.
|
strong |
Flags for the behavior of BaseSort when moving objects. If you pass the default value BASESORTFLAGS::NONE an auto-detection checks for POD and sets BASESORTFLAGS::MOVEANDCOPYOBJECTS if applicable. For non-POD datatypes BASESORTFLAGS::MOVEANDCOPYOBJECTS can be manually set to increase performance (if your datatype allows memory operations).
|
strong |
The observer might return several flags, if it just observes the destruction it should simply return DEFAULT.
|
strong |
The observer gets information about the target via the state parameter.
enum maxon::BASEARRAYFLAGS maxon::MAXON_ENUM_FLAGS | ( | BASEARRAYFLAGS | ) |
T* maxon::PrivateInitCopy | ( | void * | ptr, |
const T & | src | ||
) |
Block<T> maxon::ToBlock | ( | T(&) | array[N] | ) |
Converts a C++ fixed-size array to a block.
[in] | array | The array to wrap in a block. |
Block<typename maxon::details::BlockType<T>::type> maxon::ToBlock | ( | T * | ptr, |
Int | size | ||
) |
Makes a non-strided block from a pointer and a size. This is the same as using the constructor Block<T>(ptr, size)
, but you save to specify the template argument for the type.
[in] | ptr | Pointer to the first element. |
[in] | size | Number of elements. |
size
elements starting at ptr
. Block<T> maxon::ToSingletonBlock | ( | T & | value | ) |
Block<const T> maxon::ToSingletonBlock | ( | const T & | value | ) |
StridedBlock<typename maxon::details::BlockType<T>::type> maxon::ToBlock | ( | T * | ptr, |
Int | size, | ||
Int | stride | ||
) |
Makes a strided block from a pointer, a size and a stride. This is the same as using the constructor StridedBlock<T>(ptr, size, stride)
, but you save to specify the template arguments.
[in] | ptr | Pointer to the first element. |
[in] | size | Number of elements. |
[in] | stride | Element stride. |
size
elements starting at ptr
with the given stride
. Converts a null-terminated C-string to a block. The block contains all characters from the string except the null terminator.
[in] | str | Pointer to the null-terminated C-string, may be nullptr. |
str
. enum maxon::BLOCKARRAYFLAGS maxon::MAXON_ENUM_FLAGS | ( | BLOCKARRAYFLAGS | ) |
enum maxon::BURSTTRIE_SORT maxon::MAXON_ENUM_LIST | ( | BURSTTRIE_SORT | ) |
Int maxon::PrivateGetCount | ( | const C & | collection, |
OverloadRank0 | |||
) |
Int maxon::PrivateGetCount | ( | T(&) | array[N], |
OverloadRank1 | |||
) |
SFINAEHelper<Int, typename C::IsCollection>::type maxon::PrivateGetCount | ( | const C & | collection, |
OverloadRank2 | |||
) |
Int maxon::GetCount | ( | const ITERABLE & | iterable | ) |
Returns the number of elements of iterable
. If the iterable is a collection or a C++ array, the true number of elements is returned, otherwise (e.g., for an iterator) -1.
[in] | iterable | Some iterable object. |
MAXON_ATTRIBUTE_FORCE_INLINE Bool maxon::PrivateContains | ( | const SET & | set, |
const KEY & | key, | ||
OverloadRank0 | |||
) |
Bool maxon::PrivateContains | ( | T(&) | array[N], |
const KEY & | key, | ||
OverloadRank1 | |||
) |
MAXON_ATTRIBUTE_FORCE_INLINE auto maxon::PrivateContains | ( | const SET & | set, |
const KEY & | key, | ||
OverloadRank1 | |||
) | -> decltype(set.Contains(key)) |
MAXON_ATTRIBUTE_FORCE_INLINE SFINAEHelper<Bool, typename SET::IsCollection>::type maxon::PrivateContains | ( | const SET & | set, |
const KEY & | key, | ||
OverloadRank2 | |||
) |
MAXON_ATTRIBUTE_FORCE_INLINE Bool maxon::Contains | ( | const PREDICATE & | predicate, |
const KEY & | key | ||
) |
Checks if key
is contained in the set defined by predicate
. predicate
has to be of a predicate type, i.e., either a collection, a C++ array, an object with Contains
function or a Bool-valued unary function object.
[in] | predicate | Some predicate object. |
[in] | key | Key to look up in the predicate object. |
key
is contained in predicate
. MAXON_ATTRIBUTE_FORCE_INLINE Bool maxon::PrivateIsEqual | ( | COMPARE && | cmp, |
const T1 & | a, | ||
const T2 & | b, | ||
OverloadRank0 | |||
) |
MAXON_ATTRIBUTE_FORCE_INLINE auto maxon::PrivateIsEqual | ( | COMPARE && | cmp, |
const T1 & | a, | ||
const T2 & | b, | ||
OverloadRank1 | |||
) | -> decltype(cmp.IsEqual(a, b)) |
MAXON_ATTRIBUTE_FORCE_INLINE Bool maxon::IsEqual | ( | PREDICATE && | predicate, |
const T1 & | a, | ||
const T2 & | b | ||
) |
Checks if #a and #b are equal according to the given predicate. The predicate has to be either an object callable with two parameters (such as a lambda), or an object with a function IsEqual with two parameters.
[in] | predicate | Some predicate object. |
[in] | a | First value to compare for equality. |
[in] | b | Second value to compare for equality. |
maxon::MAXON_MEMBERTYPE_DETECTOR | ( | IsCollection | , |
IsCollection | , | ||
std::false_type | |||
) |
enum maxon::COLLECTION_RESIZE_FLAGS maxon::MAXON_ENUM_FLAGS | ( | COLLECTION_RESIZE_FLAGS | , |
"net.maxon.datatype.enum.collection_resize_flags" | , | ||
EARLY | |||
) |
std::conditional<!STD_IS_REPLACEMENT(reference, COLLECTION) && (GetCollectionKind<COLLECTION>::value != COLLECTION_KIND::NONE), T&&, T&>::type maxon::ValueForward | ( | T & | x | ) |
This helper functions serves a similar purpose as std::forward<X>(x). But in ValueForward<COLLECTION>(x), COLLECTION need not be the type of x itself, but can be an arbitrary type. If COLLECTION a collection type (but not a reference type to a collection type), x is forwarded as r-value reference, otherwise as l-value reference. The typical usage is in a function template which receives some collection via a parameter COLLECTION&& collection
(with COLLECTION being a template parameter), and where the values of the collection shall be forwarded to another function. If a collection is passed as r-value to the function, its values should passed as r-values, too, to the other function. Example:
[in] | x | The value to forward. |
COLLECTION | A type to determine if x shall be forwarded as r-value (COLLECTION is a collection type, but not a reference type) or l-value (otherwise). |
const Block<T, STRIDED, !STD_IS_REPLACEMENT(reference, COLLECTION) && (GetCollectionKind<COLLECTION>::value != COLLECTION_KIND::NONE)>& maxon::BlockForward | ( | const Block< T, STRIDED > & | block | ) |
This helper functions serves a similar purpose as std::forward<X>(x). It receives a Block and returns the same block: Either as it is, or cast to a MoveBlock. The latter case happens when COLLECTION is a collection type (but not a reference type to a collection type). The typical usage is in a function template which receives some collection via a parameter COLLECTION&& collection
(with COLLECTION being a template parameter), and where blocks of values of the collection shall be forwarded to another function. If a collection is passed as r-value to the function, its blocks should passed as MoveBlocks to the other function.
[in] | block | The block to forward. |
COLLECTION | A type to determine if x shall be forwarded as r-value (COLLECTION is a collection type, but not a reference type) or l-value (otherwise). |
COLLECTION&& maxon::PrivateGetMap | ( | COLLECTION && | c, |
OverloadRank0 | |||
) |
Substitute<COLLECTION&&, typename std::remove_reference<COLLECTION>::type::MapType>::type maxon::PrivateGetMap | ( | COLLECTION && | c, |
OverloadRank1 | |||
) |
maxon::MAXON_MEMBERTYPE_DETECTOR | ( | GetNonConstIteratorType | , |
Iterator | , | ||
std::false_type | |||
) |
maxon::MAXON_MEMBERTYPE_DETECTOR | ( | GetConstIteratorType | , |
ConstIterator | , | ||
std::false_type | |||
) |
maxon::MAXON_MEMBERTYPE_DETECTOR | ( | GetCollectionType | , |
CollectionType | , | ||
T | |||
) |
maxon::MAXON_MEMBERTYPE_DETECTOR | ( | IsForEachIterator | , |
IsForEachIterator | , | ||
std::false_type | |||
) |
ReverseIterator<typename GetIteratorType<typename std::remove_reference<I>::type>::type> maxon::RBegin | ( | I && | iterable | ) |
ReverseIterator<typename GetIteratorType<typename std::remove_reference<I>::type>::type> maxon::REnd | ( | I && | iterable | ) |
MAXON_ATTRIBUTE_FORCE_INLINE auto maxon::begin | ( | COLLECTION && | c | ) | -> decltype(c.Begin()) |
MAXON_ATTRIBUTE_FORCE_INLINE auto maxon::end | ( | COLLECTION && | c | ) | -> decltype(c.End()) |
enum maxon::HASHMAP_ENTRY_LAYOUT maxon::MAXON_ENUM_LIST | ( | HASHMAP_ENTRY_LAYOUT | ) |
enum maxon::HASHMAP_MODE maxon::MAXON_ENUM_LIST | ( | HASHMAP_MODE | ) |
Int GetRangeItemCount | ( | const RANGETYPE & | data | ) |
Calculate the total item count in a range set. RangeSet::GetCount returns the number of "ranges".
[in] | data | The RangeSet |
enum maxon::BASESORTFLAGS maxon::MAXON_ENUM_FLAGS | ( | BASESORTFLAGS | ) |
SFINAEHelper<String, T>::type maxon::ToString | ( | const TaggedBaseRef< T, HANDLER, TAG, TAG_BITS, DEFAULT_VALUE, ENABLE_POINTER_CONVERSION > & | object, |
const FormatStatement * | formatStatement, | ||
Bool | checkDataType = true |
||
) |
maxon::MAXON_ASSERT_STANDARD_LAYOUT | ( | WeakRefBase | ) |
maxon::MAXON_ASSERT_STANDARD_LAYOUT | ( | WeakRefTargetBase | ) |
enum maxon::MEMORY_OBSERVER_FLAGS Int maxon::MAXON_ENUM_FLAGS | ( | MEMORY_OBSERVER_FLAGS | ) |
enum maxon::MEMORY_OBSERVER_STATE Int maxon::MAXON_ENUM_FLAGS | ( | MEMORY_OBSERVER_STATE | ) |
|
private |
|
static |
|
staticconstexpr |
Default value for the BLOCK_SIZE_EXPONENT template parameter of BlockArray. The value is 10 which means a default block size of 1024 elements.