souffle
2.0.2-371-g6315b36
|
Analysis pass identifying clauses which are recursive. More...
#include <RecursiveClauses.h>
Public Member Functions | |
void | print (std::ostream &os) const override |
print the analysis result in HTML format More... | |
bool | recursive (const Clause *clause) const |
RecursiveClausesAnalysis () | |
void | run (const TranslationUnit &translationUnit) override |
run analysis for a Ast translation unit More... | |
Public Member Functions inherited from souffle::ast::analysis::Analysis | |
Analysis (std::string identifier) | |
virtual const std::string & | getName () const |
get name of the analysis More... | |
virtual | ~Analysis ()=default |
Static Public Attributes | |
static constexpr const char * | name = "recursive-clauses" |
Private Member Functions | |
bool | computeIsRecursive (const Clause &clause, const TranslationUnit &translationUnit) const |
Determines whether the given clause is recursive within the given program. More... | |
Private Attributes | |
std::set< const Clause * > | recursiveClauses |
Additional Inherited Members | |
Protected Attributes inherited from souffle::ast::analysis::Analysis | |
const std::string | identifier |
Analysis pass identifying clauses which are recursive.
Definition at line 44 of file RecursiveClauses.h.
|
inline |
Definition at line 48 of file RecursiveClauses.h.
|
private |
Determines whether the given clause is recursive within the given program.
Definition at line 58 of file RecursiveClauses.cpp.
References rel().
|
overridevirtual |
print the analysis result in HTML format
Reimplemented from souffle::ast::analysis::Analysis.
Definition at line 54 of file RecursiveClauses.cpp.
|
inline |
Definition at line 54 of file RecursiveClauses.h.
|
overridevirtual |
run analysis for a Ast translation unit
Implements souffle::ast::analysis::Analysis.
Definition at line 45 of file RecursiveClauses.cpp.
References recursiveClauses.
|
staticconstexpr |
Definition at line 46 of file RecursiveClauses.h.
|
private |
Definition at line 59 of file RecursiveClauses.h.
Referenced by run().