UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SemanticAnalyzerPass.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2// uLang Semantic Analysis Public API
3
4#pragma once
5
8
9namespace uLang
10{
11
14{
15public:
16
18 {
19 ULANG_ASSERTF(!_Context.IsValid(), "Destructor called without clean up.");
20 }
21
23 {
24 ULANG_ASSERTF(!_Context.IsValid(), "Initialize called without a paired clean up.");
26 }
27
28 virtual void CleanUp(void) override
29 {
30 _Context.Reset();
31 }
32
33 //~ Begin ISemanticAnalyzerPass interface
35 {
36 ULANG_ASSERTF(_Context.IsValid(), "ProcessVst called without initializing.");
37 _Context->ProcessVst(Vst, Pass);
38 return _Context->GetSemanticProgram();
39 }
40 //~ End ISemanticAnalyzerPass interface
41private:
42
44}; // CSemanticAnalyzerPass
45
46} // namespace uLang
#define ULANG_ASSERTF(expr, format,...)
Definition Common.h:290
Converts a CSyntaxProgram to a CSemanticProgram and identifies any semantic issues.
Definition SemanticAnalyzerPass.h:14
virtual void Initialize(const SBuildContext &BuildContext, const SProgramContext &ProgramContext) override
Definition SemanticAnalyzerPass.h:22
~CSemanticAnalyzerPass()
Definition SemanticAnalyzerPass.h:17
virtual void CleanUp(void) override
Definition SemanticAnalyzerPass.h:28
virtual TSRef< CSemanticProgram > ProcessVst(const Verse::Vst::Project &Vst, const ESemanticPass Pass) const override
Definition SemanticAnalyzerPass.h:34
Definition ISemanticAnalyzerPass.h:13
Definition SharedPointer.h:77
Definition UniquePointer.h:15
static ULANG_FORCEINLINE TUPtrG New(AllocatorArgsType &&... AllocatorArgs, CtorArgsType &&... CtorArgs)
Definition UniquePointer.h:29
Definition tLang.cpp:1785
Definition VVMEngineEnvironment.h:23
ESemanticPass
Definition SemanticAnalyzerPassUtils.h:7
Definition DetourTileCache.cpp:72
Definition VstNode.h:1000
Definition CompilerTypes.h:170
Definition CompilerTypes.h:194