Navigation
API > API/Runtime > API/Runtime/VerseCompiler
A scope that can contain definitions
| Name | CLogicalScope |
| Type | class |
| Header File | /Engine/Source/Runtime/VerseCompiler/Public/uLang/Semantics/SemanticScope.h |
| Include Path | #include "uLang/Semantics/SemanticScope.h" |
Syntax
class CLogicalScope : public uLang::CScope
Inheritance Hierarchy
- CScope → CLogicalScope
Derived Classes
CLogicalScope derived class hierarchy
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
CLogicalScope
(
EKind Kind, |
uLang/Semantics/SemanticScope.h | ||
CLogicalScope
(
CLogicalScope&& |
uLang/Semantics/SemanticScope.h | ||
CLogicalScope
(
const CLogicalScope& |
Delete the generated move/copy constructors so that they don't require full definitions of the types referenced by TSRefArray. | uLang/Semantics/SemanticScope.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~CLogicalScope() |
uLang/Semantics/SemanticScope.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| _DefinitionNameMap | TMap< CSymbol, SmallDefinitionArray > | These definition references depend on the _Definitions array to manage lifetimes: All the definitions mapped by name since that's how we often look them up | uLang/Semantics/SemanticScope.h | |
| _Definitions | TArray< TSRef< CDefinition > > | All definitions in this scope. | uLang/Semantics/SemanticScope.h | |
| _LogicalSubScopes | TArray< const CLogicalScope * > | A collection of the _Definitions that are also logical scopes. | uLang/Semantics/SemanticScope.h | |
| _NextDefinitionOrdinal | int32_t | The next ordinal to assign to definitions within this scope. | uLang/Semantics/SemanticScope.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddDefinitionToLogicalScope
(
TSRef< CDefinition >&& NewDefinition |
uLang/Semantics/SemanticScope.h | ||
int32_t AllocateNextDefinitionOrdinal() |
Allocates an ordinal for the next definition in this scope. | uLang/Semantics/SemanticScope.h | |
SQualifier AsQualifier() |
uLang/Semantics/SemanticScope.h | ||
virtual SmallDefinitionArray FindDefinitions
(
const CSymbol& Name, |
uLang/Semantics/SemanticScope.h | ||
FilterClass * FindFirstDefinitionOfKind
(
const CSymbol& Name, |
uLang/Semantics/SemanticScope.h | ||
const CDefinition * FindOverrideFor
(
const CDefinition& Definition |
Get the matching override definition in this class for the argument, if there is any. | uLang/Semantics/SemanticScope.h | |
TMap< CSymbol, SmallDefinitionArray > & GetDefinitionNameMap() |
uLang/Semantics/SemanticScope.h | ||
const TArray< TSRef< CDefinition > > & GetDefinitions() |
uLang/Semantics/SemanticScope.h | ||
TFilteredDefinitionRange< FilterClass > GetDefinitionsOfKind() |
uLang/Semantics/SemanticScope.h | ||
SemanticRevision GetRevision() |
uLang/Semantics/SemanticScope.h | ||
EIterateResult IterateRecurseLogicalScopes
(
const TFunction< EVisitResult(const CLogicalScope&)>& Functor |
Iterates through all the logical scopes nested inside this scope. | uLang/Semantics/SemanticScope.h | |
EIterateResult IterateRecurseLogicalScopes
(
TFunction< EVisitResult(const CLogicalScope&)>&& Functor |
uLang/Semantics/SemanticScope.h | ||
virtual void SetRevision
(
SemanticRevision Revision |
uLang/Semantics/SemanticScope.h | ||
ULANG_FORCEINLINE bool TryMarkVisited
(
VisitStampType VisitStamp |
If this scope has the given visit stamp, return false. | uLang/Semantics/SemanticScope.h |
Overridden from CScope
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual CLogicalScope * AsLogicalScopeNullable () |
uLang/Semantics/SemanticScope.h | ||
virtual const CLogicalScope * AsLogicalScopeNullable () |
Iff this scope is a logical scope, return it a pointer to it. Otherwise, return null. | uLang/Semantics/SemanticScope.h |