|
Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
|
Node representing a complete translation unit or module. More...
#include <Compiler_AST.H>
Public Member Functions | |
| Compiler_Module (const Source_Span &sp={}) noexcept | |
| Constructs a module 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 | |
| std::string | source_name |
| User-facing source name that produced the module. | |
| DynArray< Compiler_Import_Decl * > | imports |
| Top-level import declarations. | |
| DynArray< Compiler_Type_Decl * > | type_declarations |
| Top-level type declarations. | |
| DynArray< Compiler_Function_Decl * > | functions |
| Top-level function definitions. | |
| DynArray< Compiler_Stmt * > | statements |
| Optional top-level code. | |
Public Attributes inherited from Aleph::Compiler_Ast_Node | |
| Source_Span | span |
| Source region covered by this node. | |
Node representing a complete translation unit or module.
Aggregates one parsed source file, including top-level imports, type declarations, functions, and statements.
Definition at line 1088 of file Compiler_AST.H.
|
inlineexplicitnoexcept |
Constructs a module node.
Definition at line 1097 of file Compiler_AST.H.
| DynArray<Compiler_Function_Decl *> Aleph::Compiler_Module::functions |
Top-level function definitions.
Definition at line 1093 of file Compiler_AST.H.
Referenced by Aleph::Compiler_Semantic_Analyzer::analyze_module(), Aleph::Compiler_Typed_Semantic_Analyzer::analyze_module(), Aleph::Compiler_HIR_Lowering::lower_module(), Aleph::Compiler_Driver::merge_modules_from_order(), and Aleph::Compiler_MVP_Frontend::merge_modules_from_order().
| DynArray<Compiler_Import_Decl *> Aleph::Compiler_Module::imports |
Top-level import declarations.
Definition at line 1091 of file Compiler_AST.H.
Referenced by Aleph::compiler_dump_module().
| std::string Aleph::Compiler_Module::source_name |
User-facing source name that produced the module.
Definition at line 1090 of file Compiler_AST.H.
Referenced by Aleph::Compiler_Semantic_Analyzer::analyze_imports(), Aleph::Compiler_Driver::merge_modules_from_order(), and Aleph::Compiler_MVP_Frontend::merge_modules_from_order().
| DynArray<Compiler_Stmt *> Aleph::Compiler_Module::statements |
Optional top-level code.
Definition at line 1094 of file Compiler_AST.H.
Referenced by Aleph::Compiler_Semantic_Analyzer::analyze_module(), Aleph::Compiler_Typed_Semantic_Analyzer::analyze_module(), Aleph::compiler_dump_module(), Aleph::Compiler_HIR_Lowering::lower_module(), Aleph::Compiler_Driver::merge_modules_from_order(), and Aleph::Compiler_MVP_Frontend::merge_modules_from_order().
| DynArray<Compiler_Type_Decl *> Aleph::Compiler_Module::type_declarations |
Top-level type declarations.
Definition at line 1092 of file Compiler_AST.H.
Referenced by Aleph::compiler_dump_module(), Aleph::Compiler_Driver::merge_modules_from_order(), Aleph::Compiler_MVP_Frontend::merge_modules_from_order(), and Aleph::Compiler_Typed_Semantic_Analyzer::resolve_module_type_declarations().