| 
| 
  | Model (const Model &)=default | 
|   | 
| 
  | Model (Model &&)=default | 
|   | 
| 
  | Model (SymbolicMapping symbolicMap) | 
|   | A model is initialized with a symbolic map. Usually, these are derived from the solver. 
  | 
|   | 
| const IR::Literal *  | evaluate (const IR::Expression *expr, bool doComplete, ExpressionMap *resolvedExpressions=nullptr) const | 
|   | 
| 
const IR::BaseListExpression *  | evaluateListExpr (const IR::BaseListExpression *listExpr, bool doComplete, ExpressionMap *resolvedExpressions=nullptr) const | 
|   | 
| 
const IR::StructExpression *  | evaluateStructExpr (const IR::StructExpression *structExpr, bool doComplete, ExpressionMap *resolvedExpressions=nullptr) const | 
|   | 
| const IR::Expression *  | get (const IR::SymbolicVariable *var, bool checked) const | 
|   | 
| const SymbolicMapping &  | getSymbolicMap () const | 
|   | 
| 
void  | mergeMap (const SymbolicMapping &sourceMap) | 
|   | Merge a sumbolic map into this model, do NOT override existing values. 
  | 
|   | 
| 
Model &  | operator= (const Model &)=default | 
|   | 
| 
Model &  | operator= (Model &&)=default | 
|   | 
| void  | set (const IR::SymbolicVariable *var, const IR::Expression *val) | 
|   | 
Represents a solution found by the solver. A model is a concretized form of a symbolic environment. All the expressions in a Model must be of type IR::Literal.