Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
Compiler_Module_Name_Table.H File Reference

Reusable per-module cache for top-level name resolution. More...

#include <sstream>
#include <string>
#include <Compiler_Module_Binder.H>
Include dependency graph for Compiler_Module_Name_Table.H:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Aleph::Compiler_Module_Ambiguous_Name
 One ambiguous name tracked in a per-module name table. More...
 
struct  Aleph::Compiler_Module_Name_Table_Entry
 Cached top-level names for one module. More...
 
struct  Aleph::Compiler_Module_Name_Table
 Cached top-level name table over all visible modules. More...
 

Namespaces

namespace  Aleph
 Main namespace for Aleph-w library functions.
 
namespace  Aleph::Compiler_Module_Name_Table_Detail
 

Functions

Compiler_Module_Export_Kind Aleph::Compiler_Module_Name_Table_Detail::issue_namespace_kind (const Compiler_Module_Binding_Issue_Kind kind) noexcept
 
Compiler_Module_Name_Table Aleph::compiler_build_module_name_table (const Compiler_Module_Binding_Result &bindings)
 Builds one reusable per-module name table from bindings.
 
std::string Aleph::compiler_render_module_name_table (const Compiler_Module_Name_Table &table)
 Renders one deterministic text artifact for cached module names.
 

Detailed Description

Reusable per-module cache for top-level name resolution.

This header precomputes one deterministic name table from Compiler_Module_Binding_Result. The resulting structure is suitable for repeated semantic queries without rescanning the full binding result and its issues every time.

Definition in file Compiler_Module_Name_Table.H.