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

Reusable namespace-separated semantic environment for modules. More...

#include <sstream>
#include <string>
#include <string_view>
#include <Compiler_Module_Name_Table.H>
Include dependency graph for Compiler_Module_Semantic_Environment.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_Semantic_Module
 One namespace-separated semantic environment for a module. More...
 
struct  Aleph::Compiler_Module_Semantic_Environment
 Semantic environments for all modules in one compilation unit set. More...
 

Namespaces

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

Functions

void Aleph::Compiler_Module_Semantic_Environment_Detail::append_unique_name (DynArray< std::string > &names, const std::string &name)
 
Compiler_Module_Semantic_Environment Aleph::compiler_build_module_semantic_environment (const Compiler_Module_Name_Table &table)
 Builds one namespace-separated semantic environment from a name table.
 
const Compiler_Module_Semantic_Module * Aleph::compiler_find_module_semantic_environment (const Compiler_Module_Semantic_Environment &env, const std::string_view module_name) noexcept
 Finds one semantic environment by module name.
 
const Compiler_Module_Bound_Name * Aleph::compiler_lookup_module_value (const Compiler_Module_Semantic_Environment &env, const std::string_view module_name, const std::string_view symbol_name) noexcept
 Looks up one visible value-namespace binding in a module environment.
 
const Compiler_Module_Bound_Name * Aleph::compiler_lookup_module_type (const Compiler_Module_Semantic_Environment &env, const std::string_view module_name, const std::string_view symbol_name) noexcept
 Looks up one visible type-namespace binding in a module environment.
 
std::string Aleph::compiler_render_module_semantic_environment (const Compiler_Module_Semantic_Environment &env)
 Renders one deterministic text artifact for semantic environments.
 

Detailed Description

Reusable namespace-separated semantic environment for modules.

This header derives one semantic environment per module from Compiler_Module_Name_Table.H. Each environment exposes separate value and type namespaces so frontends can consume imported symbols without rebuilding that split from raw bindings on every run.

Definition in file Compiler_Module_Semantic_Environment.H.