souffle
2.0.2-371-g6315b36
|
A problem is a list of constraints for which a solution is desired. More...
#include <ConstraintSystem.h>
Public Member Functions | |
void | add (const constraint_ptr &constraint) |
Adds another constraint to the internally maintained list of constraints. More... | |
void | print (std::ostream &out) const |
Enables a problem to be printed (debugging) More... | |
Assignment< Var > | solve () const |
Computes a solution (minimum fixpoint) for the contained list of constraints. More... | |
Assignment< Var > & | solve (Assignment< Var > &assignment) const |
Computes a solution (minimum fixpoint) for the contained list of constraints based on an initial assignment. More... | |
Private Types | |
using | constraint = Constraint< Var > |
using | constraint_ptr = std::shared_ptr< constraint > |
Private Attributes | |
std::vector< constraint_ptr > | constraints |
The list of covered constraints. More... | |
Friends | |
std::ostream & | operator<< (std::ostream &out, const Problem &p) |
A problem is a list of constraints for which a solution is desired.
Var | the domain of variables handled by this problem |
Definition at line 50 of file ConstraintSystem.h.
|
private |
Definition at line 374 of file ConstraintSystem.h.
|
private |
Definition at line 375 of file ConstraintSystem.h.
|
inline |
Adds another constraint to the internally maintained list of constraints.
Definition at line 384 of file ConstraintSystem.h.
|
inline |
Enables a problem to be printed (debugging)
Definition at line 419 of file ConstraintSystem.h.
|
inline |
Computes a solution (minimum fixpoint) for the contained list of constraints.
Definition at line 394 of file ConstraintSystem.h.
Referenced by souffle::ast::analysis::Problem< TypeVar >::add(), and souffle::ast::analysis::ConstraintAnalysis< TypeVar >::collectConstraints().
|
inline |
Computes a solution (minimum fixpoint) for the contained list of constraints based on an initial assignment.
Definition at line 405 of file ConstraintSystem.h.
|
friend |
Definition at line 427 of file ConstraintSystem.h.
|
private |
The list of covered constraints.
Definition at line 378 of file ConstraintSystem.h.
Referenced by souffle::ast::analysis::Assignment< TypeVar >::end(), and souffle::ast::analysis::Problem< TypeVar >::solve().