3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-02-28 19:01:29 +00:00

pretty printing

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2021-06-20 09:49:31 -07:00
parent 4bcfcecbbb
commit 4066087138
4 changed files with 42 additions and 4 deletions

View file

@ -52,6 +52,8 @@ namespace polysat {
friend class conflict_explainer;
friend class forbidden_intervals;
friend class linear_solver;
friend class assignment_pp;
friend class assignments_pp;
typedef ptr_vector<constraint> constraints;
@ -380,8 +382,28 @@ namespace polysat {
};
class assignments_pp {
solver& s;
public:
assignments_pp(solver& s): s(s) {}
std::ostream& display(std::ostream& out) const;
};
class assignment_pp {
solver& s;
pvar var;
rational const& val;
public:
assignment_pp(solver& s, pvar var, rational const& val): s(s), var(var), val(val) {}
std::ostream& display(std::ostream& out) const;
};
inline std::ostream& operator<<(std::ostream& out, solver const& s) { return s.display(out); }
inline std::ostream& operator<<(std::ostream& out, assignment_pp const& p) { return p.display(out); }
inline std::ostream& operator<<(std::ostream& out, assignments_pp const& a) { return a.display(out); }
}