Navigation
API > API/Runtime > API/Runtime/uLangCore
Database keeping track of symbols and their text equivalent.
| Name | CSymbolTable |
| Type | class |
| Header File | /Engine/Source/Runtime/Solaris/uLangCore/Public/uLang/Common/Text/Symbol.h |
| Include Path | #include "uLang/Common/Text/Symbol.h" |
Syntax
class CSymbolTable : public uLang::CSharedMix
Inheritance Hierarchy
- CSharedMix → CSymbolTable
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
CSymbolTable
(
const CSymbolTable& |
No copying allowed. | uLang/Common/Text/Symbol.h | |
CSymbolTable
(
uint32_t NumHashBuckets, |
uLang/Common/Text/Symbol.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
~CSymbolTable() |
uLang/Common/Text/Symbol.h |
Structs
| Name | Remarks |
|---|---|
| SEntry | Entry in the symbol table that stores the id and string The string is stored in the memory following this data structure |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| _EntryNull | const SEntry | Entry representing the null symbol (= empty string) | uLang/Common/Text/Symbol.h |
| MaxSymbolLength | uint32_t | The max length of a symbol. | uLang/Common/Text/Symbol.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| _Allocator | CArenaAllocator | For allocating entries. | uLang/Common/Text/Symbol.h | |
| _HashBuckets | TArray< SEntry * > | The heads of the lists of each string hash bucket. | uLang/Common/Text/Symbol.h | |
| _HighestUsedId | SymbolId | Highest id used so far in this table. | uLang/Common/Text/Symbol.h | |
| _IdChunkShift | uint32_t | 2^_IdLookupChunkShift pointers are stored per chunk | uLang/Common/Text/Symbol.h | |
| _IdLookupTable | TArray< SEntry ** > | Array of chunks for lookup by id. | uLang/Common/Text/Symbol.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
TOptional< CSymbol > Add
(
const CUTF8StringView& Text, |
Looks up a symbol by text, and if not present yet, adds it. Return empty optional if text is to long. | uLang/Common/Text/Symbol.h | |
CSymbol AddChecked
(
const CUTF8StringView& Text, |
Looks up a symbol by text, and if not present yet, adds it. Asserts if text is to long. | uLang/Common/Text/Symbol.h | |
TOptional< CSymbol > Find
(
const CUTF8StringView& Text, |
Looks up a symbol by text. | uLang/Common/Text/Symbol.h | |
| Gets a symbol by id - id must exist. | uLang/Common/Text/Symbol.h | ||
| Remaps a symbol from another symbol table to this symbol table I.e. | uLang/Common/Text/Symbol.h |
Operators
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void operator=
(
const CSymbolTable& |
uLang/Common/Text/Symbol.h | ||
void operator=
(
CSymbolTable&& |
uLang/Common/Text/Symbol.h |