virtual void operator()(expr * t, expr_ref & result, proof_ref & result_pr, expr_dependency_ref & result_dep) { result_dep = 0; m_replacer.operator()(t, result, result_pr); if (m_cfg.m_used_dependencies != 0) { result_dep = m_cfg.m_used_dependencies; m_replacer.reset(); // reset cache m_cfg.m_used_dependencies = 0; } }
virtual void set_substitution(expr_substitution * s) { m_replacer.cleanup(); m_replacer.cfg().m_subst = s; }
virtual ast_manager & m() const { return m_replacer.m(); }
virtual unsigned get_num_steps() const { return m_replacer.get_num_steps(); }
virtual void set_cancel(bool f) { m_replacer.set_cancel(f); }
virtual void reset() { m_replacer.reset(); }