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

#include <SemanticEnumeration.h>

+ Inheritance diagram for uLang::CEnumerator:

Public Member Functions

UE_API CEnumerator (CEnumeration &Enumeration, const CSymbol &Name, int32_t Value)
 
UE_API CUTF8String AsCode () const
 
UE_API void SetAstNode (CExprEnumLiteral *AstNode)
 
UE_API CExprEnumLiteralGetAstNode () const
 
UE_API void SetIrNode (CExprEnumLiteral *AstNode)
 
UE_API CExprEnumLiteralGetIrNode (bool bForce=false) const
 
virtual UE_API bool IsPersistenceCompatConstraint () const override
 
- Public Member Functions inherited from uLang::CDefinition
UE_API CDefinition (EKind Kind, CScope &EnclosingScope, const CSymbol &Name)
 
UE_API ~CDefinition ()
 
bool TryMarkOverriddenAndConstrainedDefinitionsVisited (VisitStampType VisitStamp) const
 
EKind GetKind () const
 
template<typename TDefinition >
TDefinitionAsChecked ()
 
template<typename TDefinition >
TDefinition const & AsChecked () const
 
template<typename TDefinition >
bool IsA () const
 
template<typename TDefinition >
TDefinitionAsNullable ()
 
template<typename TDefinition >
TDefinition const * AsNullable () const
 
const CDefinitionGetOverriddenDefinition () const
 
const CDefinitionGetBaseOverriddenDefinition () const
 
UE_API const CDefinitionGetBaseClassOverriddenDefinition () const
 
const CDefinitionGetPrototypeDefinition () const
 
void SetConstrainedDefinition (const CDefinition &ConstrainedDefinition)
 
const CDefinitionGetConstrainedDefinition () const
 
CExpressionBaseGetAstNode () const
 
CExpressionBaseGetIrNode (bool bForce=false) const
 
void SetAccessLevel (const TOptional< SAccessLevel > &AccessLevel)
 
const TOptional< SAccessLevel > & SelfAccessLevel () const
 
UE_API SAccessLevel DerivedAccessLevel () const
 
UE_API bool IsInstanceMember () const
 
UE_API bool IsDeprecated () const
 
UE_API bool IsExperimental () const
 
UE_API bool IsFinal () const
 
UE_API const CExpressionBaseGetNativeSpecifierExpression () const
 
UE_API bool IsNative () const
 
UE_API bool IsBuiltIn () const
 
virtual const CLogicalScopeDefinitionAsLogicalScopeNullable () const
 
const CDefinitionGetDefinitionAccessibilityRoot () const
 
UE_API bool IsAccessibleFrom (const CScope &) const
 
void SetOverriddenDefinition (const CDefinition &OverriddenDefinition)
 
void SetOverriddenDefinition (const CDefinition *OverriddenDefinition)
 
UE_API const CDefinitionGetEnclosingDefinition () const
 
bool IsExplicitlyLocallyQualified () const
 If the definition is explicitly qualified with the (local:) identifier.
 
bool IsLocallyQualified () const
 If the definition is implicitly local by virtue of being a definition within a function body/explicitly qualified as (local:).
 
UE_API SQualifier GetImplicitQualifier () const
 Determines the qualifier for this definition, even if not explicitly specified (from the original source).
 
UE_API void SetName (const CSymbol &NewName)
 
TOptional< uint64_tGetCombinedAvailableVersion () const
 
void SetCombinedAvailableVersion (uint64_t InAvailableVersion) const
 
template<typename TDefinition >
TDefinition const & AsChecked () const
 
- Public Member Functions inherited from uLang::CAttributable
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
 
- Public Member Functions inherited from uLang::CNamed
ULANG_FORCEINLINE CNamed ()
 
ULANG_FORCEINLINE CNamed (const CSymbol &Name)
 
ULANG_FORCEINLINE CNamed (const CNamed &Source)
 
ULANG_FORCEINLINE CNamedoperator= (const CNamed &Source)
 
ULANG_FORCEINLINE operator const CSymbol & () const
 
ULANG_FORCEINLINE EEquate Compare (const CSymbol &Name) const
 
ULANG_FORCEINLINE bool operator== (const CSymbol &Name) const
 
ULANG_FORCEINLINE bool operator!= (const CSymbol &Name) const
 
ULANG_FORCEINLINE bool operator<= (const CSymbol &Name) const
 
ULANG_FORCEINLINE bool operator>= (const CSymbol &Name) const
 
ULANG_FORCEINLINE bool operator< (const CSymbol &Name) const
 
ULANG_FORCEINLINE bool operator> (const CSymbol &Name) const
 
ULANG_FORCEINLINE const CSymbolGetName () const
 
ULANG_FORCEINLINE SymbolId GetNameId () const
 
ULANG_FORCEINLINE CUTF8StringView AsNameStringView () const
 
ULANG_FORCEINLINE const charAsNameCString () const
 
ULANG_FORCEINLINE UTF8Char AsNameFirstByte () const
 
- Public Member Functions inherited from uLang::TAstNodeRef< CExpressionBase >
CExpressionBaseGetAstNode () const
 
CExpressionBaseGetIrNode (bool bForce=false) const
 
void SetAstNode (CExpressionBase *AstNode)
 
void SetIrNode (CExpressionBase *IrNode)
 
- Public Member Functions inherited from uLang::CSharedMix
 CSharedMix ()
 
virtual UE_API ~CSharedMix ()
 
 CSharedMix (const CSharedMix &Other)=delete
 
CSharedMixoperator= (const CSharedMix &Other)=delete
 
uint32_t GetRefCount () const
 

Public Attributes

const int32_t _IntValue
 The integer value denoting this enumerator for native representation.
 
CEnumeration_Enumeration {nullptr}
 Type this enumerator belongs to.
 
- Public Attributes inherited from uLang::CDefinition
CScope_EnclosingScope
 
const int32_t _ParentScopeOrdinal
 
SQualifier _Qualifier
 
- Public Attributes inherited from uLang::CAttributable
TArray< SAttribute_Attributes
 

Static Public Attributes

static constexpr EKind StaticDefinitionKind = EKind::Enumerator
 

Additional Inherited Members

- Public Types inherited from uLang::CDefinition
enum class  EKind : uint8_t { VISIT_KIND }
 
- Public Types inherited from uLang::CAttributable
enum class  EAttributableScope : uint8_t {
  Module , Class , Struct , Data ,
  Function , Enum , Enumerator , AttributeClass ,
  Interface , Expression , TypeDefinition , ScopedAccessLevel ,
  ClassTypeFunction , AttributeClassTypeFunction , InterfaceTypeFunction
}
 
- Static Public Member Functions inherited from uLang::CAttributable
static UE_API TOptional< CUTF8StringGetAttributeTextValue (const TArray< SAttribute > &Attributes, const CClass *AttributeClass, const CSemanticProgram &Program)
 
- Protected Member Functions inherited from uLang::CDefinition
void SetPrototypeDefinition (const CDefinition &PrototypeDefinition)
 
void SetAstNode (CExpressionBase *AstNode)
 
void SetIrNode (CExpressionBase *IrNode)
 
- Static Protected Member Functions inherited from uLang::CSharedMix
template<class ObjectType >
static TSPtrG< ObjectType, false, CHeapRawAllocatorSharedThis (ObjectType *This)
 
template<class ObjectType >
static TSPtrG< const ObjectType, false, CHeapRawAllocatorSharedThis (const ObjectType *This)
 
- Protected Attributes inherited from uLang::CNamed
CSymbol _Name
 

Detailed Description

Description for a single enumerator

Constructor & Destructor Documentation

◆ CEnumerator()

uLang::CEnumerator::CEnumerator ( CEnumeration Enumeration,
const CSymbol Name,
int32_t  Value 
)

Member Function Documentation

◆ AsCode()

CUTF8String uLang::CEnumerator::AsCode ( ) const

◆ GetAstNode()

CExprEnumLiteral * uLang::CEnumerator::GetAstNode ( ) const

◆ GetIrNode()

CExprEnumLiteral * uLang::CEnumerator::GetIrNode ( bool  bForce = false) const

◆ IsPersistenceCompatConstraint()

bool uLang::CEnumerator::IsPersistenceCompatConstraint ( ) const
overridevirtual

Implements uLang::CDefinition.

◆ SetAstNode()

void uLang::CEnumerator::SetAstNode ( CExprEnumLiteral AstNode)

◆ SetIrNode()

void uLang::CEnumerator::SetIrNode ( CExprEnumLiteral AstNode)

Member Data Documentation

◆ _Enumeration

CEnumeration* uLang::CEnumerator::_Enumeration {nullptr}

Type this enumerator belongs to.

◆ _IntValue

const int32_t uLang::CEnumerator::_IntValue

The integer value denoting this enumerator for native representation.

◆ StaticDefinitionKind

constexpr EKind uLang::CEnumerator::StaticDefinitionKind = EKind::Enumerator
staticconstexpr

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