UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
uLang::CAttributable Class Reference

Base class for everything that can have attributes attached to it (classes, expressions, etc.) More...

#include <Attributable.h>

+ Inheritance diagram for uLang::CAttributable:

Public Types

enum class  EAttributableScope : uint8_t {
  Module , Class , Struct , Data ,
  Function , Enum , Enumerator , AttributeClass ,
  Interface , Expression , TypeDefinition , ScopedAccessLevel ,
  ClassTypeFunction , AttributeClassTypeFunction , InterfaceTypeFunction
}
 

Public Member Functions

bool HasAttributes () const
 
UE_API bool HasAttributeClass (const CClass *AttributeClass, const CSemanticProgram &Program) const
 
UE_API bool HasAttributeSubclass (const CClass *AttributeClass, const CSemanticProgram &Program) const
 
UE_API int32_t GetAttributeClassCount (const CClass *AttributeClass, const CSemanticProgram &Program) const
 
UE_API TArray< const CExpressionBase * > GetAttributesWithAttribute (const CClass *AttributeClass, const CSemanticProgram &Program) const
 
UE_API const CExpressionBaseFindAttributeExpr (const CClass *AttributeClass, const CSemanticProgram &Program) const
 
UE_API const CExpressionBaseFindAttributeSubclassExpr (const CClass *AttributeClass, const CSemanticProgram &Program) const
 
UE_API const TArray< CExpressionBase * > FindAttributeExprs (const CClass *AttributeClass, const CSemanticProgram &Program) const
 
UE_API const TArray< CExpressionBase * > FindAttributeSubclassExprs (const CClass *AttributeClass, const CSemanticProgram &Program) const
 
UE_API TOptional< SAttributeFindAttribute (const CClass *AttributeClass, const CSemanticProgram &Program) const
 
UE_API TArray< SAttributeFindAttributes (const CClass *AttributeClass, const CSemanticProgram &Program) const
 
UE_API void AddAttributeClass (const CClass *AttributeClass)
 
UE_API void AddAttribute (SAttribute Attribute)
 
UE_API void RemoveAttributeClass (const CClass *AttributeClass, const CSemanticProgram &Program)
 
UE_API TOptional< CUTF8StringGetAttributeTextValue (const CClass *AttributeClass, const CSemanticProgram &Program) const
 
CAttributableoperator= (const CAttributable &Other)=delete
 
CAttributableoperator= (CAttributable &&Other)=delete
 
UE_API bool HasAttributeClassHack (const CClass *AttributeClass, const CSemanticProgram &) const
 
UE_API bool HasAttributeFunctionHack (const CFunction *AttributeFunction, const CSemanticProgram &) const
 

Static Public Member Functions

static UE_API TOptional< CUTF8StringGetAttributeTextValue (const TArray< SAttribute > &Attributes, const CClass *AttributeClass, const CSemanticProgram &Program)
 

Public Attributes

TArray< SAttribute_Attributes
 

Detailed Description

Base class for everything that can have attributes attached to it (classes, expressions, etc.)

Member Enumeration Documentation

◆ EAttributableScope

Enumerator
Module 
Class 
Struct 
Data 
Function 
Enum 
Enumerator 
AttributeClass 
Interface 
Expression 
TypeDefinition 
ScopedAccessLevel 
ClassTypeFunction 
AttributeClassTypeFunction 
InterfaceTypeFunction 

Member Function Documentation

◆ AddAttribute()

void uLang::CAttributable::AddAttribute ( SAttribute  Attribute)

◆ AddAttributeClass()

void uLang::CAttributable::AddAttributeClass ( const CClass AttributeClass)

◆ FindAttribute()

TOptional< SAttribute > uLang::CAttributable::FindAttribute ( const CClass AttributeClass,
const CSemanticProgram Program 
) const

◆ FindAttributeExpr()

const CExpressionBase * uLang::CAttributable::FindAttributeExpr ( const CClass AttributeClass,
const CSemanticProgram Program 
) const

◆ FindAttributeExprs()

const TArray< CExpressionBase * > uLang::CAttributable::FindAttributeExprs ( const CClass AttributeClass,
const CSemanticProgram Program 
) const

◆ FindAttributes()

TArray< SAttribute > uLang::CAttributable::FindAttributes ( const CClass AttributeClass,
const CSemanticProgram Program 
) const

◆ FindAttributeSubclassExpr()

const CExpressionBase * uLang::CAttributable::FindAttributeSubclassExpr ( const CClass AttributeClass,
const CSemanticProgram Program 
) const

◆ FindAttributeSubclassExprs()

const TArray< CExpressionBase * > uLang::CAttributable::FindAttributeSubclassExprs ( const CClass AttributeClass,
const CSemanticProgram Program 
) const

◆ GetAttributeClassCount()

int32_t uLang::CAttributable::GetAttributeClassCount ( const CClass AttributeClass,
const CSemanticProgram Program 
) const

◆ GetAttributesWithAttribute()

TArray< const CExpressionBase * > uLang::CAttributable::GetAttributesWithAttribute ( const CClass AttributeClass,
const CSemanticProgram Program 
) const

◆ GetAttributeTextValue() [1/2]

TOptional< CUTF8String > uLang::CAttributable::GetAttributeTextValue ( const CClass AttributeClass,
const CSemanticProgram Program 
) const

◆ GetAttributeTextValue() [2/2]

TOptional< CUTF8String > uLang::CAttributable::GetAttributeTextValue ( const TArray< SAttribute > &  Attributes,
const CClass AttributeClass,
const CSemanticProgram Program 
)
static

◆ HasAttributeClass()

bool uLang::CAttributable::HasAttributeClass ( const CClass AttributeClass,
const CSemanticProgram Program 
) const

◆ HasAttributeClassHack()

bool uLang::CAttributable::HasAttributeClassHack ( const CClass AttributeClass,
const CSemanticProgram Program 
) const

◆ HasAttributeFunctionHack()

bool uLang::CAttributable::HasAttributeFunctionHack ( const CFunction AttributeFunction,
const CSemanticProgram Program 
) const

◆ HasAttributes()

bool uLang::CAttributable::HasAttributes ( ) const
inline

◆ HasAttributeSubclass()

bool uLang::CAttributable::HasAttributeSubclass ( const CClass AttributeClass,
const CSemanticProgram Program 
) const

◆ operator=() [1/2]

CAttributable & uLang::CAttributable::operator= ( CAttributable &&  Other)
delete

◆ operator=() [2/2]

CAttributable & uLang::CAttributable::operator= ( const CAttributable Other)
delete

◆ RemoveAttributeClass()

void uLang::CAttributable::RemoveAttributeClass ( const CClass AttributeClass,
const CSemanticProgram Program 
)

Member Data Documentation

◆ _Attributes

TArray<SAttribute> uLang::CAttributable::_Attributes

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