souffle
2.0.2-371-g6315b36
|
Translation unit class for the translation pipeline. More...
#include <TranslationUnit.h>
Public Member Functions | |
template<class Analysis > | |
Analysis * | getAnalysis () const |
get analysis: analysis is generated on the fly if not present More... | |
DebugReport & | getDebugReport () |
Return debug report. More... | |
ErrorReport & | getErrorReport () |
Return error report. More... | |
Program & | getProgram () const |
Return the program. More... | |
void | invalidateAnalyses () const |
Destroy all cached analyses of translation unit. More... | |
TranslationUnit (Own< Program > program, ErrorReport &e, DebugReport &d) | |
virtual | ~TranslationUnit ()=default |
Private Attributes | |
std::map< std::string, Own< analysis::Analysis > > | analyses |
Cached analyses. More... | |
DebugReport & | debugReport |
HTML debug report. More... | |
ErrorReport & | errorReport |
Error report capturing errors while compiling. More... | |
Own< Program > | program |
AST program. More... | |
Translation unit class for the translation pipeline.
The translation unit class consisting of an symbol table, AST program, error reports, and cached analysis results.
Definition at line 51 of file TranslationUnit.h.
|
inline |
Definition at line 53 of file TranslationUnit.h.
References analyses, and souffle::Global::config().
|
virtualdefault |
|
inline |
get analysis: analysis is generated on the fly if not present
Definition at line 60 of file TranslationUnit.h.
Referenced by souffle::ast::transform::IOAttributesTransformer::clone(), and souffle::ast::transform::MagicSetTransformer::LabelDatabaseTransformer::isNegativelyLabelled().
|
inline |
Return debug report.
Definition at line 100 of file TranslationUnit.h.
|
inline |
|
inline |
Return the program.
Definition at line 84 of file TranslationUnit.h.
References errorReport.
Referenced by souffle::ast::transform::IOAttributesTransformer::clone(), souffle::ast::transform::MagicSetTransformer::LabelDatabaseTransformer::isNegativelyLabelled(), and souffle::ast::transform::IODefaultsTransformer::transform().
|
inline |
Destroy all cached analyses of translation unit.
Definition at line 95 of file TranslationUnit.h.
|
mutableprivate |
|
private |
HTML debug report.
Definition at line 115 of file TranslationUnit.h.
|
private |
Error report capturing errors while compiling.
Definition at line 112 of file TranslationUnit.h.
Referenced by getProgram().
AST program.
Definition at line 109 of file TranslationUnit.h.