Ark Server API (ASA) - Wiki
Loading...
Searching...
No Matches
TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs > Class Template Reference

#include <Map.h>

Inherited by TSortableMapBase< FString, FConfigSection, SetAllocator, KeyFuncs >, TSortableMapBase< int32, FString, SetAllocator, KeyFuncs >, TSortableMapBase< FString, TSharedPtr< TTypeContainer::IInstanceProvider >, SetAllocator, KeyFuncs >, TSortableMapBase< InKeyType, InValueType, SetAllocator, KeyFuncs >, TSortableMapBase< FString, TSharedRef< FAutomationSpecBase::FSpec >, SetAllocator, KeyFuncs >, TSortableMapBase< FString, FAutomationTestBase *, SetAllocator, KeyFuncs >, TSortableMapBase< FString, const FColor *, SetAllocator, KeyFuncs >, TSortableMapBase< FName, struct ICompressionFormat *, SetAllocator, KeyFuncs >, TSortableMapBase< FString, FConfigFile *, SetAllocator, KeyFuncs >, TSortableMapBase< FString, FConfigContext::FPerPlatformDirs, SetAllocator, KeyFuncs >, TSortableMapBase< FString, TMap< FName, FString >, SetAllocator, KeyFuncs >, TSortableMapBase< FName, FString, SetAllocator, KeyFuncs >, TSortableMapBase< FString, IConsoleObject *, SetAllocator, KeyFuncs >, TSortableMapBase< FString, TArray< FString >, SetAllocator, KeyFuncs >, TSortableMapBase< FString, TArray< uint8 >, SetAllocator, KeyFuncs >, TSortableMapBase< FString, FString, SetAllocator, KeyFuncs >, TSortableMapBase< FName, FEmbeddedCommunicationParamsDelegate, SetAllocator, KeyFuncs >, TSortableMapBase< FString, void *, SetAllocator, KeyFuncs >, TSortableMapBase< FGuid, FGuid, SetAllocator, KeyFuncs >, TSortableMapBase< FGuid, FOpParameters, SetAllocator, KeyFuncs >, TSortableMapBase< FString, SIZE_T, SetAllocator, KeyFuncs >, TSortableMapBase< FGuid, FNamedAESKey, SetAllocator, KeyFuncs >, TSortableMapBase< FString, FDateTime, SetAllocator, KeyFuncs >, TSortableMapBase< FString, int32, SetAllocator, KeyFuncs >, TSortableMapBase< FMallocCallstackHandler::FCallStackMapKey, int32, SetAllocator, KeyFuncs >, TSortableMapBase< const void *const, FMallocDoubleFreeFinder::TrackedAllocationData, SetAllocator, KeyFuncs >, TSortableMapBase< void *, int32, SetAllocator, KeyFuncs >, TSortableMapBase< FString, FManagedStorageFileLockRegistry::FLockData, SetAllocator, KeyFuncs >, TSortableMapBase< FName, TArray< FName >, SetAllocator, KeyFuncs >, TSortableMapBase< FIoChunkId, FIoHash, SetAllocator, KeyFuncs >, TSortableMapBase< FString, TArray< FName >, SetAllocator, KeyFuncs >, TSortableMapBase< FString, int64, SetAllocator, KeyFuncs >, TSortableMapBase< FString, TSharedPtr< FPreloadableFile >, SetAllocator, KeyFuncs >, TSortableMapBase< IQueuedWork *, FQueuedThreadPoolWrapper::FScheduledWork *, SetAllocator, KeyFuncs >, TSortableMapBase< FString, FRemoteConfigAsyncIOInfo, SetAllocator, KeyFuncs >, TSortableMapBase< FString, FAsyncTask< FRemoteConfigAsyncWorker > *, SetAllocator, KeyFuncs >, TSortableMapBase< FString, uint8 *, SetAllocator, KeyFuncs >, TSortableMapBase< FString, FTokenFunctionHandler, SetAllocator, KeyFuncs >, TSortableMapBase< FOperatorFunctionID, FUnaryFunction, SetAllocator, KeyFuncs >, TSortableMapBase< FOperatorFunctionID, FBinaryFunction, SetAllocator, KeyFuncs >, TSortableMapBase< FOperatorFunctionID, FShortCircuit, SetAllocator, KeyFuncs >, TSortableMapBase< FTextId, FDisplayStringEntry, SetAllocator, KeyFuncs >, TSortableMapBase< FTextId, uint16, SetAllocator, KeyFuncs >, TSortableMapBase< uint32, FThreadHeartBeat::FHeartBeatInfo, SetAllocator, KeyFuncs >, TSortableMapBase< FName, FThreadHeartBeat::FHeartBeatInfo, SetAllocator, KeyFuncs >, TSortableMapBase< uint32, FRunnableThread *, TInlineSetAllocator< 256 >, KeyFuncs >, TSortableMapBase< FName, TArray< FString >, SetAllocator, KeyFuncs >, TSortableMapBase< int32, TGenericGrowableAllocator::AllocationInfo, SetAllocator, KeyFuncs >, TSortableMapBase< uint64, uint32, SetAllocator, KeyFuncs >, TSortableMapBase< const FString, const TArray< FString >, SetAllocator, KeyFuncs >, and TSortableMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >.

+ Collaboration diagram for TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >:

Classes

class  TBaseIterator
 
class  TBaseKeyIterator
 
class  TConstIterator
 
class  TConstKeyIterator
 
class  TIterator
 
class  TKeyIterator
 

Public Types

typedef TTypeTraits< KeyType >::ConstPointerType KeyConstPointerType
 
typedef TTypeTraits< KeyType >::ConstInitType KeyInitType
 
typedef TTypeTraits< ValueType >::ConstInitType ValueInitType
 
typedef TPair< KeyType, ValueType > ElementType
 
using TRangedForIterator = TBaseIterator<false, true>
 
using TRangedForConstIterator = TBaseIterator<true, true>
 

Public Member Functions

bool OrderIndependentCompareEqual (const TMapBase &Other) const
 
FORCEINLINE void Empty (int32 ExpectedNumElements=0)
 
FORCEINLINE void Reset ()
 
FORCEINLINE void Shrink ()
 
FORCEINLINE void Compact ()
 
FORCEINLINE void CompactStable ()
 
FORCEINLINE void Reserve (int32 Number)
 
bool IsEmpty () const
 
FORCEINLINE int32 Num () const
 
template<typename Allocator >
int32 GetKeys (TArray< KeyType, Allocator > &OutKeys) const
 
template<typename Allocator >
int32 GetKeys (TSet< KeyType, Allocator > &OutKeys) const
 
FORCEINLINE SIZE_T GetAllocatedSize () const
 
FORCEINLINE void CountBytes (FArchive &Ar) const
 
FORCEINLINE ValueType & Add (const KeyType &InKey, const ValueType &InValue)
 
FORCEINLINE ValueType & Add (const KeyType &InKey, ValueType &&InValue)
 
FORCEINLINE ValueType & Add (KeyType &&InKey, const ValueType &InValue)
 
FORCEINLINE ValueType & Add (KeyType &&InKey, ValueType &&InValue)
 
FORCEINLINE ValueType & AddByHash (uint32 KeyHash, const KeyType &InKey, const ValueType &InValue)
 
FORCEINLINE ValueType & AddByHash (uint32 KeyHash, const KeyType &InKey, ValueType &&InValue)
 
FORCEINLINE ValueType & AddByHash (uint32 KeyHash, KeyType &&InKey, const ValueType &InValue)
 
FORCEINLINE ValueType & AddByHash (uint32 KeyHash, KeyType &&InKey, ValueType &&InValue)
 
FORCEINLINE ValueType & Add (const KeyType &InKey)
 
FORCEINLINE ValueType & Add (KeyType &&InKey)
 
FORCEINLINE ValueType & AddByHash (uint32 KeyHash, const KeyType &InKey)
 
FORCEINLINE ValueType & AddByHash (uint32 KeyHash, KeyType &&InKey)
 
FORCEINLINE ValueType & Add (const TTuple< KeyType, ValueType > &InKeyValue)
 
FORCEINLINE ValueType & Add (TTuple< KeyType, ValueType > &&InKeyValue)
 
template<typename InitKeyType = KeyType, typename InitValueType = ValueType>
ValueType & Emplace (InitKeyType &&InKey, InitValueType &&InValue)
 
template<typename InitKeyType = KeyType, typename InitValueType = ValueType>
ValueType & EmplaceByHash (uint32 KeyHash, InitKeyType &&InKey, InitValueType &&InValue)
 
template<typename InitKeyType = KeyType>
ValueType & Emplace (InitKeyType &&InKey)
 
template<typename InitKeyType = KeyType>
ValueType & EmplaceByHash (uint32 KeyHash, InitKeyType &&InKey)
 
FORCEINLINE int32 Remove (KeyConstPointerType InKey)
 
template<typename ComparableKey >
FORCEINLINE int32 RemoveByHash (uint32 KeyHash, const ComparableKey &Key)
 
const KeyType * FindKey (ValueInitType Value) const
 
template<typename Predicate >
TMap< KeyType, ValueType > FilterByPredicate (Predicate Pred) const
 
FORCEINLINE ValueType * Find (KeyConstPointerType Key)
 
FORCEINLINE const ValueType * Find (KeyConstPointerType Key) const
 
template<typename ComparableKey >
FORCEINLINE ValueType * FindByHash (uint32 KeyHash, const ComparableKey &Key)
 
template<typename ComparableKey >
FORCEINLINE const ValueType * FindByHash (uint32 KeyHash, const ComparableKey &Key) const
 
FORCEINLINE ValueType & FindOrAdd (const KeyType &Key)
 
FORCEINLINE ValueType & FindOrAdd (KeyType &&Key)
 
FORCEINLINE ValueType & FindOrAddByHash (uint32 KeyHash, const KeyType &Key)
 
FORCEINLINE ValueType & FindOrAddByHash (uint32 KeyHash, KeyType &&Key)
 
FORCEINLINE ValueType & FindOrAdd (const KeyType &Key, const ValueType &Value)
 
FORCEINLINE ValueType & FindOrAdd (const KeyType &Key, ValueType &&Value)
 
FORCEINLINE ValueType & FindOrAdd (KeyType &&Key, const ValueType &Value)
 
FORCEINLINE ValueType & FindOrAdd (KeyType &&Key, ValueType &&Value)
 
FORCEINLINE ValueType & FindOrAddByHash (uint32 KeyHash, const KeyType &Key, const ValueType &Value)
 
FORCEINLINE ValueType & FindOrAddByHash (uint32 KeyHash, const KeyType &Key, ValueType &&Value)
 
FORCEINLINE ValueType & FindOrAddByHash (uint32 KeyHash, KeyType &&Key, const ValueType &Value)
 
FORCEINLINE ValueType & FindOrAddByHash (uint32 KeyHash, KeyType &&Key, ValueType &&Value)
 
FORCEINLINE const ValueType & FindChecked (KeyConstPointerType Key) const
 
FORCEINLINE ValueType & FindChecked (KeyConstPointerType Key)
 
FORCEINLINE ValueType FindRef (KeyConstPointerType Key) const
 
FORCEINLINE bool Contains (KeyConstPointerType Key) const
 
template<typename ComparableKey >
FORCEINLINE bool ContainsByHash (uint32 KeyHash, const ComparableKey &Key) const
 
TArray< ElementTypeArray () const
 
template<typename Allocator >
void GenerateKeyArray (TArray< KeyType, Allocator > &OutArray) const
 
template<typename Allocator >
void GenerateValueArray (TArray< ValueType, Allocator > &OutArray) const
 
void Dump (FOutputDevice &Ar)
 
void WriteMemoryImage (FMemoryImageWriter &Writer) const
 
void CopyUnfrozen (const FMemoryUnfreezeContent &Context, void *Dst) const
 
FORCEINLINE TIterator CreateIterator ()
 
FORCEINLINE TConstIterator CreateConstIterator () const
 
FORCEINLINE TKeyIterator CreateKeyIterator (typename TKeyIterator::KeyArgumentType InKey)
 
FORCEINLINE TConstKeyIterator CreateConstKeyIterator (typename TConstKeyIterator::KeyArgumentType InKey) const
 
FORCEINLINE TRangedForIterator begin ()
 
FORCEINLINE TRangedForConstIterator begin () const
 
FORCEINLINE TRangedForIterator end ()
 
FORCEINLINE TRangedForConstIterator end () const
 

Static Public Member Functions

static void AppendHash (const FPlatformTypeLayoutParameters &LayoutParams, FSHA1 &Hasher)
 

Protected Types

typedef TSet< ElementType, KeyFuncs, SetAllocatorElementSetType
 

Protected Member Functions

 TMapBase ()=default
 
 TMapBase (TMapBase &&)=default
 
 TMapBase (const TMapBase &)=default
 
TMapBaseoperator= (TMapBase &&)=default
 
TMapBaseoperator= (const TMapBase &)=default
 
template<typename OtherSetAllocator >
 TMapBase (TMapBase< KeyType, ValueType, OtherSetAllocator, KeyFuncs > &&Other)
 
template<typename OtherSetAllocator >
 TMapBase (const TMapBase< KeyType, ValueType, OtherSetAllocator, KeyFuncs > &Other)
 
template<typename OtherSetAllocator >
TMapBaseoperator= (TMapBase< KeyType, ValueType, OtherSetAllocator, KeyFuncs > &&Other)
 
template<typename OtherSetAllocator >
TMapBaseoperator= (const TMapBase< KeyType, ValueType, OtherSetAllocator, KeyFuncs > &Other)
 

Protected Attributes

ElementSetType Pairs
 

Private Member Functions

template<typename InitKeyType >
ValueType & FindOrAddImpl (uint32 KeyHash, InitKeyType &&Key)
 
template<typename InitKeyType , typename InitValueType >
ValueType & FindOrAddImpl (uint32 KeyHash, InitKeyType &&Key, InitValueType &&Value)
 

Static Private Member Functions

static FORCEINLINE uint32 HashKey (const KeyType &Key)
 

Friends

template<typename OtherKeyType , typename OtherValueType , typename OtherSetAllocator , typename OtherKeyFuncs >
class TMapBase
 
struct TMapPrivateFriend
 

Detailed Description

template<typename KeyType, typename ValueType, typename SetAllocator, typename KeyFuncs>
class TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >

The base class of maps from keys to values. Implemented using a TSet of key-value pairs with a custom KeyFuncs, with the same O(1) addition, removal, and finding.

The ByHash() functions are somewhat dangerous but particularly useful in two scenarios: – Heterogeneous lookup to avoid creating expensive keys like FString when looking up by const TCHAR*. You must ensure the hash is calculated in the same way as ElementType is hashed. If possible put both ComparableKey and ElementType hash functions next to each other in the same header to avoid bugs when the ElementType hash function is changed. – Reducing contention around hash tables protected by a lock. It is often important to incur the cache misses of reading key data and doing the hashing before acquiring the lock.

Definition at line 133 of file Map.h.

Member Typedef Documentation

◆ ElementSetType

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
typedef TSet<ElementType, KeyFuncs, SetAllocator> TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::ElementSetType
protected

Definition at line 726 of file Map.h.

◆ ElementType

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
typedef TPair<KeyType, ValueType> TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::ElementType

Definition at line 142 of file Map.h.

◆ KeyConstPointerType

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
typedef TTypeTraits<KeyType>::ConstPointerType TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::KeyConstPointerType

Definition at line 139 of file Map.h.

◆ KeyInitType

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
typedef TTypeTraits<KeyType>::ConstInitType TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::KeyInitType

Definition at line 140 of file Map.h.

◆ TRangedForConstIterator

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
using TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::TRangedForConstIterator = TBaseIterator<true, true>

Definition at line 886 of file Map.h.

◆ TRangedForIterator

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
using TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::TRangedForIterator = TBaseIterator<false, true>

Definition at line 885 of file Map.h.

◆ ValueInitType

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
typedef TTypeTraits<ValueType>::ConstInitType TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::ValueInitType

Definition at line 141 of file Map.h.

Constructor & Destructor Documentation

◆ TMapBase() [1/5]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::TMapBase ( )
protecteddefault

◆ TMapBase() [2/5]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::TMapBase ( TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs > && )
protecteddefault

◆ TMapBase() [3/5]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::TMapBase ( const TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs > & )
protecteddefault

◆ TMapBase() [4/5]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::TMapBase ( TMapBase< KeyType, ValueType, OtherSetAllocator, KeyFuncs > && Other)
inlineprotected

Constructor for moving elements from a TMap with a different SetAllocator

Definition at line 153 of file Map.h.

◆ TMapBase() [5/5]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::TMapBase ( const TMapBase< KeyType, ValueType, OtherSetAllocator, KeyFuncs > & Other)
inlineprotected

Constructor for copying elements from a TMap with a different SetAllocator

Definition at line 159 of file Map.h.

Member Function Documentation

◆ Add() [1/8]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Add ( const KeyType & InKey)
inline

Set a default value associated with a key.

Parameters
InKeyThe key to associate the value with.
Returns
A reference to the value as stored in the map. The reference is only valid until the next change to any key in the map.

Definition at line 379 of file Map.h.

◆ Add() [2/8]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Add ( const KeyType & InKey,
const ValueType & InValue )
inline

Set the value associated with a key.

Parameters
InKeyThe key to associate the value with.
InValueThe value to associate with the key.
Returns
A reference to the value as stored in the map. The reference is only valid until the next change to any key in the map.

Definition at line 362 of file Map.h.

◆ Add() [3/8]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Add ( const KeyType & InKey,
ValueType && InValue )
inline

Definition at line 363 of file Map.h.

◆ Add() [4/8]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Add ( const TTuple< KeyType, ValueType > & InKeyValue)
inline

Set the value associated with a key.

Parameters
InKeyValueA Tuple containing the Key and Value to associate together
Returns
A reference to the value as stored in the map. The reference is only valid until the next change to any key in the map.

Definition at line 392 of file Map.h.

◆ Add() [5/8]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Add ( KeyType && InKey)
inline

Definition at line 380 of file Map.h.

◆ Add() [6/8]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Add ( KeyType && InKey,
const ValueType & InValue )
inline

Definition at line 364 of file Map.h.

◆ Add() [7/8]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Add ( KeyType && InKey,
ValueType && InValue )
inline

Definition at line 365 of file Map.h.

◆ Add() [8/8]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Add ( TTuple< KeyType, ValueType > && InKeyValue)
inline

Definition at line 393 of file Map.h.

◆ AddByHash() [1/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::AddByHash ( uint32 KeyHash,
const KeyType & InKey )
inline

See Add() and class documentation section on ByHash() functions

Definition at line 383 of file Map.h.

◆ AddByHash() [2/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::AddByHash ( uint32 KeyHash,
const KeyType & InKey,
const ValueType & InValue )
inline

See Add() and class documentation section on ByHash() functions

Definition at line 368 of file Map.h.

◆ AddByHash() [3/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::AddByHash ( uint32 KeyHash,
const KeyType & InKey,
ValueType && InValue )
inline

Definition at line 369 of file Map.h.

◆ AddByHash() [4/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::AddByHash ( uint32 KeyHash,
KeyType && InKey )
inline

Definition at line 384 of file Map.h.

◆ AddByHash() [5/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::AddByHash ( uint32 KeyHash,
KeyType && InKey,
const ValueType & InValue )
inline

Definition at line 370 of file Map.h.

◆ AddByHash() [6/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::AddByHash ( uint32 KeyHash,
KeyType && InKey,
ValueType && InValue )
inline

Definition at line 371 of file Map.h.

◆ AppendHash()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
static void TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::AppendHash ( const FPlatformTypeLayoutParameters & LayoutParams,
FSHA1 & Hasher )
inlinestatic

Definition at line 834 of file Map.h.

◆ Array()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
TArray< ElementType > TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Array ( ) const
inline

Copy the key/value pairs in this map into an array.

Definition at line 682 of file Map.h.

◆ begin() [1/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE TRangedForIterator TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::begin ( )
inline

DO NOT USE DIRECTLY STL-like iterators to enable range-based for loop support.

Definition at line 957 of file Map.h.

◆ begin() [2/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE TRangedForConstIterator TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::begin ( ) const
inline

Definition at line 958 of file Map.h.

◆ Compact()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE void TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Compact ( )
inline

Compacts the pair set to remove holes

Definition at line 241 of file Map.h.

◆ CompactStable()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE void TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::CompactStable ( )
inline

Compacts the pair set to remove holes. Does not change the iteration order of the elements.

Definition at line 247 of file Map.h.

◆ Contains()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE bool TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Contains ( KeyConstPointerType Key) const
inline

Check if map contains the specified key.

Parameters
KeyThe key to check for.
Returns
true if the map contains the key.

Definition at line 669 of file Map.h.

◆ ContainsByHash()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
template<typename ComparableKey >
FORCEINLINE bool TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::ContainsByHash ( uint32 KeyHash,
const ComparableKey & Key ) const
inline

See Contains() and class documentation section on ByHash() functions

Definition at line 676 of file Map.h.

◆ CopyUnfrozen()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
void TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::CopyUnfrozen ( const FMemoryUnfreezeContent & Context,
void * Dst ) const
inline

Definition at line 829 of file Map.h.

◆ CountBytes()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE void TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::CountBytes ( FArchive & Ar) const
inline

Track the container's memory use through an archive.

Parameters
ArThe archive to use.
See also
GetAllocatedSize

Definition at line 350 of file Map.h.

◆ CreateConstIterator()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE TConstIterator TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::CreateConstIterator ( ) const
inline

Creates a const iterator over all the pairs in this map

Definition at line 933 of file Map.h.

◆ CreateConstKeyIterator()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE TConstKeyIterator TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::CreateConstKeyIterator ( typename TConstKeyIterator::KeyArgumentType InKey) const
inline

Creates a const iterator over the values associated with a specified key in a map

Definition at line 945 of file Map.h.

◆ CreateIterator()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE TIterator TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::CreateIterator ( )
inline

Creates an iterator over all the pairs in this map

Definition at line 927 of file Map.h.

◆ CreateKeyIterator()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE TKeyIterator TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::CreateKeyIterator ( typename TKeyIterator::KeyArgumentType InKey)
inline

Creates an iterator over the values associated with a specified key in a map

Definition at line 939 of file Map.h.

◆ Dump()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
void TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Dump ( FOutputDevice & Ar)
inline

Describes the map's contents through an output device.

Parameters
ArThe output device to describe the map's contents through.

Definition at line 720 of file Map.h.

◆ Emplace() [1/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
template<typename InitKeyType = KeyType>
ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Emplace ( InitKeyType && InKey)
inline

Set a default value associated with a key.

Parameters
InKeyThe key to associate the value with.
Returns
A reference to the value as stored in the map. The reference is only valid until the next change to any key in the map.

Definition at line 425 of file Map.h.

◆ Emplace() [2/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
template<typename InitKeyType = KeyType, typename InitValueType = ValueType>
ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Emplace ( InitKeyType && InKey,
InitValueType && InValue )
inline

Sets the value associated with a key.

Parameters
InKeyThe key to associate the value with.
InValueThe value to associate with the key.
Returns
A reference to the value as stored in the map. The reference is only valid until the next change to any key in the map.

Definition at line 402 of file Map.h.

◆ EmplaceByHash() [1/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
template<typename InitKeyType = KeyType>
ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::EmplaceByHash ( uint32 KeyHash,
InitKeyType && InKey )
inline

See Emplace() and class documentation section on ByHash() functions

Definition at line 434 of file Map.h.

◆ EmplaceByHash() [2/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
template<typename InitKeyType = KeyType, typename InitValueType = ValueType>
ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::EmplaceByHash ( uint32 KeyHash,
InitKeyType && InKey,
InitValueType && InValue )
inline

See Emplace() and class documentation section on ByHash() functions

Definition at line 411 of file Map.h.

◆ Empty()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE void TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Empty ( int32 ExpectedNumElements = 0)
inline

Removes all elements from the map.

This method potentially leaves space allocated for an expected number of elements about to be added.

Parameters
ExpectedNumElementsThe number of elements about to be added to the set.

Definition at line 223 of file Map.h.

◆ end() [1/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE TRangedForIterator TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::end ( )
inline

Definition at line 959 of file Map.h.

◆ end() [2/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE TRangedForConstIterator TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::end ( ) const
inline

Definition at line 960 of file Map.h.

◆ FilterByPredicate()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
template<typename Predicate >
TMap< KeyType, ValueType > TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FilterByPredicate ( Predicate Pred) const
inline

Filters the elements in the map based on a predicate functor.

Parameters
PredThe functor to apply to each element.
Returns
TMap with the same type as this object which contains the subset of elements for which the functor returns true.

Definition at line 491 of file Map.h.

◆ Find() [1/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType * TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Find ( KeyConstPointerType Key)
inline

Find the value associated with a specified key.

Parameters
KeyThe key to search for.
Returns
A pointer to the value associated with the specified key, or nullptr if the key isn't contained in this map. The pointer is only valid until the next change to any key in the map.

Definition at line 512 of file Map.h.

◆ Find() [2/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE const ValueType * TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Find ( KeyConstPointerType Key) const
inline

Definition at line 521 of file Map.h.

◆ FindByHash() [1/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
template<typename ComparableKey >
FORCEINLINE ValueType * TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindByHash ( uint32 KeyHash,
const ComparableKey & Key )
inline

See Find() and class documentation section on ByHash() functions

Definition at line 528 of file Map.h.

◆ FindByHash() [2/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
template<typename ComparableKey >
FORCEINLINE const ValueType * TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindByHash ( uint32 KeyHash,
const ComparableKey & Key ) const
inline

Definition at line 538 of file Map.h.

◆ FindChecked() [1/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindChecked ( KeyConstPointerType Key)
inline

Find a reference to the value associated with a specified key.

Parameters
KeyThe key to search for.
Returns
The value associated with the specified key, or triggers an assertion if the key does not exist.

Definition at line 640 of file Map.h.

◆ FindChecked() [2/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE const ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindChecked ( KeyConstPointerType Key) const
inline

Find a reference to the value associated with a specified key.

Parameters
KeyThe key to search for.
Returns
The value associated with the specified key, or triggers an assertion if the key does not exist.

Definition at line 627 of file Map.h.

◆ FindKey()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
const KeyType * TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindKey ( ValueInitType Value) const
inline

Find the key associated with the specified value.

The time taken is O(N) in the number of pairs.

Parameters
ValueThe value to search for
Returns
A pointer to the key associated with the specified value, or nullptr if the value isn't contained in this map. The pointer is only valid until the next change to any key in the map.

Definition at line 471 of file Map.h.

◆ FindOrAdd() [1/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindOrAdd ( const KeyType & Key)
inline

Find the value associated with a specified key, or if none exists, adds a value using the default constructor.

Parameters
KeyThe key to search for.
Returns
A reference to the value associated with the specified key.

Definition at line 595 of file Map.h.

◆ FindOrAdd() [2/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindOrAdd ( const KeyType & Key,
const ValueType & Value )
inline

Find the value associated with a specified key, or if none exists, adds a value using the default constructor.

Parameters
KeyThe key to search for.
ValueThe value to associate with the key.
Returns
A reference to the value associated with the specified key.

Definition at line 610 of file Map.h.

◆ FindOrAdd() [3/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindOrAdd ( const KeyType & Key,
ValueType && Value )
inline

Definition at line 611 of file Map.h.

◆ FindOrAdd() [4/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindOrAdd ( KeyType && Key)
inline

Definition at line 596 of file Map.h.

◆ FindOrAdd() [5/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindOrAdd ( KeyType && Key,
const ValueType & Value )
inline

Definition at line 612 of file Map.h.

◆ FindOrAdd() [6/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindOrAdd ( KeyType && Key,
ValueType && Value )
inline

Definition at line 613 of file Map.h.

◆ FindOrAddByHash() [1/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindOrAddByHash ( uint32 KeyHash,
const KeyType & Key )
inline

See FindOrAdd() and class documentation section on ByHash() functions

Definition at line 599 of file Map.h.

◆ FindOrAddByHash() [2/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindOrAddByHash ( uint32 KeyHash,
const KeyType & Key,
const ValueType & Value )
inline

See FindOrAdd() and class documentation section on ByHash() functions

Definition at line 616 of file Map.h.

◆ FindOrAddByHash() [3/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindOrAddByHash ( uint32 KeyHash,
const KeyType & Key,
ValueType && Value )
inline

Definition at line 617 of file Map.h.

◆ FindOrAddByHash() [4/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindOrAddByHash ( uint32 KeyHash,
KeyType && Key )
inline

Definition at line 600 of file Map.h.

◆ FindOrAddByHash() [5/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindOrAddByHash ( uint32 KeyHash,
KeyType && Key,
const ValueType & Value )
inline

Definition at line 618 of file Map.h.

◆ FindOrAddByHash() [6/6]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindOrAddByHash ( uint32 KeyHash,
KeyType && Key,
ValueType && Value )
inline

Definition at line 619 of file Map.h.

◆ FindOrAddImpl() [1/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
template<typename InitKeyType >
ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindOrAddImpl ( uint32 KeyHash,
InitKeyType && Key )
inlineprivate

Find the value associated with a specified key, or if none exists, adds a value using the default constructor.

Parameters
KeyThe key to search for.
Returns
A reference to the value associated with the specified key.

Definition at line 557 of file Map.h.

◆ FindOrAddImpl() [2/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
ValueType & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindOrAddImpl ( uint32 KeyHash,
InitKeyType && Key,
InitValueType && Value )
inlineprivate

Find the value associated with a specified key, or if none exists, adds the value

Parameters
KeyThe key to search for.
ValueThe value to associate with the key.
Returns
A reference to the value associated with the specified key.

Definition at line 576 of file Map.h.

◆ FindRef()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE ValueType TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::FindRef ( KeyConstPointerType Key) const
inline

Find the value associated with a specified key.

Parameters
KeyThe key to search for.
Returns
The value associated with the specified key, or the default value for the ValueType if the key isn't contained in this map.

Definition at line 653 of file Map.h.

◆ GenerateKeyArray()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
template<typename Allocator >
void TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::GenerateKeyArray ( TArray< KeyType, Allocator > & OutArray) const
inline

Generate an array from the keys in this map.

Parameters
OutArrayWill contain the collection of keys.

Definition at line 692 of file Map.h.

◆ GenerateValueArray()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
template<typename Allocator >
void TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::GenerateValueArray ( TArray< ValueType, Allocator > & OutArray) const
inline

Generate an array from the values in this map.

Parameters
OutArrayWill contain the collection of values.

Definition at line 706 of file Map.h.

◆ GetAllocatedSize()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE SIZE_T TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::GetAllocatedSize ( ) const
inline

Helper function to return the amount of memory allocated by this container . Only returns the size of allocations made directly by the container, not the elements themselves.

Returns
Number of bytes allocated by this container.
See also
CountBytes

Definition at line 339 of file Map.h.

◆ GetKeys() [1/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
template<typename Allocator >
int32 TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::GetKeys ( TArray< KeyType, Allocator > & OutKeys) const
inline

Get the unique keys contained within this map.

Parameters
OutKeysUpon return, contains the set of unique keys in this map.
Returns
The number of unique keys in the map.

Definition at line 281 of file Map.h.

◆ GetKeys() [2/2]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
template<typename Allocator >
int32 TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::GetKeys ( TSet< KeyType, Allocator > & OutKeys) const
inline

Get the unique keys contained within this map.

Parameters
OutKeysUpon return, contains the set of unique keys in this map.
Returns
The number of unique keys in the map.

Definition at line 314 of file Map.h.

◆ HashKey()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
static FORCEINLINE uint32 TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::HashKey ( const KeyType & Key)
inlinestaticprivate

Definition at line 544 of file Map.h.

◆ IsEmpty()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
bool TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::IsEmpty ( ) const
inline

Returns true if the map is empty and contains no elements.

Returns
True if the map is empty.
See also
Num

Definition at line 264 of file Map.h.

◆ Num()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE int32 TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Num ( ) const
inline
Returns
The number of elements in the map.

Definition at line 270 of file Map.h.

◆ operator=() [1/4]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
TMapBase & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::operator= ( const TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs > & )
protecteddefault

◆ operator=() [2/4]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
TMapBase & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::operator= ( const TMapBase< KeyType, ValueType, OtherSetAllocator, KeyFuncs > & Other)
inlineprotected

Assignment operator for copying elements from a TMap with a different SetAllocator

Definition at line 173 of file Map.h.

◆ operator=() [3/4]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
TMapBase & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::operator= ( TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs > && )
protecteddefault

◆ operator=() [4/4]

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
TMapBase & TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::operator= ( TMapBase< KeyType, ValueType, OtherSetAllocator, KeyFuncs > && Other)
inlineprotected

Assignment operator for moving elements from a TMap with a different SetAllocator

Definition at line 165 of file Map.h.

◆ OrderIndependentCompareEqual()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
bool TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::OrderIndependentCompareEqual ( const TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs > & Other) const
inline

Compare this map with another for equality. Does not make any assumptions about Key order. NOTE: this might be a candidate for operator== but it was decided to make it an explicit function since it can potentially be quite slow.

Parameters
OtherThe other map to compare against
Returns
True if both this and Other contain the same keys with values that compare ==

Definition at line 189 of file Map.h.

◆ Remove()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE int32 TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Remove ( KeyConstPointerType InKey)
inline

Remove all value associations for a key.

Parameters
InKeyThe key to remove associated values for.
Returns
The number of values that were associated with the key.

Definition at line 447 of file Map.h.

◆ RemoveByHash()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
template<typename ComparableKey >
FORCEINLINE int32 TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::RemoveByHash ( uint32 KeyHash,
const ComparableKey & Key )
inline

See Remove() and class documentation section on ByHash() functions

Definition at line 455 of file Map.h.

◆ Reserve()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE void TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Reserve ( int32 Number)
inline

Preallocates enough memory to contain Number elements

Definition at line 253 of file Map.h.

◆ Reset()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE void TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Reset ( )
inline

Efficiently empties out the map but preserves all allocations and capacities

Definition at line 229 of file Map.h.

◆ Shrink()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
FORCEINLINE void TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Shrink ( )
inline

Shrinks the pair set to avoid slack.

Definition at line 235 of file Map.h.

◆ WriteMemoryImage()

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
void TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::WriteMemoryImage ( FMemoryImageWriter & Writer) const
inline

Definition at line 824 of file Map.h.

Friends And Related Symbol Documentation

◆ TMapBase

◆ TMapPrivateFriend

Definition at line 950 of file Map.h.

Member Data Documentation

◆ Pairs

template<typename KeyType , typename ValueType , typename SetAllocator , typename KeyFuncs >
ElementSetType TMapBase< KeyType, ValueType, SetAllocator, KeyFuncs >::Pairs
protected

A set of the key-value pairs in the map.

Definition at line 821 of file Map.h.


The documentation for this class was generated from the following file: