Navigation
API > API/Runtime > API/Runtime/uLangCore > API/Runtime/uLangCore/uLang > API/Runtime/uLangCore/uLang/Common
Classes
| Type | Name | Description | |
|---|---|---|---|
| CArchive | Abstract archive base class, similar to UE FArchive Assumes same endian on all platforms | ||
| CCRC16 | Helper class for computing a 16 bit CRC We are using the CRC-16-CCITT polynomial (0x1021), but are using a bit reversed algorithm akin to CRC32 and CRC64 algorithms which saves one bit shift | ||
| CCRC32 | Helper class for computing a 32 bit CRC We are using the CRC-32 polynomial 0x04c11db7 as used by zip, PHP etc., but are using a bit reversed which saves one bit shift | ||
| CCRC64 | Helper class for computing a 64 bit CRC We are using the ECMA CRC-64 polynomial 0x42F0E1EBA9EA3693 | ||
| CFloatStateCheckOnly | Scope guard that asserts the current FP state has the IEEE-compliant settings we expect on entry, but never changes state. | ||
| CFloatStateDoNothing | Scope guard that doesn't actually do anything. | ||
| CFloatStateSaveRestore | Scope guard that saves current FP state (rounding mode, flush-to-zero etc.) and puts us into fully IEEE compliant mode for the duration of the scope. | ||
| CMath | |||
| CRandomStream | Implements a thread-safe random number stream. | ||
| FNull | |||
| TDisambiguater | Used to disambiguate methods that are overloaded for all possible subtypes of a TUnion where the subtypes may not be distinct. | ||
| TEvent | Generic event dispatcher. | ||
| TEventRegistrar | Registration portion of an TEvent<>. | ||
| TIsOptional | Traits class which tests if a type is optional. | ||
| TOptional | When we have an optional value IsSet() returns true, and GetValue() is meaningful. | ||
| TUnion | Represents a type which is the union of several other types; i.e. it can have a value whose type is of any the union's subtypes. |
Typedefs
| Name | Description |
|---|---|
| EventSubscriberId |
Functions
| Type | Name | Description | |
|---|---|---|---|
| bool | uLang::CheckedConvertI32I64
(
int64_t Rhs, |
||
| bool | uLang::CheckedI64Abs
(
int64_t Rhs, |
||
| bool | uLang::CheckedI64Add
(
int64_t Lhs, |
||
| bool | uLang::CheckedI64Divide
(
int64_t Lhs, |
||
| TOptional< int64_t > | uLang::CheckedI64DivideAndRoundDown
(
int64_t Left, |
||
| TOptional< int64_t > | uLang::CheckedI64DivideAndRoundUp
(
int64_t Left, |
||
| bool | uLang::CheckedI64Modulo
(
int64_t Lhs, |
||
| bool | uLang::CheckedI64Multiply
(
int64_t Lhs, |
||
| bool | uLang::CheckedI64Negate
(
int64_t Rhs, |
Todo: implement the rest of the types (int32_t, int16_t, ...), and then also provide platform specific optimized versions of this. | |
| bool | uLang::CheckedI64Subtract
(
int64_t Lhs, |
||
| bool | uLang::Enum_HasAllFlags
(
Enum Flags, |
||
| bool | uLang::Enum_HasAnyFlags
(
Enum Flags, |
||
| bool | uLang::IsFactor
(
int64_t Left, |
||
| bool | uLang::SameSign
(
int64_t Left, |
Variables
| Type | Name | Description | |
|---|---|---|---|
| float | Float32Max | ||
| float | Float32Min | ||
| double | Float64Max | ||
| double | Float64Min | ||
| int32_t | Int32Max | ||
| uint32_t | Int32MaxMagnitude | ||
| int32_t | Int32Min | ||
| int64_t | Int64Max | ||
| uint64_t | Int64MaxMagnitude | ||
| int64_t | Int64Min | ||
| uint32_t | UInt32Max | ||
| uint64_t | UInt64Max |