Navigation
API > API/Runtime > API/Runtime/VerseCompiler > API/Runtime/VerseCompiler/uLang > API/Runtime/VerseCompiler/uLang/Semantics
Inheritance Hierarchy
- CSharedMix
- CAstNode
- CAstCompilationUnit
- CAstPackage
- CAstProject
- CExpressionBase
- CExprArchetypeInstantiation
- CExprAssignment
- CExprBinaryOp
- CExprShortCircuitAnd
- CExprShortCircuitOr
- CExprBreak
- CExprChar
- CExprClassDefinition
- CExprCompoundBase
- CExprCodeBlock
- CExprConcurrentBlockBase
- CExprRace
- CExprRush
- CExprSync
- CExprLet
- CExprMakeArray
- CExprMakeMap
- CExprMakeTuple
- CExprDefinition
- CExprDataDefinition
- CExprFunctionDefinition
- CExprIterationPairDefinition
- CExprTypeAliasDefinition
- CExprEnumDefinition
- CExprError
- CExprExternal
- CExprFunctionLiteral
- CExprIdentifierBase
- CExprEnumerationType
- CExprEnumLiteral
- CExprIdentifierBuiltInMacro
- CExprIdentifierClass
- CExprIdentifierData
- CExprIdentifierFunction
- CExprIdentifierModule
- CExprIdentifierModuleAlias
- CExprIdentifierOverloadedFunction
- CExprIdentifierTypeAlias
- CExprIdentifierTypeVariable
- CExprIdentifierUnresolved
- CExprInterfaceType
- CExprLocal
- CExprSelf
- CExprIf
- CExprImport
- CExprInterfaceDefinition
- CExprInvocation
- CExprBinaryArithmetic
- CExprComparison
- CExprQueryValue
- CExprUnaryArithmetic
- CExprInvokeType
- CExprIteration
- CExprConcurrentIteratedBase
- CExprRaceIterated
- CExprRushIterated
- CExprSyncIterated
- CExprLogic
- CExprMacroCall
- CExprMakeNamed
- CExprMakeRange
- CExprModuleDefinition
- CExprNewPointer
- CExprNumber
- CExprPath
- CExprPathPlusSymbol
- CExprPlaceholder
- CExprReturn
- CExprScopedAccessLevelDefinition
- CExprSnippet
- CExprString
- CExprSubBlockBase
- CExprBranch
- CExprDefer
- CExprLoop
- CExprProfileBlock
- CExprSpawn
- CExprTupleElement
- CExprType
- CExprTypeFormer
- CExprArrow
- CExprMapTypeFormer
- CExprTupleType
- CExprUnaryTypeFormer
- CExprArrayTypeFormer
- CExprGeneratorTypeFormer
- CExprOptionTypeFormer
- CExprSubtype
- CExprUnaryOp
- CExprLogicalNot
- CExprMakeOption
- CExprPointerToReference
- CExprReferenceToValue
- CExprSet
- CExprVar
- CIrConvertFromDynamic
- CIrConvertToDynamic
- CExprUsing
- CExprWhere
- CIrArrayAdd
- CIrArrayUnsafeCall
- CIrFor
- CIrForBody
- CIrMapAdd
References
| Module | VerseCompiler |
| Header | /Engine/Source/Runtime/VerseCompiler/Public/uLang/Semantics/Expression.h |
| Include | #include "uLang/Semantics/Expression.h" |
Syntax
class CAstNode : public uLang::CSharedMix
Remarks
Abstract base class for AST nodes.
Variables
| Type | Name | Description | |
|---|---|---|---|
| const Verse::Vst::Node * | _MappedVstNode | ||
| EVstMappingType | _VstMappingType | Syntax<>Semantic mapping. |
Constructors
| Type | Name | Description | |
|---|---|---|---|
CAstNode
(
EVstMappingType VstMappingType |
Destructors
| Type | Name | Description | |
|---|---|---|---|
~CAstNode () |
Functions
| Type | Name | Description | |
|---|---|---|---|
| const CExpressionBase * | AsExpression () |
||
| CExpressionBase * | AsExpression () |
||
| CUTF8String | GetErrorDesc () |
Text methods. | |
| const Verse::Vst::Node * | Syntax <> Semantic Mapping. | ||
| EAstNodeType | GetNodeType () |
||
| bool | IsIrNode () |
True if this AstNode is used to represent an IrNode. | |
| bool | |||
| bool | |||
| void | SetIrMappedVstNode
(
const Verse::Vst::Node* VstNode |
||
| void | SetNonReciprocalMappedVstNode
(
const Verse::Vst::Node* VstNode |
||
| void | VisitChildren
(
SAstVisitor& Visitor |
Iterates over this AST node's direct children, calling Visitor.Visit for each child. | |
| ULANG_FORCEINLINE void | VisitChildrenLambda
(
FunctionType&& Function |
Wrapper for VisitChildren that takes a lambda that is called for each child. | |
| void | VisitChildrenLambda
(
FunctionType&& Function |
||
| void | VisitImmediates
(
SAstVisitor& Visitor |
Iterates over this AST node's immediate fields, calling Visitor.VisitImmediate for each immediate field. |