UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TFuture< ResultType > Class Template Reference

#include <Future.h>

+ Inheritance diagram for TFuture< ResultType >:

Public Member Functions

 TFuture ()=default
 
 TFuture (TFuture &&)=default
 
 TFuture (const TFuture &)=delete
 
TFutureoperator= (TFuture &&)=default
 
TFutureoperator= (const TFuture &)=delete
 
 ~TFuture ()=default
 
MutableResultType GetMutable ()
 
MutableResultType GetMutable () UE_LIFETIMEBOUND
 
ResultType Consume ()
 
TSharedFuture< ResultType > Share ()
 
template<typename Func >
auto Then (Func Continuation)
 
template<typename Func >
auto Next (Func Continuation)
 
void Reset ()
 
- Public Member Functions inherited from TFutureBase< ResultType >
ConstResultType Get () const
 
ConstResultType Get () const UE_LIFETIMEBOUND
 
bool IsReady () const
 
bool IsValid () const
 
void Wait () const
 
bool WaitFor (const FTimespan &Duration) const
 
bool WaitUntil (const FDateTime &Time) const
 

Friends

template<typename >
class TPromise
 
template<typename >
class TFutureBase
 

Additional Inherited Members

- Public Types inherited from TFutureBase< ResultType >
using MutableResultType = typename StateType::MutableResultType
 
using ConstResultType = typename StateType::ConstResultType
 
using RvalueResultType = typename StateType::RvalueResultType
 
- Protected Types inherited from TFutureBase< ResultType >
using StateType = TFutureState< ResultType >
 
- Protected Member Functions inherited from TFutureBase< ResultType >
 TFutureBase ()=default
 
 TFutureBase (TSharedPtr< StateType > &&InState)
 
 TFutureBase (const TSharedPtr< StateType > &InState)
 
const TSharedPtr< StateType > & GetState () const
 
template<typename Func >
auto Then (Func Continuation)
 
template<typename Func >
auto Next (Func Continuation)
 
void Reset ()
 

Detailed Description

template<typename ResultType>
class TFuture< ResultType >

Template for unshared futures.

Constructor & Destructor Documentation

◆ TFuture() [1/3]

template<typename ResultType >
TFuture< ResultType >::TFuture ( )
default

Default constructor.

◆ TFuture() [2/3]

template<typename ResultType >
TFuture< ResultType >::TFuture ( TFuture< ResultType > &&  )
default

◆ TFuture() [3/3]

template<typename ResultType >
TFuture< ResultType >::TFuture ( const TFuture< ResultType > &  )
delete

◆ ~TFuture()

template<typename ResultType >
TFuture< ResultType >::~TFuture ( )
default

Member Function Documentation

◆ Consume()

template<typename ResultType >
ResultType TFuture< ResultType >::Consume ( )
inline

Consumes the future's result and invalidates the future.

Returns
The result.
Note
Equivalent to std::future::get(). Invalidates the future.

◆ GetMutable() [1/2]

template<typename ResultType >
MutableResultType TFuture< ResultType >::GetMutable ( )
inline

Gets the future's result.

Returns
The result as a non-const reference, or the same reference if the future holds a reference, or void if the future holds a void.
Note
Not equivalent to std::future::get(). The future remains valid.

◆ GetMutable() [2/2]

template<typename ResultType >
MutableResultType TFuture< ResultType >::GetMutable ( )
inline

◆ Next()

template<typename ResultType >
template<typename Func >
auto TFutureBase< ResultType >::Next ( Func  Continuation)

Expose Next functionality

See also
TFutureBase

◆ operator=() [1/2]

template<typename ResultType >
TFuture & TFuture< ResultType >::operator= ( const TFuture< ResultType > &  )
delete

◆ operator=() [2/2]

template<typename ResultType >
TFuture & TFuture< ResultType >::operator= ( TFuture< ResultType > &&  )
default

◆ Reset()

template<typename ResultType >
void TFutureBase< ResultType >::Reset ( )
inline

Expose Reset functionality

See also
TFutureBase

◆ Share()

template<typename ResultType >
TSharedFuture< ResultType > TFuture< ResultType >::Share ( )
inline

Moves this future's state into a shared future.

Returns
The shared future object.

◆ Then()

template<typename ResultType >
template<typename Func >
auto TFutureBase< ResultType >::Then ( Func  Continuation)

Expose Then functionality

See also
TFutureBase

Friends And Related Symbol Documentation

◆ TFutureBase

template<typename ResultType >
template<typename >
friend class TFutureBase
friend

◆ TPromise

template<typename ResultType >
template<typename >
friend class TPromise
friend

The documentation for this class was generated from the following files: