souffle
2.0.2-371-g6315b36
|
Database labeller. More...
#include <MagicSet.h>
Data Structures | |
class | NegativeLabellingTransformer |
Runs the first stage of the labelling algorithm. More... | |
class | PositiveLabellingTransformer |
Runs the second stage of the labelling algorithm. More... | |
Public Member Functions | |
LabelDatabaseTransformer * | clone () const override |
std::string | getName () const override |
LabelDatabaseTransformer () | |
Public Member Functions inherited from souffle::ast::transform::PipelineTransformer | |
PipelineTransformer * | clone () const override |
void | disableTransformers (const std::set< std::string > &transforms) override |
std::string | getName () const override |
std::vector< Transformer * > | getSubtransformers () const override |
template<typename... Args> | |
PipelineTransformer (Args... args) | |
PipelineTransformer (VecOwn< Transformer > pipeline) | |
void | setDebugReport () override |
void | setVerbosity (bool verbose) override |
Public Member Functions inherited from souffle::ast::transform::MetaTransformer | |
bool | applySubtransformer (TranslationUnit &translationUnit, Transformer *transformer) |
Public Member Functions inherited from souffle::ast::transform::Transformer | |
bool | apply (TranslationUnit &translationUnit) |
virtual | ~Transformer ()=default |
Static Private Member Functions | |
static bool | isNegativelyLabelled (const QualifiedName &name) |
Check if a relation is negatively labelled. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from souffle::ast::transform::PipelineTransformer | |
bool | transform (TranslationUnit &translationUnit) override |
Protected Attributes inherited from souffle::ast::transform::PipelineTransformer | |
VecOwn< Transformer > | pipeline |
Protected Attributes inherited from souffle::ast::transform::MetaTransformer | |
bool | verbose = false |
Database labeller.
Runs the magic-set labelling algorithm. Necessary for supporting negation in MST.
Definition at line 159 of file MagicSet.h.
|
inline |
Definition at line 164 of file MagicSet.h.
Referenced by clone().
|
inlineoverridevirtual |
Implements souffle::ast::transform::MetaTransformer.
Definition at line 171 of file MagicSet.h.
References LabelDatabaseTransformer().
|
inlineoverridevirtual |
Implements souffle::ast::transform::Transformer.
Definition at line 167 of file MagicSet.h.
|
staticprivate |
Check if a relation is negatively labelled.
Definition at line 795 of file MagicSet.cpp.
References souffle::ast::TranslationUnit::getAnalysis(), and souffle::ast::TranslationUnit::getProgram().