souffle
2.0.2-371-g6315b36
|
Go to the documentation of this file.
45 class TranslationUnit {
53 template <
class Analysis>
56 std::string name = Analysis::name;
65 if (!isA<analysis::PrecedenceGraphAnalysis>(
analyses[name].
get()) &&
66 !isA<analysis::SCCGraphAnalysis>(
analyses[name].
get())) {
74 return dynamic_cast<Analysis*
>(
analyses[name].get());
79 assert(
program &&
"NULL program");
100 mutable std::map<std::string, Own<analysis::Analysis>>
analyses;
Class representing a section of a HTML report.
void invalidateAnalyses() const
Destroy all cached analyses of translation unit.
l j a showGridBackground &&c b raw series this eventEmitter e
Own< Program > program
AST program.
void addSection(DebugReportSection section)
virtual ~TranslationUnit()=default
ErrorReport & getErrorReport()
Return error report.
Class representing a HTML report, consisting of a list of sections.
constexpr auto get(span< E, S > s) -> decltype(s[N])
DebugReport & getDebugReport()
Return debug report.
std::map< std::string, Own< analysis::Analysis > > analyses
Cached analyses.
Abstract class for a AST Analysis.
Analysis * getAnalysis() const
get analysis: analysis is generated on the fly if not present
static MainConfig & config()
Program & getProgram() const
Return the program.
DebugReport & debugReport
HTML debug report.
ErrorReport & errorReport
Error report capturing errors while compiling.
class souffle::profile::Tui ss
TranslationUnit(Own< Program > program, ErrorReport &e, DebugReport &d)