UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Models.h File Reference

Go to the source code of this file.

Classes

struct  TModels< Concept, Args >
 

Namespaces

namespace  UE
 
namespace  UE::Core
 
namespace  UE::Core::Private
 implementation
 

Functions

template<typename Concept , typename... Args>
auto Refines () -> int(&)[!!TModels_V< Concept, Args... > *2 - 1]
 

Variables

template<typename Concept , typename... Args>
constexpr bool TModels_V = sizeof(UE::Core::Private::ModelsResolve<Concept, Args...>(0)) == 2
 

Function Documentation

◆ Refines()

template<typename Concept , typename... Args>
auto Refines ( ) -> int(&)[!!TModels_V< Concept, Args... > *2 - 1]

Helper function which can be used as an expression in a concept to refine ('inherit') another concept. It should be used as expression-based variant of the TModels_V trait. If the arguments model the given concept, Refines<Concept, Args...> is a valid expression, otherwise it is not.

See the CCopyablePointer example below.

Variable Documentation

◆ TModels_V

template<typename Concept , typename... Args>
constexpr bool TModels_V = sizeof(UE::Core::Private::ModelsResolve<Concept, Args...>(0)) == 2
constexpr

Trait which does concept checking.