MCRO
C++23 utilities for Unreal Engine.
Loading...
Searching...
No Matches
Init.h File Reference
#include "CoreMinimal.h"
#include "Mcro/FunctionTraits.h"

Go to the source code of this file.

Data Structures

struct  Mcro::UObjects::Init::FConstructObjectParameters
 Mirror of FStaticConstructObjectParameters but it's a plain C++ object and doesn't have a constructor so designated initialization with named members is possible. More...
 

Namespaces

namespace  Mcro
 
namespace  Mcro::UObjects
 
namespace  Mcro::UObjects::Init
 
namespace  Mcro::UObjects::Init::Detail
 

Concepts

concept  Mcro::UObjects::Init::CUObjectInitializable
 

Functions

template<CUObject T, typename... Args>
void Mcro::UObjects::Init::Detail::InitObject (T *object, Args &&... args)
 
template<CUObject T, typename... Args>
requires CUObjectInitializable<T, Args...>
void Mcro::UObjects::Init::Detail::InitObject (T *object, Args &&... args)
 
template<CUObject T, typename... Args>
T * Mcro::UObjects::Init::NewInit (FConstructObjectParameters &&params, Args &&... args)
 Create a new object which can also be initialized with an Initialize function if it has one. In case it has an Initialize function the args parameters should match them. This is an equivalent to the template Mcro::SharedObjects::MakeShareableInit.
 
template<CFunctorObject Initializer, typename TArg = TFunction_Arg<Initializer, 0>, CUObject T = std::decay_t<TArg>>
requires std::is_lvalue_reference_v<TArg>
T * Mcro::UObjects::Init::ConstructObject (FConstructObjectParameters &&params, Initializer &&init)
 Equivalent to Mcro::Construct::Construct but for UObjects.
 
template<CFunctorObject Initializer, typename... Args, typename TArg = TFunction_Arg<Initializer, 0>, CUObject T = std::decay_t<TArg>>
requires std::is_lvalue_reference_v<TArg>
T * Mcro::UObjects::Init::ConstructInit (FConstructObjectParameters &&params, Initializer &&init, Args &&... args)
 Equivalent to Mcro::Construct::Construct but for UObjects. If the constructed UObject type also has an Initialize function call that too after the lambda initializer. The args parameters should match the signature of Initialize in that case.
 

Detailed Description

Author
David Mórász
Date
2025

Definition in file Init.h.