setOnReduceAssign method

void setOnReduceAssign(
  1. List<AST> f(
    1. List<AST> args,
    2. List<AST> outs
    )?
)

Implementation

void setOnReduceAssign(
    List<AST> Function(List<AST> args, List<AST> outs)? f) {
  if (f == null && _onReduceAssign != null) {
    _c._z3.fixedpoint_set_reduce_assign_callback(
      _fp,
      nullptr,
    );
    _onReduceAssign = null;
  } else if (f != null && _onReduceAssign == null) {
    _c._z3.fixedpoint_set_reduce_assign_callback(
      _fp,
      Pointer.fromFunction<
          Void Function(
            Pointer<Void>,
            Z3_func_decl,
            UnsignedInt,
            Pointer<Z3_ast>,
            UnsignedInt,
            Pointer<Z3_ast>,
          )>(_onReduceAssignCallback),
    );
  }
  _onReduceAssign = f;
}