Ark Server API (ASE) - Wiki
Loading...
Searching...
No Matches
FScriptMap Class Reference

#include <Map.h>

+ Collaboration diagram for FScriptMap:

Public Member Functions

 FScriptMap ()
 
bool IsValidIndex (int32 Index) const
 
int32 Num () const
 
int32 GetMaxIndex () const
 
void * GetData (int32 Index, const FScriptMapLayout &Layout)
 
const void * GetData (int32 Index, const FScriptMapLayout &Layout) const
 
void Empty (int32 Slack, const FScriptMapLayout &Layout)
 
void RemoveAt (int32 Index, const FScriptMapLayout &Layout)
 
int32 AddUninitialized (const FScriptMapLayout &Layout)
 
void Rehash (const FScriptMapLayout &Layout, TFunctionRef< uint32(const void *)> GetKeyHash)
 
int32 FindPairIndex (const void *Key, const FScriptMapLayout &MapLayout, TFunctionRef< uint32(const void *)> GetKeyHash, TFunctionRef< bool(const void *, const void *)> KeyEqualityFn)
 
uint8FindValue (const void *Key, const FScriptMapLayout &MapLayout, TFunctionRef< uint32(const void *)> GetKeyHash, TFunctionRef< bool(const void *, const void *)> KeyEqualityFn)
 
void Add (const void *Key, const void *Value, const FScriptMapLayout &Layout, TFunctionRef< uint32(const void *)> GetKeyHash, TFunctionRef< bool(const void *, const void *)> KeyEqualityFn, TFunctionRef< void(void *)> KeyConstructAndAssignFn, TFunctionRef< void(void *)> ValueConstructAndAssignFn, TFunctionRef< void(void *)> ValueAssignFn, TFunctionRef< void(void *)> DestructKeyFn, TFunctionRef< void(void *)> DestructValueFn)
 
 FScriptMap (const FScriptMap &)
 
void operator= (const FScriptMap &)
 

Static Public Member Functions

static FScriptMapLayout GetScriptLayout (int32 KeySize, int32 KeyAlignment, int32 ValueSize, int32 ValueAlignment)
 

Static Private Member Functions

static void CheckConstraints ()
 

Private Attributes

FScriptSet Pairs
 

Detailed Description

Definition at line 1269 of file Map.h.

Constructor & Destructor Documentation

◆ FScriptMap() [1/2]

FScriptMap::FScriptMap ( )
inline

Definition at line 1285 of file Map.h.

◆ FScriptMap() [2/2]

FScriptMap::FScriptMap ( const FScriptMap & )
inline

Definition at line 1429 of file Map.h.

Member Function Documentation

◆ Add()

void FScriptMap::Add ( const void * Key,
const void * Value,
const FScriptMapLayout & Layout,
TFunctionRef< uint32(const void *)> GetKeyHash,
TFunctionRef< bool(const void *, const void *)> KeyEqualityFn,
TFunctionRef< void(void *)> KeyConstructAndAssignFn,
TFunctionRef< void(void *)> ValueConstructAndAssignFn,
TFunctionRef< void(void *)> ValueAssignFn,
TFunctionRef< void(void *)> DestructKeyFn,
TFunctionRef< void(void *)> DestructValueFn )
inline

Adds the (key, value) pair to the map, returning true if the element was added, or false if the element was already present and has been overwritten

Definition at line 1376 of file Map.h.

+ Here is the call graph for this function:

◆ AddUninitialized()

int32 FScriptMap::AddUninitialized ( const FScriptMapLayout & Layout)
inline

Adds an uninitialized object to the map. The map will need rehashing at some point after this call to make it valid.

Returns
The index of the added element.

Definition at line 1330 of file Map.h.

+ Here is the call graph for this function:

◆ CheckConstraints()

static void FScriptMap::CheckConstraints ( )
inlinestaticprivate

Definition at line 1410 of file Map.h.

+ Here is the call graph for this function:

◆ Empty()

void FScriptMap::Empty ( int32 Slack,
const FScriptMapLayout & Layout )
inline

Definition at line 1314 of file Map.h.

+ Here is the call graph for this function:

◆ FindPairIndex()

int32 FScriptMap::FindPairIndex ( const void * Key,
const FScriptMapLayout & MapLayout,
TFunctionRef< uint32(const void *)> GetKeyHash,
TFunctionRef< bool(const void *, const void *)> KeyEqualityFn )
inline

Finds the associated key, value from hash of Key, rather than linearly searching

Definition at line 1341 of file Map.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ FindValue()

uint8 * FScriptMap::FindValue ( const void * Key,
const FScriptMapLayout & MapLayout,
TFunctionRef< uint32(const void *)> GetKeyHash,
TFunctionRef< bool(const void *, const void *)> KeyEqualityFn )
inline

Finds the associated value from hash of Key, rather than linearly searching

Definition at line 1363 of file Map.h.

+ Here is the call graph for this function:

◆ GetData() [1/2]

void * FScriptMap::GetData ( int32 Index,
const FScriptMapLayout & Layout )
inline

Definition at line 1304 of file Map.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetData() [2/2]

const void * FScriptMap::GetData ( int32 Index,
const FScriptMapLayout & Layout ) const
inline

Definition at line 1309 of file Map.h.

+ Here is the call graph for this function:

◆ GetMaxIndex()

int32 FScriptMap::GetMaxIndex ( ) const
inline

Definition at line 1299 of file Map.h.

+ Here is the call graph for this function:

◆ GetScriptLayout()

static FScriptMapLayout FScriptMap::GetScriptLayout ( int32 KeySize,
int32 KeyAlignment,
int32 ValueSize,
int32 ValueAlignment )
inlinestatic

Definition at line 1272 of file Map.h.

+ Here is the call graph for this function:

◆ IsValidIndex()

bool FScriptMap::IsValidIndex ( int32 Index) const
inline

Definition at line 1289 of file Map.h.

+ Here is the call graph for this function:

◆ Num()

int32 FScriptMap::Num ( ) const
inline

Definition at line 1294 of file Map.h.

+ Here is the call graph for this function:

◆ operator=()

void FScriptMap::operator= ( const FScriptMap & )
inline

Definition at line 1430 of file Map.h.

◆ Rehash()

void FScriptMap::Rehash ( const FScriptMapLayout & Layout,
TFunctionRef< uint32(const void *)> GetKeyHash )
inline

Definition at line 1335 of file Map.h.

+ Here is the call graph for this function:

◆ RemoveAt()

void FScriptMap::RemoveAt ( int32 Index,
const FScriptMapLayout & Layout )
inline

Definition at line 1319 of file Map.h.

+ Here is the call graph for this function:

Member Data Documentation

◆ Pairs

FScriptSet FScriptMap::Pairs
private

Definition at line 1407 of file Map.h.


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