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

Result of one C backend emission request. More...

#include <Compiler_Backend_C.H>

Collaboration diagram for Aleph::Compiler_C_Backend_Emission:
[legend]

Public Member Functions

bool ok () const noexcept
 Returns whether emission finished without hard errors.
 

Public Attributes

bool valid = true
 Whether emission completed successfully.
 
DynArray< std::string > errors
 Hard emission failures.
 
DynArray< std::string > warnings
 Non-fatal findings.
 
std::string source
 Final generated C translation unit.
 
std::string c_prefix
 Shared prefix used for runtime helpers and generated symbols.
 
std::string value_type_name
 Generated C typedef name for runtime values.
 
std::string module_struct_name
 Generated C struct name for module state.
 
std::string module_init_symbol
 Generated C symbol that initializes module globals.
 
std::string dump_globals_symbol
 Generated C symbol that prints current global state.
 
std::string print_value_symbol
 Generated C symbol that prints one runtime value.
 
std::string top_level_symbol
 Generated C symbol for the lowered top-level body, if any.
 
DynArray< std::string > function_symbols
 Generated C function symbols aligned with module.functions.
 
DynArray< std::string > function_descriptor_symbols
 Generated callable descriptor symbols aligned with module.functions.
 

Detailed Description

Result of one C backend emission request.

Definition at line 84 of file Compiler_Backend_C.H.

Member Function Documentation

◆ ok()

bool Aleph::Compiler_C_Backend_Emission::ok ( ) const
inlinenoexcept

Returns whether emission finished without hard errors.

Definition at line 103 of file Compiler_Backend_C.H.

References valid.

Member Data Documentation

◆ c_prefix

std::string Aleph::Compiler_C_Backend_Emission::c_prefix

Shared prefix used for runtime helpers and generated symbols.

Definition at line 91 of file Compiler_Backend_C.H.

Referenced by Aleph::Compiler_C_Backend::Emitter::initialize_symbols().

◆ dump_globals_symbol

std::string Aleph::Compiler_C_Backend_Emission::dump_globals_symbol

Generated C symbol that prints current global state.

Definition at line 95 of file Compiler_Backend_C.H.

Referenced by Aleph::Compiler_C_Backend::Emitter::initialize_symbols().

◆ errors

DynArray<std::string> Aleph::Compiler_C_Backend_Emission::errors

Hard emission failures.

Definition at line 87 of file Compiler_Backend_C.H.

Referenced by Aleph::Compiler_C_Backend::Emitter::fail().

◆ function_descriptor_symbols

DynArray<std::string> Aleph::Compiler_C_Backend_Emission::function_descriptor_symbols

Generated callable descriptor symbols aligned with module.functions.

Definition at line 99 of file Compiler_Backend_C.H.

Referenced by Aleph::Compiler_C_Backend::Emitter::function_descriptor_symbol(), and Aleph::Compiler_C_Backend::Emitter::initialize_symbols().

◆ function_symbols

DynArray<std::string> Aleph::Compiler_C_Backend_Emission::function_symbols

Generated C function symbols aligned with module.functions.

Definition at line 98 of file Compiler_Backend_C.H.

Referenced by Aleph::Compiler_C_Backend::Emitter::function_symbol(), and Aleph::Compiler_C_Backend::Emitter::initialize_symbols().

◆ module_init_symbol

std::string Aleph::Compiler_C_Backend_Emission::module_init_symbol

Generated C symbol that initializes module globals.

Definition at line 94 of file Compiler_Backend_C.H.

Referenced by Aleph::Compiler_C_Backend::Emitter::initialize_symbols().

◆ module_struct_name

std::string Aleph::Compiler_C_Backend_Emission::module_struct_name

Generated C struct name for module state.

Definition at line 93 of file Compiler_Backend_C.H.

Referenced by Aleph::Compiler_C_Backend::Emitter::initialize_symbols().

◆ print_value_symbol

std::string Aleph::Compiler_C_Backend_Emission::print_value_symbol

Generated C symbol that prints one runtime value.

Definition at line 96 of file Compiler_Backend_C.H.

Referenced by Aleph::Compiler_C_Backend::Emitter::initialize_symbols().

◆ source

std::string Aleph::Compiler_C_Backend_Emission::source

Final generated C translation unit.

Definition at line 89 of file Compiler_Backend_C.H.

Referenced by Aleph::Compiler_Driver::emit_c(), Aleph::Compiler_Generic_Driver::emit_c(), and Aleph::Compiler_C_Backend::Emitter::run().

◆ top_level_symbol

std::string Aleph::Compiler_C_Backend_Emission::top_level_symbol

Generated C symbol for the lowered top-level body, if any.

Definition at line 97 of file Compiler_Backend_C.H.

Referenced by Aleph::Compiler_C_Backend::Emitter::initialize_symbols().

◆ valid

bool Aleph::Compiler_C_Backend_Emission::valid = true

◆ value_type_name

std::string Aleph::Compiler_C_Backend_Emission::value_type_name

Generated C typedef name for runtime values.

Definition at line 92 of file Compiler_Backend_C.H.

Referenced by Aleph::Compiler_C_Backend::Emitter::initialize_symbols().

◆ warnings

DynArray<std::string> Aleph::Compiler_C_Backend_Emission::warnings

Non-fatal findings.

Definition at line 88 of file Compiler_Backend_C.H.

Referenced by Aleph::Compiler_C_Backend::Emitter::warn().


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