souffle
2.0.2-371-g6315b36
|
An assignment maps a list of variables to values of their respective property space. More...
#include <ConstraintSystem.h>
Public Types | |
using | iterator = typename data_type::const_iterator |
Public Member Functions | |
Assignment () | |
Creates a new, empty assignment. More... | |
iterator | begin () const |
Allows to iterate over the maplets defining this assignment. More... | |
iterator | end () const |
Allows to iterate over the maplets defining this assignment. More... | |
value_type & | operator[] (const Var &var) |
Looks up the value associated to the given variable. More... | |
const value_type & | operator[] (const Var &var) const |
Looks up the value associated to the given variable. More... | |
void | print (std::ostream &out) const |
Adds print support. More... | |
Private Types | |
using | bottom_factory_type = typename property_space::bottom_factory_type |
using | data_type = typename std::map< Var, value_type > |
using | property_space = typename Var::property_space |
using | value_type = typename property_space::value_type |
Private Attributes | |
value_type | bottom |
a copy of the value assigned to all unmapped variables More... | |
data_type | data |
the actual mapping of variables to values More... | |
Friends | |
std::ostream & | operator<< (std::ostream &out, const Assignment &ass) |
Adds print support. More... | |
An assignment maps a list of variables to values of their respective property space.
Var | the kind of variable forming the domain of this assignment |
Definition at line 47 of file ConstraintSystem.h.
|
private |
Definition at line 293 of file ConstraintSystem.h.
|
private |
Definition at line 295 of file ConstraintSystem.h.
using souffle::ast::analysis::Assignment< Var >::iterator = typename data_type::const_iterator |
Definition at line 304 of file ConstraintSystem.h.
|
private |
Definition at line 291 of file ConstraintSystem.h.
|
private |
Definition at line 292 of file ConstraintSystem.h.
|
inline |
|
inline |
Allows to iterate over the maplets defining this assignment.
Definition at line 352 of file ConstraintSystem.h.
|
inline |
Allows to iterate over the maplets defining this assignment.
Definition at line 357 of file ConstraintSystem.h.
|
inline |
Looks up the value associated to the given variable.
Every Assignment is a total mapping assigning each variable in the domain of type {Var} a value of its property space. If not defined earlier, it will be bound to the bottom value.
var | the variable whose value is required |
Definition at line 332 of file ConstraintSystem.h.
|
inline |
Looks up the value associated to the given variable.
Every Assignment is a total mapping assigning each variable in the domain of type {Var} a value of its property space. If not defined earlier, it will be the bottom value.
var | the variable whose value is required |
Definition at line 318 of file ConstraintSystem.h.
|
inline |
|
friend |
Adds print support.
Definition at line 346 of file ConstraintSystem.h.
|
private |
a copy of the value assigned to all unmapped variables
Definition at line 298 of file ConstraintSystem.h.
Referenced by souffle::ast::analysis::Assignment< TypeVar >::Assignment(), and souffle::ast::analysis::Assignment< TypeVar >::operator[]().
|
private |
the actual mapping of variables to values
Definition at line 301 of file ConstraintSystem.h.
Referenced by souffle::ast::analysis::Assignment< TypeVar >::Assignment(), and souffle::ast::analysis::Assignment< TypeVar >::operator[]().