souffle
2.0.2-371-g6315b36
|
Runs the first stage of the labelling algorithm. More...
#include <MagicSet.h>
Public Member Functions | |
NegativeLabellingTransformer * | clone () const override |
std::string | getName () const override |
Public Member Functions inherited from souffle::ast::transform::Transformer | |
bool | apply (TranslationUnit &translationUnit) |
virtual | ~Transformer ()=default |
Private Member Functions | |
bool | transform (TranslationUnit &translationUnit) override |
Static Private Member Functions | |
static QualifiedName | getNegativeLabel (const QualifiedName &name) |
Provide a unique name for negatively-labelled relations. More... | |
Runs the first stage of the labelling algorithm.
Separates out negated appearances of relations from the main SCC graph, preventing them from affecting stratification once magic dependencies are added.
Definition at line 185 of file MagicSet.h.
|
inlineoverridevirtual |
Implements souffle::ast::transform::Transformer.
Definition at line 191 of file MagicSet.h.
|
inlineoverridevirtual |
Implements souffle::ast::transform::Transformer.
Definition at line 187 of file MagicSet.h.
|
staticprivate |
Provide a unique name for negatively-labelled relations.
Definition at line 781 of file MagicSet.cpp.
References souffle::test::count(), and souffle::ast::QualifiedName::prepend().
|
overrideprivatevirtual |
Implements souffle::ast::transform::Transformer.
Definition at line 801 of file MagicSet.cpp.