6#include "Misc/Optional.h"
56template <
typename ValueType,
typename ErrorType>
59 static_assert(!std::is_reference_v<ValueType> && !std::is_reference_v<ErrorType>,
"ValueType and ErrorType cannot be references");
191template <
typename ValueType>
194 static_assert(!std::is_reference_v<ValueType>,
"ValueType cannot be a reference");
218 return !
Value.IsSet();
224 return Value.IsSet();
230 return Value.GetValue();
244 return Value.GetPtrOrNull();
263template <
typename ErrorType>
266 static_assert(!std::is_reference_v<ErrorType>,
"ErrorType cannot be a reference");
290 return !
Error.IsSet();
296 return Error.IsSet();
302 return Error.GetValue();
316 return Error.GetPtrOrNull();
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
@ InPlace
Definition CoreMiscDefines.h:162
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
return true
Definition ExternalRpcRegistry.cpp:601
typename UE4IntegerSequence_Private::TMakeIntegerSequenceImpl< T, N >::Type TMakeIntegerSequence
Definition IntegerSequence.h:31
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTempIfPossible(T &&Obj) noexcept
Definition UnrealTemplate.h:538
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
UE_REWRITE TValueOrError_ErrorProxy< ArgTypes... > MakeError(ArgTypes &&... Args UE_LIFETIMEBOUND)
Definition ValueOrError.h:41
UE_REWRITE TValueOrError_ValueProxy< ArgTypes... > MakeValue(ArgTypes &&... Args UE_LIFETIMEBOUND)
Definition ValueOrError.h:35
ValueType & GetValue() &UE_LIFETIMEBOUND
Definition ValueOrError.h:228
UE_REWRITE const ValueType * TryGetValue() const UE_LIFETIMEBOUND
Definition ValueOrError.h:246
UE_REWRITE bool HasError() const
Definition ValueOrError.h:216
TValueOrError(TValueOrError_ErrorProxy<> &&Proxy)
Definition ValueOrError.h:211
UE_REWRITE const ValueType & GetValue() const &UE_LIFETIMEBOUND
Definition ValueOrError.h:232
ValueType * TryGetValue() UE_LIFETIMEBOUND
Definition ValueOrError.h:242
ValueType StealValue()
Definition ValueOrError.h:252
UE_REWRITE ValueType && GetValue() &&UE_LIFETIMEBOUND
Definition ValueOrError.h:236
TValueOrError(TValueOrError_ValueProxy< ArgTypes... > &&Proxy)
Definition ValueOrError.h:205
UE_REWRITE bool HasValue() const
Definition ValueOrError.h:222
TValueOrError(TValueOrError_ErrorProxy< ArgTypes... > &&Proxy)
Definition ValueOrError.h:282
ErrorType & GetError() &UE_LIFETIMEBOUND
Definition ValueOrError.h:300
UE_REWRITE bool HasError() const
Definition ValueOrError.h:294
UE_REWRITE const ErrorType & GetError() const &UE_LIFETIMEBOUND
Definition ValueOrError.h:304
TValueOrError(TValueOrError_ValueProxy<> &&Proxy)
Definition ValueOrError.h:276
ErrorType * TryGetError() UE_LIFETIMEBOUND
Definition ValueOrError.h:314
UE_REWRITE ErrorType && GetError() &&UE_LIFETIMEBOUND
Definition ValueOrError.h:308
UE_REWRITE bool HasValue() const
Definition ValueOrError.h:288
ErrorType StealError()
Definition ValueOrError.h:324
UE_REWRITE const ErrorType * TryGetError() const UE_LIFETIMEBOUND
Definition ValueOrError.h:318
TValueOrError(TValueOrError_ValueProxy<> &&Proxy)
Definition ValueOrError.h:340
UE_REWRITE bool HasError() const
Definition ValueOrError.h:352
TValueOrError(TValueOrError_ErrorProxy<> &&Proxy)
Definition ValueOrError.h:346
UE_REWRITE bool HasValue() const
Definition ValueOrError.h:358
Definition ValueOrError.h:58
ErrorType StealError()
Definition ValueOrError.h:142
ErrorType & GetError() &UE_LIFETIMEBOUND
Definition ValueOrError.h:114
TValueOrError(TValueOrError_ValueProxy< ArgTypes... > &&Proxy)
Definition ValueOrError.h:89
UE_REWRITE bool HasValue() const
Definition ValueOrError.h:150
ErrorType * TryGetError() UE_LIFETIMEBOUND
Definition ValueOrError.h:128
UE_REWRITE bool HasError() const
Definition ValueOrError.h:108
UE_REWRITE const ValueType * TryGetValue() const UE_LIFETIMEBOUND
Definition ValueOrError.h:174
UE_REWRITE ValueType * TryGetValue() UE_LIFETIMEBOUND
Definition ValueOrError.h:170
UE_REWRITE const ErrorType & GetError() const &UE_LIFETIMEBOUND
Definition ValueOrError.h:118
TValueOrError(TValueOrError_ErrorProxy< ArgTypes... > &&Proxy)
Definition ValueOrError.h:96
ValueType StealValue()
Definition ValueOrError.h:180
UE_REWRITE const ErrorType * TryGetError() const UE_LIFETIMEBOUND
Definition ValueOrError.h:136
UE_REWRITE const ValueType & GetValue() const &UE_LIFETIMEBOUND
Definition ValueOrError.h:160
UE_REWRITE ValueType && GetValue() &&UE_LIFETIMEBOUND
Definition ValueOrError.h:164
ValueType & GetValue() &UE_LIFETIMEBOUND
Definition ValueOrError.h:156
UE_REWRITE ErrorType && GetError() &&UE_LIFETIMEBOUND
Definition ValueOrError.h:122
UE_REWRITE bool IsValid() const
Definition ValueOrError.h:102
@ false
Definition radaudio_common.h:23
Definition IntegerSequence.h:9
Definition Optional.h:131
Definition ValueOrError.h:25
TValueOrError_ErrorProxy(ArgTypes &&... InArgs UE_LIFETIMEBOUND)
Definition ValueOrError.h:26
TTuple< ArgTypes &&... > Args
Definition ValueOrError.h:31
Definition ValueOrError.h:14
TTuple< ArgTypes &&... > Args
Definition ValueOrError.h:20
TValueOrError_ValueProxy(ArgTypes &&... InArgs UE_LIFETIMEBOUND)
Definition ValueOrError.h:15