UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::Core::Private::TOptionalBase< OptionalType, bIsTriviallyDestructible > Struct Template Reference

#include <Optional.h>

+ Inheritance diagram for UE::Core::Private::TOptionalBase< OptionalType, bIsTriviallyDestructible >:

Public Member Functions

constexpr TOptionalBase ()
 
template<typename... ArgTypes>
constexpr TOptionalBase (EInPlace, ArgTypes &&... InArgs)
 
constexpr ~TOptionalBase ()=default
 
constexpr bool IsSet () const
 
UE_FORCEINLINE_HINT constexpr void DestroyValue ()
 

Public Attributes

union { 
 
   OptionalType   TypedValue 
 
};  
 
UE_NO_UNIQUE_ADDRESS std::conditional_t< bUsingIntrusiveUnsetState, FEmpty, boolbIsSet = {}
 

Static Public Attributes

static constexpr bool bUsingIntrusiveUnsetState = HasIntrusiveUnsetOptionalState<OptionalType>()
 

Constructor & Destructor Documentation

◆ TOptionalBase() [1/2]

template<typename OptionalType , bool bIsTriviallyDestructible = std::is_trivially_destructible_v<OptionalType>>
constexpr UE::Core::Private::TOptionalBase< OptionalType, bIsTriviallyDestructible >::TOptionalBase ( )
inlineconstexpr

◆ TOptionalBase() [2/2]

template<typename OptionalType , bool bIsTriviallyDestructible = std::is_trivially_destructible_v<OptionalType>>
template<typename... ArgTypes>
constexpr UE::Core::Private::TOptionalBase< OptionalType, bIsTriviallyDestructible >::TOptionalBase ( EInPlace  ,
ArgTypes &&...  InArgs 
)
inlineconstexpr

◆ ~TOptionalBase()

template<typename OptionalType , bool bIsTriviallyDestructible = std::is_trivially_destructible_v<OptionalType>>
constexpr UE::Core::Private::TOptionalBase< OptionalType, bIsTriviallyDestructible >::~TOptionalBase ( )
constexprdefault

Member Function Documentation

◆ DestroyValue()

template<typename OptionalType , bool bIsTriviallyDestructible = std::is_trivially_destructible_v<OptionalType>>
UE_FORCEINLINE_HINT constexpr void UE::Core::Private::TOptionalBase< OptionalType, bIsTriviallyDestructible >::DestroyValue ( )
inlineconstexpr

◆ IsSet()

template<typename OptionalType , bool bIsTriviallyDestructible = std::is_trivially_destructible_v<OptionalType>>
constexpr bool UE::Core::Private::TOptionalBase< OptionalType, bIsTriviallyDestructible >::IsSet ( ) const
inlineconstexpr

Member Data Documentation

◆ [union]

◆ bIsSet

template<typename OptionalType , bool bIsTriviallyDestructible = std::is_trivially_destructible_v<OptionalType>>
UE_NO_UNIQUE_ADDRESS std::conditional_t<bUsingIntrusiveUnsetState, FEmpty, bool> UE::Core::Private::TOptionalBase< OptionalType, bIsTriviallyDestructible >::bIsSet = {}

◆ bUsingIntrusiveUnsetState

template<typename OptionalType , bool bIsTriviallyDestructible = std::is_trivially_destructible_v<OptionalType>>
constexpr bool UE::Core::Private::TOptionalBase< OptionalType, bIsTriviallyDestructible >::bUsingIntrusiveUnsetState = HasIntrusiveUnsetOptionalState<OptionalType>()
staticconstexpr

◆ TypedValue

template<typename OptionalType , bool bIsTriviallyDestructible = std::is_trivially_destructible_v<OptionalType>>
OptionalType UE::Core::Private::TOptionalBase< OptionalType, bIsTriviallyDestructible >::TypedValue

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