3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-05-03 13:55:47 +00:00
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2018-10-23 08:16:26 -07:00
parent fac114872f
commit aa6e1badf2
9 changed files with 95 additions and 33 deletions

View file

@ -1562,6 +1562,9 @@ public:
// Equivalent to throw ast_exception(msg)
Z3_NORETURN void raise_exception(char const * msg);
Z3_NORETURN void raise_exception(std::string const& s);
std::ostream& display(std::ostream& out, parameter const& p);
bool is_format_manager() const { return m_format_manager == nullptr; }
@ -2498,6 +2501,16 @@ public:
void mark(ast * n, bool flag) { if (flag) mark(n); else reset_mark(n); }
};
struct parameter_pp {
parameter const& p;
ast_manager& m;
parameter_pp(parameter const& p, ast_manager& m): p(p), m(m) {}
};
inline std::ostream& operator<<(std::ostream& out, parameter_pp const& pp) {
return pp.m.display(out, pp.p);
}
typedef ast_ref_fast_mark<1> ast_ref_fast_mark1;
typedef ast_ref_fast_mark<2> ast_ref_fast_mark2;
typedef ast_ref_fast_mark1 expr_ref_fast_mark1;