15#define UE_API VERSECOMPILER_API
20class CExprEnumLiteral;
21class CExprEnumDefinition;
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define UE_API
Definition SColorGradingComponentViewer.h:12
Base class for everything that can have attributes attached to it (classes, expressions,...
Definition Attributable.h:51
Definition Definition.h:131
EKind
Definition Definition.h:135
Definition SemanticEnumeration.h:58
virtual const CTypeBase * ScopeAsType() const override
Definition SemanticEnumeration.h:83
CAttributable _EffectAttributable
Definition SemanticEnumeration.h:63
virtual const CLogicalScope * DefinitionAsLogicalScopeNullable() const override
Definition SemanticEnumeration.h:94
bool IsOpen() const
Definition SemanticEnumeration.h:98
virtual CSymbol GetScopeName() const override
Definition SemanticEnumeration.h:82
virtual const CDefinition * ScopeAsDefinition() const override
Definition SemanticEnumeration.h:84
UE_API void SetAstNode(CExprEnumDefinition *AstNode)
Definition SemanticEnumeration.cpp:86
UE_API CEnumerator & CreateEnumerator(const CSymbol &EnumeratorName, int32_t Value)
Definition SemanticEnumeration.cpp:63
bool IsClosed() const
Definition SemanticEnumeration.h:99
virtual bool CanBeCustomAccessorDataType() const override
Definition SemanticEnumeration.h:76
UE_API CExprEnumDefinition * GetAstNode() const
Definition SemanticEnumeration.cpp:90
UE_API EEnumOpenness GetOpenness() const
Definition SemanticEnumeration.cpp:104
virtual UE_API SAccessLevel GetDefaultDefinitionAccessLevel() const override
Definition SemanticEnumeration.cpp:81
EEnumOpenness
Definition SemanticEnumeration.h:102
virtual bool IsExplicitlyConcrete() const override
Definition SemanticEnumeration.h:75
static const ETypeKind StaticTypeKind
Definition SemanticEnumeration.h:60
virtual bool IsExplicitlyCastable() const override
Definition SemanticEnumeration.h:74
virtual const CDefinition * Definition() const override
Definition SemanticEnumeration.h:79
virtual bool IsPersistenceCompatConstraint() const override
Definition SemanticEnumeration.h:96
UE_API CExprEnumDefinition * GetIrNode(bool bForce=false) const
Definition SemanticEnumeration.cpp:99
UE_API void SetIrNode(CExprEnumDefinition *AstNode)
Definition SemanticEnumeration.cpp:95
virtual EComparability GetComparability() const override
Definition SemanticEnumeration.h:72
virtual UE_API bool IsPersistable() const override
Definition SemanticEnumeration.cpp:76
virtual UE_API SmallDefinitionArray FindTypeMember(const CSymbol &Name, EMemberOrigin Origin, const SQualifier &Qualifier=SQualifier::Unknown(), VisitStampType VisitStamp=CScope::GenerateNewVisitStamp()) const override
Definition SemanticEnumeration.cpp:71
static const CDefinition::EKind StaticDefinitionKind
Definition SemanticEnumeration.h:61
Definition SemanticEnumeration.h:27
static constexpr EKind StaticDefinitionKind
Definition SemanticEnumeration.h:30
UE_API CExprEnumLiteral * GetAstNode() const
Definition SemanticEnumeration.cpp:36
UE_API void SetIrNode(CExprEnumLiteral *AstNode)
Definition SemanticEnumeration.cpp:41
virtual UE_API bool IsPersistenceCompatConstraint() const override
Definition SemanticEnumeration.cpp:50
UE_API CUTF8String AsCode() const
Definition SemanticEnumeration.cpp:22
CEnumeration * _Enumeration
Type this enumerator belongs to.
Definition SemanticEnumeration.h:36
UE_API void SetAstNode(CExprEnumLiteral *AstNode)
Definition SemanticEnumeration.cpp:32
const int32_t _IntValue
The integer value denoting this enumerator for native representation.
Definition SemanticEnumeration.h:33
UE_API CExprEnumLiteral * GetIrNode(bool bForce=false) const
Definition SemanticEnumeration.cpp:45
Definition Expression.h:2875
Definition Expression.h:828
Definition SemanticScope.h:242
ULANG_FORCEINLINE const CSymbol & GetName() const
Definition Named.h:41
Class defining instance and class objects.
Definition SemanticTypes.h:608
Definition SemanticScope.h:73
static UE_API VisitStampType GenerateNewVisitStamp()
Generates a new stamp id.
Definition SemanticScope.cpp:562
Symbol representing a text string with an associated id.
Definition Symbol.h:98
Base class for all types.
Definition SemanticTypes.h:138
CSemanticProgram & GetProgram() const
Definition SemanticTypes.h:143
Definition VVMEngineEnvironment.h:23
uint32_t VisitStampType
Used to mark scopes already visited during a search.
Definition VisitStamp.h:11
ETypeKind
Definition SemanticTypes.h:92
EComparability
Definition SemanticTypes.h:113
EMemberOrigin
Specifies whether to find only member definitions originating in the current type,...
Definition MemberOrigin.h:10
Definition AccessLevel.h:15
Information about a given qualifier.
Definition Definition.h:35
static SQualifier Unknown()
Definition Definition.h:81