TUniqueFunction

TUniqueFunction

Windows
MacOS
Linux

Inheritance Hierarchy

TFunctionRefBase

TUniqueFunction

References

Module

Core

Header

/Engine/Source/Runtime/Core/Public/Templates/Function.h

Include

#include "Templates/Function.h"

Syntax

Remarks

TUniqueFunction<FuncType>

See the class definition for intended usage.

TUniqueFunction<FuncType>

Used like TFunction above, but is move-only. This allows non-copyable functors to be bound to it.

Example:

TUniquePtr<FThing> Thing = MakeUnique<FThing>();

TFunction <void()> CopyableFunc = [Thing = MoveTemp(Thing)](){ Thing->DoSomething(); }; // error - lambda is not copyable TUniqueFunction<void()> MovableFunc = [Thing = MoveTemp(Thing)](){ Thing->DoSomething(); }; // ok

void Foo(TUniqueFunction<void()> Func); Foo(MovableFunc); // error - TUniqueFunction is not copyable Foo(MoveTemp(MovableFunc)); // ok

Constructors

Name Description

Public function

TUniqueFunction

(
    TYPE_OF_NULLPTR
)

Default constructor.

Public function

TUniqueFunction

(
    FunctorType&& InFunc
)

Constructor which binds a TFunction to any function object.

Public function

TUniqueFunction

(
    TFunction< FuncType >&& Other
)

Constructor which takes ownership of a TFunction's functor.

Public function

TUniqueFunction

(
    const TFunction< FuncType >& Other
)

Constructor which takes ownership of a TFunction's functor.

Public function

TUniqueFunction

(
    TUniqueFunction&&
)

Public function

TUniqueFunction

(
    const TUniqueFunction& Other
)

Destructors

Name Description

Public function

~TUniqueFunction()

Operators

Name Description

Public function Const

FORCEINLINE

 

operator bool()

Tests if the TUniqueFunction is callable.

Public function

TUniqueFunct...

 

operator=

(
    TUniqueFunction&& Other
)

Copy/move assignment operator.

Public function

TUniqueFunct...

 

operator=

(
    const TUniqueFunction& Other
)

Typedefs

Name

Description

Super

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss