![]() |
Spicy
|
#include <unit.h>
Public Member Functions | |
Unit (std::shared_ptr< Context > context) | |
void | setModule (const hilti::Module &m) |
cxx::ID | moduleID () const |
void | setUsesGlobals () |
void | add (const declaration::IncludeFile &i, const Meta &m=Meta()) |
void | add (const declaration::Global &g, const Meta &m=Meta()) |
void | add (const declaration::Constant &c, const Meta &m=Meta()) |
void | add (const declaration::Type &t, const Meta &m=Meta()) |
void | add (const declaration::Function &f, const Meta &m=Meta()) |
void | add (const Function &f, const Meta &m=Meta()) |
void | add (const std::string &stmt, const Meta &m=Meta()) |
void | add (const linker::Join &f) |
void | prioritizeType (const cxx::ID &id) |
bool | hasDeclarationFor (const cxx::ID &id) |
std::optional< cxx::declaration::Type > | lookupType (const cxx::ID &id) const |
void | addComment (const std::string &comment) |
void | addInitialization (cxx::Block block) |
void | addPreInitialization (cxx::Block block) |
Result< Nothing > | finalize () |
Result< Nothing > | print (std::ostream &out) const |
Result< Nothing > | createPrototypes (std::ostream &out) |
void | importDeclarations (const Unit &other) |
Result< linker::MetaData > | linkerMetaData () const |
cxx::ID | cxxNamespace () const |
std::shared_ptr< Context > | context () const |
Static Public Member Functions | |
static std::pair< bool, std::optional< linker::MetaData > > | readLinkerMetaData (std::istream &input) |
Protected Member Functions | |
Unit (std::shared_ptr< Context > context, cxx::ID module_id) | |
Unit (std::shared_ptr< Context > context, cxx::ID module_id, const std::string &cxx_code) | |
Friends | |
class | Linker |
One C++ code unit.