souffle
2.0.2-371-g6315b36
|
#include <ParserUtils.h>
Data Structures | |
struct | literal |
Public Member Functions | |
void | conjunct (RuleBody other) |
void | disjunct (RuleBody other) |
RuleBody | negated () const |
RuleBody & | operator= (RuleBody &&)=default |
RuleBody ()=default | |
RuleBody (RuleBody &&)=default | |
VecOwn< ast::Clause > | toClauseBodies () const |
Static Public Member Functions | |
static RuleBody | atom (Own< ast::Atom > atom) |
static RuleBody | constraint (Own< ast::Constraint > constraint) |
static RuleBody | getFalse () |
static RuleBody | getTrue () |
Private Types | |
using | clause = std::vector< literal > |
Static Private Member Functions | |
static bool | equal (const clause &a, const clause &b) |
static bool | equal (const literal &a, const literal &b) |
static void | insert (clause &cl, literal &&lit) |
static void | insert (std::vector< clause > &cnf, clause &&cls) |
static bool | isSubsetOf (const clause &a, const clause &b) |
Private Attributes | |
std::vector< clause > | dnf |
Friends | |
std::ostream & | operator<< (std::ostream &out, const RuleBody &body) |
Definition at line 36 of file ParserUtils.h.
|
private |
Definition at line 84 of file ParserUtils.h.
|
default |
Referenced by getTrue().
|
default |
Definition at line 139 of file ParserUtils.cpp.
References constraint(), and dnf.
Referenced by getFalse(), and toClauseBodies().
void souffle::RuleBody::conjunct | ( | RuleBody | other | ) |
Definition at line 58 of file ParserUtils.cpp.
|
static |
Definition at line 146 of file ParserUtils.cpp.
References dnf, and souffle::join().
Referenced by atom().
void souffle::RuleBody::disjunct | ( | RuleBody | other | ) |
Definition at line 168 of file ParserUtils.cpp.
Definition at line 164 of file ParserUtils.cpp.
|
static |
Definition at line 135 of file ParserUtils.cpp.
References atom().
|
static |
Definition at line 129 of file ParserUtils.cpp.
References RuleBody().
Definition at line 206 of file ParserUtils.cpp.
Definition at line 215 of file ParserUtils.cpp.
Definition at line 187 of file ParserUtils.cpp.
RuleBody souffle::RuleBody::negated | ( | ) | const |
Definition at line 42 of file ParserUtils.cpp.
References souffle::clone(), and souffle::RuleBody::literal::negated.
VecOwn< ast::Clause > souffle::RuleBody::toClauseBodies | ( | ) | const |
Definition at line 96 of file ParserUtils.cpp.
References atom(), base, souffle::clone(), and souffle::ast::negateConstraintInPlace().
|
friend |
Definition at line 153 of file ParserUtils.cpp.
|
private |
Definition at line 86 of file ParserUtils.h.
Referenced by atom(), constraint(), and disjunct().