3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-22 19:17:53 +00:00

streamlining expr-inverter code

This commit is contained in:
Nikolaj Bjorner 2022-11-13 11:48:32 -08:00
parent 3d570aaa0a
commit ce76e3138d
2 changed files with 19 additions and 21 deletions

View file

@ -40,13 +40,12 @@ public:
virtual bool operator()(func_decl* f, unsigned n, expr* const* args, expr_ref& new_expr, expr_ref& side_cond) = 0;
virtual bool mk_diff(expr* t, expr_ref& r) = 0;
virtual family_id get_fid() const = 0;
};
class expr_inverter : public iexpr_inverter {
ptr_vector<iexpr_inverter> m_inverters;
bool is_converted(func_decl* f, unsigned num, expr* const* args);
public:
expr_inverter(ast_manager& m);
~expr_inverter() override;
@ -54,4 +53,5 @@ public:
bool mk_diff(expr* t, expr_ref& r) override;
void set_is_var(std::function<bool(expr*)>& is_var) override;
void set_model_converter(generic_model_converter* mc) override;
family_id get_fid() const override { return null_family_id; }
};