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

#include <Expression.h>

+ Inheritance diagram for uLang::CExprIdentifierTypeVariable:

Public Member Functions

UE_API CExprIdentifierTypeVariable (const CTypeVariable &TypeVariable, TSPtr< CExpressionBase > &&Context=nullptr, TSPtr< CExpressionBase > &&Qualifier=nullptr)
 
virtual EAstNodeType GetNodeType () const override
 
virtual CUTF8String GetErrorDesc () const override
 
virtual bool operator== (const CExpressionBase &Other) const override
 
virtual UE_API void VisitImmediates (SAstVisitor &Visitor) const override
 
- Public Member Functions inherited from uLang::CExprIdentifierBase
 CExprIdentifierBase (TSPtr< CExpressionBase > &&Context=nullptr, TSPtr< CExpressionBase > &&Qualifier=nullptr)
 
const TSPtr< CExpressionBase > & Context () const
 
const TSPtr< CExpressionBase > & Qualifier () const
 
TSPtr< CExpressionBase > && TakeContext ()
 
TSPtr< CExpressionBase > && TakeQualifier ()
 
void SetContext (TSPtr< CExpressionBase > Context)
 
void SetQualifier (TSPtr< CExpressionBase > Qualifier)
 
virtual bool MayHaveAttributes () const override
 
virtual bool CanFail (const CAstPackage *Package) const override
 
virtual const CExpressionBaseFindFirstAsyncSubExpr (const CSemanticProgram &Program) const override
 
virtual void VisitChildren (SAstVisitor &Visitor) const override
 
virtual const CDefinitionIdentifierDefinition () const
 This is specifically named as such to avoid shadowing other virtual methods (such as on CNominalType).
 
virtual const CExprIdentifierBaseAsIdentifierBase () const override
 This node contains an identifier.
 
- Public Member Functions inherited from uLang::CExpressionBase
 CExpressionBase (EVstMappingType VstMappingType=EVstMappingType::Ast)
 
 CExpressionBase (const CTypeBase *InResultType)
 
virtual const CExpressionBaseAsExpression () const override
 
virtual CExpressionBaseAsExpression () override
 
virtual bool CanBePathSegment (const TMacroSymbols &MacroSymbols) const
 
EInvokeTime DetermineInvokeTime (const CSemanticProgram &Program) const
 
virtual UE_API const CTypeBaseGetResultType (const CSemanticProgram &Program) const
 
UE_API void SetResultType (const CTypeBase *InResultType)
 
UE_API void RefineResultType (const CTypeBase *RefinedResultType)
 
bool IsAnalyzed () const
 
bool operator!= (const CExpressionBase &Other) const
 
const CTypeBaseIrGetResultType () const
 
void IrSetResultType (const CTypeBase *TypeBase)
 
template<typename TRange1 , typename TRange2 >
ULANG_FORCEINLINE bool AreSubExprsEqual (const TRange1 &Lhs, const TRange2 &Rhs)
 
- Public Member Functions inherited from uLang::CAstNode
 CAstNode (EVstMappingType VstMappingType=EVstMappingType::Ast)
 
virtual UE_API ~CAstNode ()
 
template<typename FunctionType >
ULANG_FORCEINLINE void VisitChildrenLambda (FunctionType &&Function) const
 
const Verse::Vst::NodeGetMappedVstNode () const
 
void SetNonReciprocalMappedVstNode (const Verse::Vst::Node *VstNode)
 
void SetIrMappedVstNode (const Verse::Vst::Node *VstNode)
 
bool IsIrNode () const
 
bool IsVstMappingReciprocal () const
 
template<typename FunctionType >
void VisitChildrenLambda (FunctionType &&Function) const
 
- 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 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 Attributes

const CTypeVariable_TypeVariable
 
- Public Attributes inherited from uLang::CAttributable
TArray< SAttribute_Attributes
 

Additional Inherited Members

- Public Types inherited from uLang::CExpressionBase
using TMacroSymbols = TArrayG< CSymbol, TInlineElementAllocator< 3 > >
 
- 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::CExpressionBase
static bool BaseCompare (const CExpressionBase &A, const CExpressionBase &B)
 
static bool IsSubExprEqual (const CExpressionBase *Lhs, const CExpressionBase *Rhs)
 
static bool IsSubExprEqual (const CExpressionBase &Lhs, const CExpressionBase &Rhs)
 
static bool IsSubExprEqual (const TSPtr< CExpressionBase > &Lhs, const TSPtr< CExpressionBase > &Rhs)
 
static bool IsSubExprEqual (const TSRef< CExpressionBase > &Lhs, const TSRef< CExpressionBase > &Rhs)
 
template<typename TRange1 , typename TRange2 >
static bool AreSubExprsEqual (const TRange1 &, const TRange2 &)
 
- Static Public Member Functions inherited from uLang::CAttributable
static UE_API TOptional< CUTF8StringGetAttributeTextValue (const TArray< SAttribute > &Attributes, const CClass *AttributeClass, const CSemanticProgram &Program)
 
- 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::CExpressionBase
TOptional< SAnalysisResult_Report
 
- Protected Attributes inherited from uLang::CAstNode
EVstMappingType _VstMappingType
 
const Verse::Vst::Node_MappedVstNode {nullptr}
 

Detailed Description

Access to a type variable

Constructor & Destructor Documentation

◆ CExprIdentifierTypeVariable()

uLang::CExprIdentifierTypeVariable::CExprIdentifierTypeVariable ( const CTypeVariable TypeVariable,
TSPtr< CExpressionBase > &&  Context = nullptr,
TSPtr< CExpressionBase > &&  Qualifier = nullptr 
)

Member Function Documentation

◆ GetErrorDesc()

virtual CUTF8String uLang::CExprIdentifierTypeVariable::GetErrorDesc ( ) const
inlineoverridevirtual

Implements uLang::CAstNode.

◆ GetNodeType()

virtual EAstNodeType uLang::CExprIdentifierTypeVariable::GetNodeType ( ) const
inlineoverridevirtual

Implements uLang::CAstNode.

◆ operator==()

virtual bool uLang::CExprIdentifierTypeVariable::operator== ( const CExpressionBase Other) const
inlineoverridevirtual

Reimplemented from uLang::CExprIdentifierBase.

◆ VisitImmediates()

void uLang::CExprIdentifierTypeVariable::VisitImmediates ( SAstVisitor Visitor) const
overridevirtual

Iterates over this AST node's immediate fields, calling Visitor.VisitImmediate for each immediate field.

Reimplemented from uLang::CExpressionBase.

Member Data Documentation

◆ _TypeVariable

const CTypeVariable& uLang::CExprIdentifierTypeVariable::_TypeVariable

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