Navigation
API > API/Runtime > API/Runtime/Core
These base types are necessary for trivial destruction on compilers that don't yet support use of constraints to select an explicitly defaulted trivial destructor. Once such compilers are no longer supported, all (!PLATFORM_COMPILER_SUPPORTS_CONSTRAINED_DESTRUCTORS) code in this file can be deleted.
| Name | TOptionalBase |
| Type | struct |
| Header File | /Engine/Source/Runtime/Core/Public/Misc/Optional.h |
| Include Path | #include "Misc/Optional.h" |
Syntax
template<typename OptionalType, bool bIsTriviallyDestructible>
struct TOptionalBase
Derived Classes
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
constexpr TOptionalBase () |
Misc/Optional.h | ||
constexpr TOptionalBase
(
EInPlace, |
Misc/Optional.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
constexpr ~TOptionalBase() |
Explicitly constexpr destructor for trivially destructible OptionalType. | Misc/Optional.h |
Struct Specializations
| Name | Remarks |
|---|---|
| TOptionalBase< OptionalType, false > |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| bUsingIntrusiveUnsetState | bool | Set flag takes up no space if bIsUsingIntrusiveUnsetState. | Misc/Optional.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bIsSet | std::conditional_t< bUsingIntrusiveUnsetState, FEmpty, bool > | Misc/Optional.h | ||
| TOptionalBase | union UE::Core::Private::TOptionalBase | Misc/Optional.h | ||
| TypedValue | OptionalType | Misc/Optional.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void DestroyValue() |
Misc/Optional.h | ||
bool IsSet() |
Misc/Optional.h |