Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
Aleph::Compiler_Type_Decl Struct Reference

Abstract base class for top-level type declarations. More...

#include <Compiler_AST.H>

Inheritance diagram for Aleph::Compiler_Type_Decl:
[legend]
Collaboration diagram for Aleph::Compiler_Type_Decl:
[legend]

Public Member Functions

 Compiler_Type_Decl (const Compiler_Type_Decl_Kind k=Compiler_Type_Decl_Kind::Invalid, const Source_Span &kw={}, std::string value="", const Source_Span &name_sp={}, const Source_Span &sp={}) noexcept
 Constructs a type-declaration base node.
 
- Public Member Functions inherited from Aleph::Compiler_Ast_Node
 Compiler_Ast_Node (const Source_Span &sp={}) noexcept
 Constructs a node with an optional span.
 
virtual ~Compiler_Ast_Node () noexcept=default
 Virtual destructor to ensure proper cleanup of derived nodes.
 

Public Attributes

Compiler_Type_Decl_Kind kind = Compiler_Type_Decl_Kind::Invalid
 Specific declaration variant.
 
Source_Span keyword_span
 Span of the introducing keyword.
 
std::string name
 Declared type name.
 
Source_Span name_span
 Span of the declared type name.
 
- Public Attributes inherited from Aleph::Compiler_Ast_Node
Source_Span span
 Source region covered by this node.
 

Detailed Description

Abstract base class for top-level type declarations.

Definition at line 624 of file Compiler_AST.H.

Constructor & Destructor Documentation

◆ Compiler_Type_Decl()

Aleph::Compiler_Type_Decl::Compiler_Type_Decl ( const Compiler_Type_Decl_Kind  k = Compiler_Type_Decl_Kind::Invalid,
const Source_Span &  kw = {},
std::string  value = "",
const Source_Span &  name_sp = {},
const Source_Span &  sp = {} 
)
inlinenoexcept

Constructs a type-declaration base node.

Definition at line 632 of file Compiler_AST.H.

Member Data Documentation

◆ keyword_span

Source_Span Aleph::Compiler_Type_Decl::keyword_span

Span of the introducing keyword.

Definition at line 627 of file Compiler_AST.H.

◆ kind

Compiler_Type_Decl_Kind Aleph::Compiler_Type_Decl::kind = Compiler_Type_Decl_Kind::Invalid

Specific declaration variant.

Definition at line 626 of file Compiler_AST.H.

◆ name

std::string Aleph::Compiler_Type_Decl::name

Declared type name.

Definition at line 628 of file Compiler_AST.H.

Referenced by Aleph::Compiler_Ast_Detail::dump_type_decl().

◆ name_span

Source_Span Aleph::Compiler_Type_Decl::name_span

Span of the declared type name.

Definition at line 629 of file Compiler_AST.H.


The documentation for this struct was generated from the following file: