mirror of
https://github.com/Z3Prover/z3
synced 2025-05-03 22:05:45 +00:00
move user propagte declare to context level
declaration of user propagate functions are declared at context level instead of at solver scope.
This commit is contained in:
parent
4856581b68
commit
f0740bdf60
17 changed files with 92 additions and 324 deletions
|
@ -6679,17 +6679,21 @@ extern "C" {
|
|||
|
||||
/**
|
||||
* \brief register a callback when a new expression with a registered function is used by the solver
|
||||
* The registered function appears at the top level and is created using \c Z3_solver_declare.
|
||||
* The registered function appears at the top level and is created using \ref Z3_propagate_solver_declare.
|
||||
*/
|
||||
void Z3_API Z3_solver_propagate_created(Z3_context c, Z3_solver s, Z3_created_eh created_eh);
|
||||
|
||||
/**
|
||||
\brief Create a registered function. Expressions used by the solver \c s that uses the registered function
|
||||
at top level cause the callback propagate_created to be invoked.
|
||||
Create uninterpreted function declaration for the user propagator.
|
||||
When expressions using the function are created by the solver invoke a callback
|
||||
to \ref \Z3_solver_progate_created with arguments
|
||||
1. context and callback solve
|
||||
2. declared_expr: expression using function that was used as the top-level symbol
|
||||
3. declared_id: a unique identifier (unique within the current scope) to track the expression.
|
||||
|
||||
def_API('Z3_solver_propagate_declare', FUNC_DECL, (_in(CONTEXT), _in(SOLVER), _in(SYMBOL), _in(UINT), _in_array(3, SORT), _in(SORT)))
|
||||
def_API('Z3_solver_propagate_declare', FUNC_DECL, (_in(CONTEXT), _in(SYMBOL), _in(UINT), _in_array(2, SORT), _in(SORT)))
|
||||
*/
|
||||
Z3_func_decl Z3_API Z3_solver_propagate_declare(Z3_context c, Z3_solver s, Z3_symbol name, unsigned n, Z3_sort* domain, Z3_sort range);
|
||||
Z3_func_decl Z3_API Z3_solver_propagate_declare(Z3_context c, Z3_symbol name, unsigned n, Z3_sort* domain, Z3_sort range);
|
||||
|
||||
/**
|
||||
\brief register an expression to propagate on with the solver.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue