Navigation
API > API/Runtime > API/Runtime/VerseCompiler > API/Runtime/VerseCompiler/uLang > API/Runtime/VerseCompiler/uLang/Semantics
Inheritance Hierarchy
- CDefinition
- CClass
- CClassDefinition
- CScopedAccessLevelDefinition
References
| Module | VerseCompiler |
| Header | /Engine/Source/Runtime/VerseCompiler/Public/uLang/Semantics/ScopedAccessLevelType.h |
| Include | #include "uLang/Semantics/ScopedAccessLevelType.h" |
Syntax
class CScopedAccessLevelDefinition : public uLang::CClassDefinition
Remarks
AccessLevelDefinition type HACK! This is convoluted, but attributes need to be CClass types because the semantic attribute processing demands it right now HACK! CClass expects its associated definition to be a CClassDefinition type, so our CScopedAccessLevelDefinition also needs to be a CClassDefinition type HACK! Ordinarily, we could just use CClassDefinition directly without this extra child type, except the CClassDefinition linkage to the AST demands HACK! that the CExpr* type be CExprClassDefinition even though it ultimately relaxes to CExpressionBase.
Variables
Constructors
| Type | Name | Description | |
|---|---|---|---|
CScopedAccessLevelDefinition
(
TOptional< CSymbol > ClassName, |
Functions
| Type | Name | Description | |
|---|---|---|---|
| CExprScopedAccessLevelDefinition * | GetAstNode () |
||
| CExprScopedAccessLevelDefinition * | GetIrNode
(
bool bForce |
||
| void | SetAstNode
(
CExprScopedAccessLevelDefinition* AstNode |
CDefinition interface glue. | |
| void | SetIrNode
(
CExprScopedAccessLevelDefinition* AstNode |
Overridden from CTypeBase
| Type | Name | Description | |
|---|---|---|---|
| CUTF8String | AsCodeRecursive
(
ETypeSyntaxPrecedence OuterPrecedence, |