3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-06-27 00:18:45 +00:00

adding user-propagator ability

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2020-08-17 22:39:55 -07:00
parent c13e3ce693
commit 152c95f72a
15 changed files with 305 additions and 21 deletions

View file

@ -232,6 +232,14 @@ namespace smt {
void updt_params(params_ref const & p) {
m_kernel.updt_params(p);
}
void register_user_propagator(
void* ctx,
std::function<void(void*, unsigned, expr*)>& fixed_eh,
std::function<void(void*)>& push_eh,
std::function<void(void*, unsigned)>& pop_eh) {
m_kernel.register_user_propagator(ctx, fixed_eh, push_eh, pop_eh);
}
};
kernel::kernel(ast_manager & m, smt_params & fp, params_ref const & p) {
@ -445,6 +453,14 @@ namespace smt {
return m_imp->get_implied_upper_bound(e);
}
void kernel::register_user_propagator(
void* ctx,
std::function<void(void*, unsigned, expr*)>& fixed_eh,
std::function<void(void*)>& push_eh,
std::function<void(void*, unsigned)>& pop_eh) {
m_imp->register_user_propagator(ctx, fixed_eh, push_eh, pop_eh);
}
};