16#define UE_API VERSECOMPILER_API
178 bool IsCoercion()
const {
return _CoercedOriginalFunction !=
nullptr; }
219 const CFunction* _CoercedOriginalFunction{
nullptr};
224 bool _bCoercedOverride{
false};
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define UE_API
Definition SColorGradingComponentViewer.h:12
#define ULANG_ASSERTF(expr, format,...)
Definition Common.h:290
Definition CaptureScope.h:13
Definition Definition.h:131
const CDefinition * GetPrototypeDefinition() const
Definition Definition.h:219
CScope & _EnclosingScope
Definition Definition.h:141
const CDefinition & GetBaseOverriddenDefinition() const
Definition Definition.h:206
EKind
Definition Definition.h:135
void SetPrototypeDefinition(const CDefinition &PrototypeDefinition)
Definition Definition.h:324
const CDefinition * GetOverriddenDefinition() const
Definition Definition.h:202
void SetOverriddenDefinition(const CDefinition &OverriddenDefinition)
Definition Definition.h:294
TDefinition & AsChecked()
Definition Definition.h:368
Definition Expression.h:2950
const TSPtr< CExpressionBase > & Value() const
Definition Expression.h:1273
const TSPtr< CExpressionBase > & ValueDomain() const
Definition Expression.h:1269
const TSPtr< CExpressionBase > & Element() const
Definition Expression.h:1261
Definition Expression.h:3221
Definition Expression.h:2918
Definition Expression.h:387
Definition SemanticTypes.h:1055
Definition SemanticFunction.h:75
virtual const CLogicalScope * DefinitionAsLogicalScopeNullable() const override
Definition SemanticFunction.h:200
UE_API const CFunction * GetPredictsCoercedOriginalFunction() const
Definition SemanticFunction.cpp:254
void SetOverriddenDefinition(const CFunction *OverriddenDefinition)
Definition SemanticFunction.h:103
void SetPrototypeDefinition(const CFunction &PrototypeDefinition)
Definition SemanticFunction.h:191
void SetOverriddenDefinition(const CFunction &OverriddenDefinition)
Definition SemanticFunction.h:102
static const CDefinition::EKind StaticDefinitionKind
Definition SemanticFunction.h:77
TSPtr< CExpressionBase > GetReturnTypeAst() const
Definition SemanticFunction.h:142
SSignature _Signature
Signature - parameter interface.
Definition SemanticFunction.h:81
const CFunctionType * _NegativeType
Definition SemanticFunction.h:85
UE_API bool IsConstructor() const
Definition SemanticFunction.cpp:225
SemanticRevision GetRevision() const
Definition SemanticFunction.h:154
UE_API TSPtr< CExprClassDefinition > GetBodyClassDefinitionAst() const
Definition SemanticFunction.cpp:57
UE_API bool CanBeCalledFromPredicts() const
Definition SemanticFunction.cpp:249
void MarkCoercedOverride()
Definition SemanticFunction.h:180
UE_API int32_t Index() const
Definition SemanticFunction.cpp:26
UE_API CExprFunctionDefinition * GetAstNode() const
Definition SemanticFunction.cpp:235
UE_API TSPtr< CExprInterfaceDefinition > GetBodyInterfaceDefinitionAst() const
Definition SemanticFunction.cpp:70
UE_API void SetIrNode(CExprFunctionDefinition *AstNode)
Definition SemanticFunction.cpp:240
UE_API void SetAstNode(CExprFunctionDefinition *AstNode)
Definition SemanticFunction.cpp:231
virtual CCaptureScope * GetParentCaptureScope() const override
Definition SemanticFunction.h:204
bool IsCoercedOverride() const
Definition SemanticFunction.h:182
UE_API void MapSignature(const CFunctionType &FuncType, SemanticRevision NextRevision)
Definition SemanticFunction.cpp:40
virtual const CDefinition * ScopeAsDefinition() const override
Definition SemanticFunction.h:99
UE_API CExprInterfaceDefinition * GetBodyInterfaceDefinitionIr() const
Definition SemanticFunction.cpp:95
const CFunction * GetPrototypeDefinition() const
Definition SemanticFunction.h:192
const CFunction & GetBaseCoercedOverriddenFunction() const
Definition SemanticFunction.h:114
UE_API CUTF8String GetDecoratedName(uint16_t StrFlags=uint16_t(EFunctionStringFlag::QualifiedVersion2)) const
Definition SemanticFunction.cpp:148
void MarkCoercion(const CFunction &CoercedFrom)
Definition SemanticFunction.h:176
UE_API CExprFunctionDefinition * GetIrNode(bool bForce=false) const
Definition SemanticFunction.cpp:244
EExtensionFieldAccessorKind _ExtensionFieldAccessorKind
Definition SemanticFunction.h:83
UE_API CUTF8String GetQualifier() const
Definition SemanticFunction.cpp:210
bool IsCoercion() const
Definition SemanticFunction.h:178
UE_API TOptional< const CClass * > GetMaybeClassScope() const
Definition SemanticFunction.cpp:107
virtual CSymbol GetScopeName() const override
Definition SemanticFunction.h:98
UE_API TOptional< const CNominalType * > GetMaybeContextType() const
Definition SemanticFunction.cpp:131
UE_API TOptional< const CModule * > GetMaybeModuleScope() const
Definition SemanticFunction.cpp:125
UE_API void SetSignature(SSignature &&Signature, SemanticRevision NextRevision)
Definition SemanticFunction.cpp:31
UE_API bool HasImplementation() const
Definition SemanticFunction.cpp:215
const CFunction * GetOverriddenDefinition() const
Definition SemanticFunction.h:104
UE_API bool IsNative() const
Definition SemanticFunction.cpp:220
TSPtr< CExpressionBase > GetDefineeAst() const
Definition SemanticFunction.h:144
const CFunction & GetBaseOverriddenDefinition() const
Definition SemanticFunction.h:109
CExpressionBase * GetBodyIr() const
Definition SemanticFunction.h:146
CExpressionBase * GetReturnTypeIr() const
Definition SemanticFunction.h:152
TArray< const CFunction * > _LowerIdenticalFunctions
Definition SemanticFunction.h:91
SemanticRevision GetSignatureRevision() const
Definition SemanticFunction.h:155
bool _bIsAccessorOfSomeClassVar
Definition SemanticFunction.h:209
TSPtr< CExpressionBase > GetBodyAst() const
Definition SemanticFunction.h:136
virtual bool IsPersistenceCompatConstraint() const override
Definition SemanticFunction.h:202
UE_API CExprClassDefinition * GetBodyClassDefinitionIr() const
Definition SemanticFunction.cpp:83
SemanticRevision GetBodyRevision() const
Definition SemanticFunction.h:156
Definition SemanticScope.h:242
static ULANG_FORCEINLINE constexpr T Max(const T A, const T B)
Returns higher value in a generic way.
Definition MathUtils.h:19
ULANG_FORCEINLINE const CSymbol & GetName() const
Definition Named.h:41
Definition SemanticScope.h:73
UE_API CCaptureScope * GetCaptureScope()
Definition SemanticScope.cpp:238
Symbol representing a text string with an associated id.
Definition Symbol.h:98
Definition SharedPointer.h:77
Definition VVMEngineEnvironment.h:23
EExtensionFieldAccessorKind
Definition SemanticFunction.h:63
uint32_t SemanticRevision
For storing revisions of functions, classes etc.
Definition Revision.h:11
EFunctionStringFlag
Definition SemanticFunction.h:22
U16 Index
Definition radfft.cpp:71
Definition Signature.h:17