mirror of
https://github.com/Z3Prover/z3
synced 2025-08-13 14:40:55 +00:00
add on_binding callbacks across APIs
update release notes, add to Java, .Net, C++
This commit is contained in:
parent
30830aae75
commit
fa3d341b18
6 changed files with 90 additions and 1 deletions
|
@ -641,6 +641,7 @@ def mk_java(java_src, java_dir, package_name):
|
|||
public static native void propagateRegisterEq(Object o, long ctx, long solver);
|
||||
public static native void propagateRegisterDecide(Object o, long ctx, long solver);
|
||||
public static native void propagateRegisterFinal(Object o, long ctx, long solver);
|
||||
public static native void propagateRegisterOnBinding(Object o, long ctx, long solver);
|
||||
public static native void propagateAdd(Object o, long ctx, long solver, long javainfo, long e);
|
||||
public static native boolean propagateConsequence(Object o, long ctx, long solver, long javainfo, int num_fixed, long[] fixed, long num_eqs, long[] eq_lhs, long[] eq_rhs, long conseq);
|
||||
public static native boolean propagateNextSplit(Object o, long ctx, long solver, long javainfo, long e, long idx, int phase);
|
||||
|
@ -684,6 +685,10 @@ def mk_java(java_src, java_dir, package_name):
|
|||
protected final void registerFinal() {
|
||||
Native.propagateRegisterFinal(this, ctx, solver);
|
||||
}
|
||||
|
||||
protected final void registerOnBinding() {
|
||||
Native.propagateRegisterOnBinding(this, ctx, solver);
|
||||
}
|
||||
|
||||
protected abstract void pushWrapper();
|
||||
|
||||
|
@ -700,6 +705,8 @@ def mk_java(java_src, java_dir, package_name):
|
|||
protected abstract void fixedWrapper(long lvar, long lvalue);
|
||||
|
||||
protected abstract void decideWrapper(long lvar, int bit, boolean is_pos);
|
||||
|
||||
protected abstract boolean onBindingWrapper(long q, long inst);
|
||||
}
|
||||
""")
|
||||
java_native.write('\n')
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue