mirror of
https://github.com/Z3Prover/z3
synced 2025-10-24 16:34:36 +00:00
* implement Optimize class for the high level Typescript API * javascript and wasm: add _malloc to exported functions fix the bug https://github.com/Z3Prover/z3/issues/6709 * javascript: add tests for the Optimize class * javascript: no reason that minimize and optimize must be constants |
||
|---|---|---|
| .. | ||
| examples | ||
| scripts | ||
| src | ||
| .nvmrc | ||
| .prettierrc.json | ||
| jest.config.js | ||
| package-lock.json | ||
| package.json | ||
| PUBLISHED_README.md | ||
| README.md | ||
| tsconfig.build.json | ||
| tsconfig.json | ||
| typedoc.json | ||
TypeScript Bindings
This directory contains JavaScript code to automatically derive TypeScript bindings for the C API, which are published on npm as z3-solver.
The readme for the bindings themselves is located in PUBLISHED_README.md.
Building
You'll need to have emscripten set up, along with all of its dependencies. The easiest way to do that is with emsdk.
Then run npm i to install dependencies, npm run build:ts to build the TypeScript wrapper, and npm run build:wasm to build the wasm artifact.
Build on your own
Consult the file build-wasm.ts for configurations used for building wasm.
Tests
Current tests are very minimal: test-ts-api.ts contains a couple real cases translated very mechanically from this file.