3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-08 10:25:18 +00:00
z3/scripts
Dan Liew a2376b1016 Try to fix #510. The breakage was caused by #498.
The issue here is that in Python2 ``exec`` is a statement and
``exec`` is a function in Python3. For the ``exec`` statement to
work we would need to write

```
exec line.strip(' \n') in  exec_globals, None
```

We could write a wrapper function to do the right thing depending
on the Python version but a better approach is to actually just
use ``eval()`` rather than ``exec()`` because

* ``eval()`` is less "evil" than ``exec()`` because it only evaluates
  a single expression. My testing so far seems to indicate that this is
  sufficient.

* ``eval()`` is function in both Python 2 and 3 so we don't need
  to specialise the code based on Python version.
2016-03-12 22:22:20 +00:00
..
mk_consts_files.py Move `mk_z3consts_py_internal() out of mk_util.py` into 2016-03-09 11:22:48 +00:00
mk_copyright.py tabs 2016-01-04 21:04:07 +00:00
mk_def_file.py Move `mk_def_file_internal() out of mk_util.py` into 2016-03-09 11:22:48 +00:00
mk_exception.py checkpoint 2012-10-23 12:12:59 -07:00
mk_genfile_common.py Try to fix #510. The breakage was caused by #498. 2016-03-12 22:22:20 +00:00
mk_gparams_register_modules_cpp.py Move `mk_gparams_register_modules_internal() from mk_util.py` 2016-03-09 11:22:48 +00:00
mk_install_tactic_cpp.py Move `mk_install_tactic_cpp_internal() from mk_util.py` to 2016-03-09 11:22:48 +00:00
mk_make.py Added facilities for generating a libz3.vcxproj next to z3.vcxproj for simplified DLL build in VS. 2016-01-04 21:53:24 +00:00
mk_mem_initializer_cpp.py Move `mk_mem_initializer_cpp_internal() from mk_util.py` to 2016-03-09 11:22:48 +00:00
mk_pat_db.py Move `mk_pat_db_internal() from mk_util.py` to 2016-03-09 11:22:48 +00:00
mk_project.py add outline of bv bounds tactic 2016-02-12 22:57:47 +00:00
mk_unix_dist.py build fix for non-windows platforms 2016-03-07 11:21:06 +00:00
mk_util.py Move the code for generating `*.hpp files from *.pyg from mk_util.py` to 2016-03-09 11:22:49 +00:00
mk_win_dist.py Updated build options for .NET API 2015-12-15 14:20:31 +00:00
pyg2hpp.py Move the code for generating `*.hpp files from *.pyg from mk_util.py` to 2016-03-09 11:22:49 +00:00
README updated docs 2012-10-25 18:46:37 -07:00
trackall.sh add more Copyright notes 2015-06-10 11:59:21 -07:00
update_api.py Try to improve some of the comments in `scripts/update_api.py` 2016-03-07 18:45:34 +00:00
update_header_guards.py tabs 2016-01-04 21:04:07 +00:00

Instructions for updating external Z3 API
-----------------------------------------

The python "macros": def_Type() and def_API() are used to add new types and function definitions to the Z3 API.
The .h files provided to `mk_bindings(API_files)` contain these definitions.
See src\api\z3_api.h for many examples.

The bindings for .Net and Python are generated when mk_make.py is invoked.