UDocumentation
UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SemanticAnalyzer.h
Go to the documentation of this file.
1
// Copyright Epic Games, Inc. All Rights Reserved.
2
// uLang Semantic Analyzer Public API
3
4
#pragma once
5
6
#include "
uLang/Common/Containers/SharedPointer.h
"
7
#include "
uLang/Common/Containers/UniquePointer.h
"
8
#include "
uLang/Common/Text/Symbol.h
"
9
#include "
uLang/CompilerPasses/SemanticAnalyzerPassUtils.h
"
10
11
namespace
Verse
{
namespace
Vst
{
struct
Project
; } }
12
13
namespace
uLang
14
{
15
class
CSemanticProgram;
16
class
CSemanticAnalyzerImpl;
17
struct
SBuildContext;
18
19
constexpr
int32_t
MaxNumPersistentVarsDefault
= 4;
20
22
class
CSemanticAnalyzer
23
{
24
public
:
25
VERSECOMPILER_API
CSemanticAnalyzer
(
const
TSRef<CSemanticProgram>
&,
const
SBuildContext
&);
26
VERSECOMPILER_API
~CSemanticAnalyzer
();
27
28
VERSECOMPILER_API
bool
ProcessVst
(
const
Verse::Vst::Project
&
Vst
,
const
ESemanticPass
Stage)
const
;
29
30
VERSECOMPILER_API
const
TSRef<CSemanticProgram>
&
GetSemanticProgram
()
const
;
31
32
private
:
33
TURef<CSemanticAnalyzerImpl>
_SemaImpl;
34
};
35
36
}
// namespace uLang
StaticCastSharedRef
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition
SharedPointer.h:127
SemanticAnalyzerPassUtils.h
SharedPointer.h
Symbol.h
ReadyMask::Project
@ Project
UniquePointer.h
uLang::CSemanticAnalyzer
Stand-alone semantic analyzer, converts from a syntax program to a semantic program.
Definition
SemanticAnalyzer.h:23
uLang::CSemanticAnalyzer::GetSemanticProgram
VERSECOMPILER_API const TSRef< CSemanticProgram > & GetSemanticProgram() const
Definition
SemanticAnalyzer.cpp:20741
uLang::CSemanticAnalyzer::~CSemanticAnalyzer
VERSECOMPILER_API ~CSemanticAnalyzer()
Definition
SemanticAnalyzer.cpp:20685
uLang::CSemanticAnalyzer::ProcessVst
VERSECOMPILER_API bool ProcessVst(const Verse::Vst::Project &Vst, const ESemanticPass Stage) const
Definition
SemanticAnalyzer.cpp:20692
uLang::TSPtrG
Definition
SharedPointer.h:77
uLang::TUPtrG
Definition
UniquePointer.h:15
Verse::Vst
Definition
tLang.cpp:1785
Verse
Definition
Archive.h:36
uLang
Definition
VVMEngineEnvironment.h:23
uLang::ESemanticPass
ESemanticPass
Definition
SemanticAnalyzerPassUtils.h:7
uLang::MaxNumPersistentVarsDefault
constexpr int32_t MaxNumPersistentVarsDefault
Definition
SemanticAnalyzer.h:19
Verse::Vst::Project
Definition
VstNode.h:1000
uLang::SBuildContext
Definition
CompilerTypes.h:170
Engine
Source
Runtime
VerseCompiler
Public
uLang
SemanticAnalyzer
SemanticAnalyzer.h
Generated by
1.9.8