| souffle
    2.0.2-371-g6315b36
    | 
Binary constraint class. More...
#include <BinaryConstraint.h>


| Public Member Functions | |
| void | apply (const NodeMapper &map) override | 
| BinaryConstraint (BinaryConstraintOp o, Own< Argument > ls, Own< Argument > rs, SrcLocation loc={}) | |
| BinaryConstraint * | clone () const override | 
| BinaryConstraintOp | getBaseOperator () const | 
| Return binary operator.  More... | |
| std::vector< const Node * > | getChildNodes () const override | 
| std::optional< BinaryConstraintOp > | getFinalType () const | 
| Argument * | getLHS () const | 
| Return left-hand side argument.  More... | |
| Argument * | getRHS () const | 
| Return right-hand side argument.  More... | |
| void | setBaseOperator (BinaryConstraintOp op) | 
| Set binary operator.  More... | |
| void | setFinalType (BinaryConstraintOp newType) | 
|  Public Member Functions inherited from souffle::ast::analysis::Constraint< Var > | |
| virtual bool | update (Assignment< Var > &ass) const =0 | 
| Requests the given assignment to be updated according to this constraint.  More... | |
| virtual | ~Constraint ()=default | 
| A virtual destructor.  More... | |
| Protected Member Functions | |
| bool | equal (const Node &node) const override | 
| void | print (std::ostream &os) const override | 
| Adds print support for constraints (debugging)  More... | |
| Protected Attributes | |
| std::optional< BinaryConstraintOp > | finalTranslatorType | 
| Own< Argument > | lhs | 
| Left-hand side argument of binary constraint.  More... | |
| BinaryConstraintOp | operation | 
| Constraint (base) operator.  More... | |
| Own< Argument > | rhs | 
| Right-hand side argument of binary constraint.  More... | |
Binary constraint class.
Example: x = y
A binary constraint has a constraint operator, a left-hand side expression, and right-hand side expression.
Definition at line 53 of file BinaryConstraint.h.
| 
 | inline | 
Definition at line 55 of file BinaryConstraint.h.
| 
 | inlineoverride | 
Definition at line 86 of file BinaryConstraint.h.
| 
 | inlineoverride | 
| 
 | inlineoverrideprotected | 
Definition at line 112 of file BinaryConstraint.h.
| 
 | inline | 
Return binary operator.
Definition at line 69 of file BinaryConstraint.h.
Referenced by souffle::ast::BindingStore::BindingStore(), and souffle::ast::transform::FoldAnonymousRecords::transformClause().
| 
 | inlineoverride | 
Definition at line 91 of file BinaryConstraint.h.
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inlineoverrideprotectedvirtual | 
Adds print support for constraints (debugging)
Implements souffle::ast::analysis::Constraint< Var >.
Definition at line 104 of file BinaryConstraint.h.
| 
 | inline | 
Set binary operator.
Definition at line 74 of file BinaryConstraint.h.
References souffle::detail::brie::copy(), and finalTranslatorType.

| 
 | inline | 
Definition at line 95 of file BinaryConstraint.h.
| 
 | protected | 
Definition at line 128 of file BinaryConstraint.h.
Referenced by setBaseOperator().
Left-hand side argument of binary constraint.
Definition at line 122 of file BinaryConstraint.h.
Referenced by apply(), and getFinalType().
| 
 | protected | 
Constraint (base) operator.
Definition at line 119 of file BinaryConstraint.h.
Referenced by getFinalType().
Right-hand side argument of binary constraint.
Definition at line 125 of file BinaryConstraint.h.
Referenced by apply(), and getFinalType().
 1.8.17
 1.8.17