@aztec/bb.js 0.0.0-devnet
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +149 -0
- package/dest/browser/522.index.js +10 -0
- package/dest/browser/barretenberg/backend.d.ts +85 -0
- package/dest/browser/barretenberg/backend.d.ts.map +1 -0
- package/dest/browser/barretenberg/index.d.ts +47 -0
- package/dest/browser/barretenberg/index.d.ts.map +1 -0
- package/dest/browser/barretenberg/verifier.d.ts +16 -0
- package/dest/browser/barretenberg/verifier.d.ts.map +1 -0
- package/dest/browser/barretenberg_api/index.d.ts +113 -0
- package/dest/browser/barretenberg_api/index.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +44 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +2 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +3 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +4 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +21 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +47 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +2 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +3 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +4 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +28 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts +2 -0
- package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts +2 -0
- package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/fetch_code/node/index.d.ts +2 -0
- package/dest/browser/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts +6 -0
- package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/helpers/index.d.ts +2 -0
- package/dest/browser/barretenberg_wasm/helpers/index.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/helpers/node/index.d.ts +22 -0
- package/dest/browser/barretenberg_wasm/helpers/node/index.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/helpers/node/node_endpoint.d.ts +8 -0
- package/dest/browser/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/index.d.ts +18 -0
- package/dest/browser/barretenberg_wasm/index.d.ts.map +1 -0
- package/dest/browser/bigint-array/index.d.ts +3 -0
- package/dest/browser/bigint-array/index.d.ts.map +1 -0
- package/dest/browser/crs/browser/cached_net_crs.d.ts +43 -0
- package/dest/browser/crs/browser/cached_net_crs.d.ts.map +1 -0
- package/dest/browser/crs/browser/index.d.ts +2 -0
- package/dest/browser/crs/browser/index.d.ts.map +1 -0
- package/dest/browser/crs/index.d.ts +2 -0
- package/dest/browser/crs/index.d.ts.map +1 -0
- package/dest/browser/crs/net_crs.d.ts +61 -0
- package/dest/browser/crs/net_crs.d.ts.map +1 -0
- package/dest/browser/crs/node/index.d.ts +36 -0
- package/dest/browser/crs/node/index.d.ts.map +1 -0
- package/dest/browser/index.d.ts +5 -0
- package/dest/browser/index.d.ts.map +1 -0
- package/dest/browser/index.js +16205 -0
- package/dest/browser/proof/index.d.ts +19 -0
- package/dest/browser/proof/index.d.ts.map +1 -0
- package/dest/browser/random/browser/index.d.ts +2 -0
- package/dest/browser/random/browser/index.d.ts.map +1 -0
- package/dest/browser/random/index.d.ts +2 -0
- package/dest/browser/random/index.d.ts.map +1 -0
- package/dest/browser/random/node/index.d.ts +2 -0
- package/dest/browser/random/node/index.d.ts.map +1 -0
- package/dest/browser/serialize/buffer_reader.d.ts +28 -0
- package/dest/browser/serialize/buffer_reader.d.ts.map +1 -0
- package/dest/browser/serialize/index.d.ts +4 -0
- package/dest/browser/serialize/index.d.ts.map +1 -0
- package/dest/browser/serialize/output_type.d.ts +11 -0
- package/dest/browser/serialize/output_type.d.ts.map +1 -0
- package/dest/browser/serialize/serialize.d.ts +53 -0
- package/dest/browser/serialize/serialize.d.ts.map +1 -0
- package/dest/browser/types/fields.d.ts +43 -0
- package/dest/browser/types/fields.d.ts.map +1 -0
- package/dest/browser/types/fixed_size_buffer.d.ts +26 -0
- package/dest/browser/types/fixed_size_buffer.d.ts.map +1 -0
- package/dest/browser/types/index.d.ts +6 -0
- package/dest/browser/types/index.d.ts.map +1 -0
- package/dest/browser/types/point.d.ts +17 -0
- package/dest/browser/types/point.d.ts.map +1 -0
- package/dest/browser/types/ptr.d.ts +13 -0
- package/dest/browser/types/ptr.d.ts.map +1 -0
- package/dest/browser/types/raw_buffer.d.ts +3 -0
- package/dest/browser/types/raw_buffer.d.ts.map +1 -0
- package/dest/node/async_map/index.d.ts +10 -0
- package/dest/node/async_map/index.d.ts.map +1 -0
- package/dest/node/async_map/index.js +16 -0
- package/dest/node/barretenberg/backend.d.ts +85 -0
- package/dest/node/barretenberg/backend.d.ts.map +1 -0
- package/dest/node/barretenberg/backend.js +247 -0
- package/dest/node/barretenberg/blake2s.test.d.ts +2 -0
- package/dest/node/barretenberg/blake2s.test.d.ts.map +1 -0
- package/dest/node/barretenberg/blake2s.test.js +54 -0
- package/dest/node/barretenberg/common.test.d.ts +2 -0
- package/dest/node/barretenberg/common.test.d.ts.map +1 -0
- package/dest/node/barretenberg/common.test.js +20 -0
- package/dest/node/barretenberg/index.d.ts +47 -0
- package/dest/node/barretenberg/index.d.ts.map +1 -0
- package/dest/node/barretenberg/index.js +97 -0
- package/dest/node/barretenberg/pedersen.test.d.ts +2 -0
- package/dest/node/barretenberg/pedersen.test.d.ts.map +1 -0
- package/dest/node/barretenberg/pedersen.test.js +55 -0
- package/dest/node/barretenberg/poseidon.test.d.ts +2 -0
- package/dest/node/barretenberg/poseidon.test.d.ts.map +1 -0
- package/dest/node/barretenberg/poseidon.test.js +35 -0
- package/dest/node/barretenberg/schnorr.test.d.ts +2 -0
- package/dest/node/barretenberg/schnorr.test.d.ts.map +1 -0
- package/dest/node/barretenberg/schnorr.test.js +113 -0
- package/dest/node/barretenberg/verifier.d.ts +16 -0
- package/dest/node/barretenberg/verifier.d.ts.map +1 -0
- package/dest/node/barretenberg/verifier.js +40 -0
- package/dest/node/barretenberg_api/index.d.ts +113 -0
- package/dest/node/barretenberg_api/index.d.ts.map +1 -0
- package/dest/node/barretenberg_api/index.js +728 -0
- package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +44 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.js +125 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +2 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +10 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +3 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +12 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +4 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +18 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +2 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +9 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +21 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +57 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +47 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.js +107 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +2 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +10 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +3 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +12 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +4 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +18 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +2 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +9 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +28 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.js +40 -0
- package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts +2 -0
- package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/fetch_code/browser/index.js +12 -0
- package/dest/node/barretenberg_wasm/fetch_code/index.d.ts +2 -0
- package/dest/node/barretenberg_wasm/fetch_code/index.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/fetch_code/index.js +2 -0
- package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts +2 -0
- package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/fetch_code/node/index.js +22 -0
- package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts +6 -0
- package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/helpers/browser/index.js +18 -0
- package/dest/node/barretenberg_wasm/helpers/index.d.ts +2 -0
- package/dest/node/barretenberg_wasm/helpers/index.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/helpers/index.js +2 -0
- package/dest/node/barretenberg_wasm/helpers/node/index.d.ts +22 -0
- package/dest/node/barretenberg_wasm/helpers/node/index.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/helpers/node/index.js +39 -0
- package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts +8 -0
- package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.js +28 -0
- package/dest/node/barretenberg_wasm/index.d.ts +18 -0
- package/dest/node/barretenberg_wasm/index.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/index.js +45 -0
- package/dest/node/barretenberg_wasm/index.test.d.ts +2 -0
- package/dest/node/barretenberg_wasm/index.test.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/index.test.js +38 -0
- package/dest/node/benchmark/index.d.ts +3 -0
- package/dest/node/benchmark/index.d.ts.map +1 -0
- package/dest/node/benchmark/index.js +25 -0
- package/dest/node/benchmark/timer.d.ts +34 -0
- package/dest/node/benchmark/timer.d.ts.map +1 -0
- package/dest/node/benchmark/timer.js +41 -0
- package/dest/node/bigint-array/index.d.ts +3 -0
- package/dest/node/bigint-array/index.d.ts.map +1 -0
- package/dest/node/bigint-array/index.js +21 -0
- package/dest/node/bindgen/function_declaration.d.ts +11 -0
- package/dest/node/bindgen/function_declaration.d.ts.map +1 -0
- package/dest/node/bindgen/function_declaration.js +2 -0
- package/dest/node/bindgen/index.d.ts +2 -0
- package/dest/node/bindgen/index.d.ts.map +1 -0
- package/dest/node/bindgen/index.js +15 -0
- package/dest/node/bindgen/mappings.d.ts +4 -0
- package/dest/node/bindgen/mappings.d.ts.map +1 -0
- package/dest/node/bindgen/mappings.js +63 -0
- package/dest/node/bindgen/rust.d.ts +2 -0
- package/dest/node/bindgen/rust.d.ts.map +1 -0
- package/dest/node/bindgen/rust.js +43 -0
- package/dest/node/bindgen/to_camel_case.d.ts +2 -0
- package/dest/node/bindgen/to_camel_case.d.ts.map +1 -0
- package/dest/node/bindgen/to_camel_case.js +11 -0
- package/dest/node/bindgen/typescript.d.ts +2 -0
- package/dest/node/bindgen/typescript.d.ts.map +1 -0
- package/dest/node/bindgen/typescript.js +100 -0
- package/dest/node/crs/browser/cached_net_crs.d.ts +43 -0
- package/dest/node/crs/browser/cached_net_crs.d.ts.map +1 -0
- package/dest/node/crs/browser/cached_net_crs.js +90 -0
- package/dest/node/crs/browser/index.d.ts +2 -0
- package/dest/node/crs/browser/index.d.ts.map +1 -0
- package/dest/node/crs/browser/index.js +2 -0
- package/dest/node/crs/index.d.ts +2 -0
- package/dest/node/crs/index.d.ts.map +1 -0
- package/dest/node/crs/index.js +2 -0
- package/dest/node/crs/net_crs.d.ts +61 -0
- package/dest/node/crs/net_crs.d.ts.map +1 -0
- package/dest/node/crs/net_crs.js +97 -0
- package/dest/node/crs/node/ignition_files_crs.d.ts +38 -0
- package/dest/node/crs/node/ignition_files_crs.d.ts.map +1 -0
- package/dest/node/crs/node/ignition_files_crs.js +65 -0
- package/dest/node/crs/node/index.d.ts +36 -0
- package/dest/node/crs/node/index.d.ts.map +1 -0
- package/dest/node/crs/node/index.js +93 -0
- package/dest/node/examples/simple.rawtest.d.ts +2 -0
- package/dest/node/examples/simple.rawtest.d.ts.map +1 -0
- package/dest/node/examples/simple.rawtest.js +30 -0
- package/dest/node/examples/simple.test.d.ts +2 -0
- package/dest/node/examples/simple.test.d.ts.map +1 -0
- package/dest/node/examples/simple.test.js +23 -0
- package/dest/node/index.d.ts +5 -0
- package/dest/node/index.d.ts.map +1 -0
- package/dest/node/index.js +5 -0
- package/dest/node/main.d.ts +23 -0
- package/dest/node/main.d.ts.map +1 -0
- package/dest/node/main.js +712 -0
- package/dest/node/proof/index.d.ts +19 -0
- package/dest/node/proof/index.d.ts.map +1 -0
- package/dest/node/proof/index.js +85 -0
- package/dest/node/random/browser/index.d.ts +2 -0
- package/dest/node/random/browser/index.d.ts.map +1 -0
- package/dest/node/random/browser/index.js +31 -0
- package/dest/node/random/index.d.ts +2 -0
- package/dest/node/random/index.d.ts.map +1 -0
- package/dest/node/random/index.js +2 -0
- package/dest/node/random/node/index.d.ts +2 -0
- package/dest/node/random/node/index.d.ts.map +1 -0
- package/dest/node/random/node/index.js +5 -0
- package/dest/node/serialize/buffer_reader.d.ts +28 -0
- package/dest/node/serialize/buffer_reader.d.ts.map +1 -0
- package/dest/node/serialize/buffer_reader.js +66 -0
- package/dest/node/serialize/index.d.ts +4 -0
- package/dest/node/serialize/index.d.ts.map +1 -0
- package/dest/node/serialize/index.js +4 -0
- package/dest/node/serialize/output_type.d.ts +11 -0
- package/dest/node/serialize/output_type.d.ts.map +1 -0
- package/dest/node/serialize/output_type.js +44 -0
- package/dest/node/serialize/serialize.d.ts +53 -0
- package/dest/node/serialize/serialize.d.ts.map +1 -0
- package/dest/node/serialize/serialize.js +139 -0
- package/dest/node/types/fields.d.ts +43 -0
- package/dest/node/types/fields.d.ts.map +1 -0
- package/dest/node/types/fields.js +97 -0
- package/dest/node/types/fixed_size_buffer.d.ts +26 -0
- package/dest/node/types/fixed_size_buffer.d.ts.map +1 -0
- package/dest/node/types/fixed_size_buffer.js +51 -0
- package/dest/node/types/index.d.ts +6 -0
- package/dest/node/types/index.d.ts.map +1 -0
- package/dest/node/types/index.js +6 -0
- package/dest/node/types/point.d.ts +17 -0
- package/dest/node/types/point.d.ts.map +1 -0
- package/dest/node/types/point.js +31 -0
- package/dest/node/types/ptr.d.ts +13 -0
- package/dest/node/types/ptr.d.ts.map +1 -0
- package/dest/node/types/ptr.js +19 -0
- package/dest/node/types/raw_buffer.d.ts +3 -0
- package/dest/node/types/raw_buffer.d.ts.map +1 -0
- package/dest/node/types/raw_buffer.js +5 -0
- package/dest/node-cjs/async_map/index.d.ts +10 -0
- package/dest/node-cjs/async_map/index.d.ts.map +1 -0
- package/dest/node-cjs/async_map/index.js +20 -0
- package/dest/node-cjs/barretenberg/backend.d.ts +85 -0
- package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg/backend.js +253 -0
- package/dest/node-cjs/barretenberg/blake2s.test.d.ts +2 -0
- package/dest/node-cjs/barretenberg/blake2s.test.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg/blake2s.test.js +56 -0
- package/dest/node-cjs/barretenberg/common.test.d.ts +2 -0
- package/dest/node-cjs/barretenberg/common.test.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg/common.test.js +22 -0
- package/dest/node-cjs/barretenberg/index.d.ts +47 -0
- package/dest/node-cjs/barretenberg/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg/index.js +106 -0
- package/dest/node-cjs/barretenberg/pedersen.test.d.ts +2 -0
- package/dest/node-cjs/barretenberg/pedersen.test.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg/pedersen.test.js +57 -0
- package/dest/node-cjs/barretenberg/poseidon.test.d.ts +2 -0
- package/dest/node-cjs/barretenberg/poseidon.test.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg/poseidon.test.js +37 -0
- package/dest/node-cjs/barretenberg/schnorr.test.d.ts +2 -0
- package/dest/node-cjs/barretenberg/schnorr.test.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg/schnorr.test.js +115 -0
- package/dest/node-cjs/barretenberg/verifier.d.ts +16 -0
- package/dest/node-cjs/barretenberg/verifier.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg/verifier.js +44 -0
- package/dest/node-cjs/barretenberg_api/index.d.ts +113 -0
- package/dest/node-cjs/barretenberg_api/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_api/index.js +733 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +44 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.js +130 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +2 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +15 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +3 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +15 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +4 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +22 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +2 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +11 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +21 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +61 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +47 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.js +112 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +2 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +15 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +3 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +15 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +4 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +22 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +2 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +11 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +28 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.js +44 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts +2 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.js +17 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/index.d.ts +2 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/index.js +5 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts +2 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.js +27 -0
- package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts +6 -0
- package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.js +26 -0
- package/dest/node-cjs/barretenberg_wasm/helpers/index.d.ts +2 -0
- package/dest/node-cjs/barretenberg_wasm/helpers/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/helpers/index.js +5 -0
- package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts +22 -0
- package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/helpers/node/index.js +48 -0
- package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts +8 -0
- package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.js +32 -0
- package/dest/node-cjs/barretenberg_wasm/index.d.ts +18 -0
- package/dest/node-cjs/barretenberg_wasm/index.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/index.js +51 -0
- package/dest/node-cjs/barretenberg_wasm/index.test.d.ts +2 -0
- package/dest/node-cjs/barretenberg_wasm/index.test.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/index.test.js +40 -0
- package/dest/node-cjs/benchmark/index.d.ts +3 -0
- package/dest/node-cjs/benchmark/index.d.ts.map +1 -0
- package/dest/node-cjs/benchmark/index.js +30 -0
- package/dest/node-cjs/benchmark/timer.d.ts +34 -0
- package/dest/node-cjs/benchmark/timer.d.ts.map +1 -0
- package/dest/node-cjs/benchmark/timer.js +45 -0
- package/dest/node-cjs/bigint-array/index.d.ts +3 -0
- package/dest/node-cjs/bigint-array/index.d.ts.map +1 -0
- package/dest/node-cjs/bigint-array/index.js +26 -0
- package/dest/node-cjs/bindgen/function_declaration.d.ts +11 -0
- package/dest/node-cjs/bindgen/function_declaration.d.ts.map +1 -0
- package/dest/node-cjs/bindgen/function_declaration.js +3 -0
- package/dest/node-cjs/bindgen/index.d.ts +2 -0
- package/dest/node-cjs/bindgen/index.d.ts.map +1 -0
- package/dest/node-cjs/bindgen/index.js +17 -0
- package/dest/node-cjs/bindgen/mappings.d.ts +4 -0
- package/dest/node-cjs/bindgen/mappings.d.ts.map +1 -0
- package/dest/node-cjs/bindgen/mappings.js +68 -0
- package/dest/node-cjs/bindgen/rust.d.ts +2 -0
- package/dest/node-cjs/bindgen/rust.d.ts.map +1 -0
- package/dest/node-cjs/bindgen/rust.js +48 -0
- package/dest/node-cjs/bindgen/to_camel_case.d.ts +2 -0
- package/dest/node-cjs/bindgen/to_camel_case.d.ts.map +1 -0
- package/dest/node-cjs/bindgen/to_camel_case.js +15 -0
- package/dest/node-cjs/bindgen/typescript.d.ts +2 -0
- package/dest/node-cjs/bindgen/typescript.d.ts.map +1 -0
- package/dest/node-cjs/bindgen/typescript.js +105 -0
- package/dest/node-cjs/crs/browser/cached_net_crs.d.ts +43 -0
- package/dest/node-cjs/crs/browser/cached_net_crs.d.ts.map +1 -0
- package/dest/node-cjs/crs/browser/cached_net_crs.js +95 -0
- package/dest/node-cjs/crs/browser/index.d.ts +2 -0
- package/dest/node-cjs/crs/browser/index.d.ts.map +1 -0
- package/dest/node-cjs/crs/browser/index.js +7 -0
- package/dest/node-cjs/crs/index.d.ts +2 -0
- package/dest/node-cjs/crs/index.d.ts.map +1 -0
- package/dest/node-cjs/crs/index.js +7 -0
- package/dest/node-cjs/crs/net_crs.d.ts +61 -0
- package/dest/node-cjs/crs/net_crs.d.ts.map +1 -0
- package/dest/node-cjs/crs/net_crs.js +102 -0
- package/dest/node-cjs/crs/node/ignition_files_crs.d.ts +38 -0
- package/dest/node-cjs/crs/node/ignition_files_crs.d.ts.map +1 -0
- package/dest/node-cjs/crs/node/ignition_files_crs.js +69 -0
- package/dest/node-cjs/crs/node/index.d.ts +36 -0
- package/dest/node-cjs/crs/node/index.d.ts.map +1 -0
- package/dest/node-cjs/crs/node/index.js +99 -0
- package/dest/node-cjs/examples/simple.rawtest.d.ts +2 -0
- package/dest/node-cjs/examples/simple.rawtest.d.ts.map +1 -0
- package/dest/node-cjs/examples/simple.rawtest.js +33 -0
- package/dest/node-cjs/examples/simple.test.d.ts +2 -0
- package/dest/node-cjs/examples/simple.test.d.ts.map +1 -0
- package/dest/node-cjs/examples/simple.test.js +25 -0
- package/dest/node-cjs/index.d.ts +5 -0
- package/dest/node-cjs/index.d.ts.map +1 -0
- package/dest/node-cjs/index.js +20 -0
- package/dest/node-cjs/main.d.ts +23 -0
- package/dest/node-cjs/main.d.ts.map +1 -0
- package/dest/node-cjs/main.js +735 -0
- package/dest/node-cjs/package.json +3 -0
- package/dest/node-cjs/proof/index.d.ts +19 -0
- package/dest/node-cjs/proof/index.d.ts.map +1 -0
- package/dest/node-cjs/proof/index.js +93 -0
- package/dest/node-cjs/random/browser/index.d.ts +2 -0
- package/dest/node-cjs/random/browser/index.d.ts.map +1 -0
- package/dest/node-cjs/random/browser/index.js +35 -0
- package/dest/node-cjs/random/index.d.ts +2 -0
- package/dest/node-cjs/random/index.d.ts.map +1 -0
- package/dest/node-cjs/random/index.js +5 -0
- package/dest/node-cjs/random/node/index.d.ts +2 -0
- package/dest/node-cjs/random/node/index.d.ts.map +1 -0
- package/dest/node-cjs/random/node/index.js +9 -0
- package/dest/node-cjs/serialize/buffer_reader.d.ts +28 -0
- package/dest/node-cjs/serialize/buffer_reader.d.ts.map +1 -0
- package/dest/node-cjs/serialize/buffer_reader.js +70 -0
- package/dest/node-cjs/serialize/index.d.ts +4 -0
- package/dest/node-cjs/serialize/index.d.ts.map +1 -0
- package/dest/node-cjs/serialize/index.js +7 -0
- package/dest/node-cjs/serialize/output_type.d.ts +11 -0
- package/dest/node-cjs/serialize/output_type.d.ts.map +1 -0
- package/dest/node-cjs/serialize/output_type.js +52 -0
- package/dest/node-cjs/serialize/serialize.d.ts +53 -0
- package/dest/node-cjs/serialize/serialize.d.ts.map +1 -0
- package/dest/node-cjs/serialize/serialize.js +161 -0
- package/dest/node-cjs/types/fields.d.ts +43 -0
- package/dest/node-cjs/types/fields.d.ts.map +1 -0
- package/dest/node-cjs/types/fields.js +102 -0
- package/dest/node-cjs/types/fixed_size_buffer.d.ts +26 -0
- package/dest/node-cjs/types/fixed_size_buffer.d.ts.map +1 -0
- package/dest/node-cjs/types/fixed_size_buffer.js +57 -0
- package/dest/node-cjs/types/index.d.ts +6 -0
- package/dest/node-cjs/types/index.d.ts.map +1 -0
- package/dest/node-cjs/types/index.js +9 -0
- package/dest/node-cjs/types/point.d.ts +17 -0
- package/dest/node-cjs/types/point.d.ts.map +1 -0
- package/dest/node-cjs/types/point.js +35 -0
- package/dest/node-cjs/types/ptr.d.ts +13 -0
- package/dest/node-cjs/types/ptr.d.ts.map +1 -0
- package/dest/node-cjs/types/ptr.js +23 -0
- package/dest/node-cjs/types/raw_buffer.d.ts +3 -0
- package/dest/node-cjs/types/raw_buffer.d.ts.map +1 -0
- package/dest/node-cjs/types/raw_buffer.js +9 -0
- package/package.json +105 -0
- package/src/async_map/index.ts +15 -0
- package/src/barretenberg/__snapshots__/pedersen.test.ts.snap +156 -0
- package/src/barretenberg/__snapshots__/poseidon.test.ts.snap +40 -0
- package/src/barretenberg/backend.ts +362 -0
- package/src/barretenberg/blake2s.test.ts +70 -0
- package/src/barretenberg/common.test.ts +23 -0
- package/src/barretenberg/index.ts +130 -0
- package/src/barretenberg/pedersen.test.ts +62 -0
- package/src/barretenberg/poseidon.test.ts +39 -0
- package/src/barretenberg/schnorr.test.ts +182 -0
- package/src/barretenberg/verifier.ts +55 -0
- package/src/barretenberg_api/index.ts +1305 -0
- package/src/barretenberg_wasm/barretenberg_wasm_base/index.ts +138 -0
- package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.ts +10 -0
- package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.ts +15 -0
- package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.ts +18 -0
- package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.ts +10 -0
- package/src/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.ts +60 -0
- package/src/barretenberg_wasm/barretenberg_wasm_main/index.ts +138 -0
- package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.ts +10 -0
- package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.ts +15 -0
- package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.ts +18 -0
- package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.ts +10 -0
- package/src/barretenberg_wasm/barretenberg_wasm_thread/index.ts +47 -0
- package/src/barretenberg_wasm/fetch_code/browser/index.ts +12 -0
- package/src/barretenberg_wasm/fetch_code/browser/wasm-module.d.ts +4 -0
- package/src/barretenberg_wasm/fetch_code/index.ts +1 -0
- package/src/barretenberg_wasm/fetch_code/node/index.ts +22 -0
- package/src/barretenberg_wasm/helpers/browser/index.ts +22 -0
- package/src/barretenberg_wasm/helpers/index.ts +1 -0
- package/src/barretenberg_wasm/helpers/node/index.ts +44 -0
- package/src/barretenberg_wasm/helpers/node/node_endpoint.ts +28 -0
- package/src/barretenberg_wasm/index.test.ts +45 -0
- package/src/barretenberg_wasm/index.ts +50 -0
- package/src/benchmark/index.ts +26 -0
- package/src/benchmark/timer.ts +45 -0
- package/src/bigint-array/index.ts +21 -0
- package/src/bindgen/function_declaration.ts +11 -0
- package/src/bindgen/index.ts +17 -0
- package/src/bindgen/mappings.ts +66 -0
- package/src/bindgen/rust.ts +52 -0
- package/src/bindgen/to_camel_case.ts +10 -0
- package/src/bindgen/typescript.ts +116 -0
- package/src/crs/browser/cached_net_crs.ts +99 -0
- package/src/crs/browser/index.ts +1 -0
- package/src/crs/index.ts +1 -0
- package/src/crs/net_crs.ts +115 -0
- package/src/crs/node/ignition_files_crs.ts +74 -0
- package/src/crs/node/index.ts +102 -0
- package/src/examples/simple.rawtest.ts +38 -0
- package/src/examples/simple.test.ts +28 -0
- package/src/index.html +9 -0
- package/src/index.ts +12 -0
- package/src/main.ts +834 -0
- package/src/proof/index.ts +120 -0
- package/src/random/browser/index.ts +32 -0
- package/src/random/index.ts +1 -0
- package/src/random/node/index.ts +5 -0
- package/src/serialize/buffer_reader.ts +82 -0
- package/src/serialize/index.ts +3 -0
- package/src/serialize/output_type.ts +53 -0
- package/src/serialize/serialize.ts +157 -0
- package/src/types/fields.ts +115 -0
- package/src/types/fixed_size_buffer.ts +59 -0
- package/src/types/index.ts +5 -0
- package/src/types/point.ts +35 -0
- package/src/types/ptr.ts +20 -0
- package/src/types/raw_buffer.ts +3 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Remote } from 'comlink';
|
|
2
|
+
import { BarretenbergWasmBase } from '../barretenberg_wasm_base/index.js';
|
|
3
|
+
export declare class BarretenbergWasmThread extends BarretenbergWasmBase {
|
|
4
|
+
/**
|
|
5
|
+
* Init as worker thread.
|
|
6
|
+
*/
|
|
7
|
+
initThread(module: WebAssembly.Module, memory: WebAssembly.Memory): Promise<void>;
|
|
8
|
+
destroy(): void;
|
|
9
|
+
protected getImportObj(memory: WebAssembly.Memory): {
|
|
10
|
+
wasi: {
|
|
11
|
+
'thread-spawn': () => never;
|
|
12
|
+
};
|
|
13
|
+
env: {
|
|
14
|
+
env_hardware_concurrency: () => number;
|
|
15
|
+
logstr: (addr: number) => void;
|
|
16
|
+
get_data: (keyAddr: number, outBufAddr: number) => void;
|
|
17
|
+
set_data: (keyAddr: number, dataAddr: number, dataLength: number) => void;
|
|
18
|
+
memory: WebAssembly.Memory;
|
|
19
|
+
};
|
|
20
|
+
wasi_snapshot_preview1: {
|
|
21
|
+
random_get: (out: any, length: number) => void;
|
|
22
|
+
clock_time_get: (a1: number, a2: number, out: number) => void;
|
|
23
|
+
proc_exit: () => never;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
export type BarretenbergWasmThreadWorker = Remote<BarretenbergWasmThread>;
|
|
28
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/barretenberg_wasm/barretenberg_wasm_thread/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE1E,qBAAa,sBAAuB,SAAQ,oBAAoB;IAC9D;;OAEG;IACU,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM;IAMvE,OAAO;IAId,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM;;;;;;;;;;;;;;;;;CA0BlD;AAED,MAAM,MAAM,4BAA4B,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { killSelf, threadLogger } from '../helpers/index.js';
|
|
2
|
+
import { BarretenbergWasmBase } from '../barretenberg_wasm_base/index.js';
|
|
3
|
+
export class BarretenbergWasmThread extends BarretenbergWasmBase {
|
|
4
|
+
/**
|
|
5
|
+
* Init as worker thread.
|
|
6
|
+
*/
|
|
7
|
+
async initThread(module, memory) {
|
|
8
|
+
this.logger = threadLogger() || this.logger;
|
|
9
|
+
this.memory = memory;
|
|
10
|
+
this.instance = await WebAssembly.instantiate(module, this.getImportObj(this.memory));
|
|
11
|
+
}
|
|
12
|
+
destroy() {
|
|
13
|
+
killSelf();
|
|
14
|
+
}
|
|
15
|
+
getImportObj(memory) {
|
|
16
|
+
const baseImports = super.getImportObj(memory);
|
|
17
|
+
/* eslint-disable camelcase */
|
|
18
|
+
return {
|
|
19
|
+
...baseImports,
|
|
20
|
+
wasi: {
|
|
21
|
+
'thread-spawn': () => {
|
|
22
|
+
this.logger('PANIC: threads cannot spawn threads!');
|
|
23
|
+
this.logger(new Error().stack);
|
|
24
|
+
killSelf();
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
// These are functions implementations for imports we've defined are needed.
|
|
28
|
+
// The native C++ build defines these in a module called "env". We must implement TypeScript versions here.
|
|
29
|
+
env: {
|
|
30
|
+
...baseImports.env,
|
|
31
|
+
env_hardware_concurrency: () => {
|
|
32
|
+
// We return 1, which should cause any algos using threading to just not create a thread.
|
|
33
|
+
return 1;
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
/* eslint-enable camelcase */
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vYmFycmV0ZW5iZXJnX3dhc21fdGhyZWFkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFMUUsTUFBTSxPQUFPLHNCQUF1QixTQUFRLG9CQUFvQjtJQUM5RDs7T0FFRztJQUNJLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBMEIsRUFBRSxNQUEwQjtRQUM1RSxJQUFJLENBQUMsTUFBTSxHQUFHLFlBQVksRUFBRSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDNUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLFdBQVcsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDeEYsQ0FBQztJQUVNLE9BQU87UUFDWixRQUFRLEVBQUUsQ0FBQztJQUNiLENBQUM7SUFFUyxZQUFZLENBQUMsTUFBMEI7UUFDL0MsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUUvQyw4QkFBOEI7UUFDOUIsT0FBTztZQUNMLEdBQUcsV0FBVztZQUNkLElBQUksRUFBRTtnQkFDSixjQUFjLEVBQUUsR0FBRyxFQUFFO29CQUNuQixJQUFJLENBQUMsTUFBTSxDQUFDLHNDQUFzQyxDQUFDLENBQUM7b0JBQ3BELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxLQUFNLENBQUMsQ0FBQztvQkFDaEMsUUFBUSxFQUFFLENBQUM7Z0JBQ2IsQ0FBQzthQUNGO1lBRUQsNEVBQTRFO1lBQzVFLDJHQUEyRztZQUMzRyxHQUFHLEVBQUU7Z0JBQ0gsR0FBRyxXQUFXLENBQUMsR0FBRztnQkFDbEIsd0JBQXdCLEVBQUUsR0FBRyxFQUFFO29CQUM3Qix5RkFBeUY7b0JBQ3pGLE9BQU8sQ0FBQyxDQUFDO2dCQUNYLENBQUM7YUFDRjtTQUNGLENBQUM7UUFDRiw2QkFBNkI7SUFDL0IsQ0FBQztDQUNGIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/barretenberg_wasm/fetch_code/browser/index.ts"],"names":[],"mappings":"AAMA,wBAAsB,SAAS,CAAC,aAAa,EAAE,OAAO,4BAKrD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import barretenbergModule from '../../barretenberg.wasm.gz';
|
|
2
|
+
import barretenbergThreadsModule from '../../barretenberg-threads.wasm.gz';
|
|
3
|
+
import pako from 'pako';
|
|
4
|
+
// Annoyingly the wasm declares if it's memory is shared or not. So now we need two wasms if we want to be
|
|
5
|
+
// able to fallback on "non shared memory" situations.
|
|
6
|
+
export async function fetchCode(multithreaded) {
|
|
7
|
+
const res = await fetch(multithreaded ? barretenbergThreadsModule : barretenbergModule);
|
|
8
|
+
const compressedData = await res.arrayBuffer();
|
|
9
|
+
const decompressedData = pako.ungzip(new Uint8Array(compressedData));
|
|
10
|
+
return decompressedData.buffer;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vZmV0Y2hfY29kZS9icm93c2VyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sa0JBQWtCLE1BQU0sNEJBQTRCLENBQUM7QUFDNUQsT0FBTyx5QkFBeUIsTUFBTSxvQ0FBb0MsQ0FBQztBQUMzRSxPQUFPLElBQUksTUFBTSxNQUFNLENBQUM7QUFFeEIsMEdBQTBHO0FBQzFHLHNEQUFzRDtBQUN0RCxNQUFNLENBQUMsS0FBSyxVQUFVLFNBQVMsQ0FBQyxhQUFzQjtJQUNwRCxNQUFNLEdBQUcsR0FBRyxNQUFNLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3hGLE1BQU0sY0FBYyxHQUFHLE1BQU0sR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQy9DLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLE9BQU8sZ0JBQWdCLENBQUMsTUFBTSxDQUFDO0FBQ2pDLENBQUMifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/barretenberg_wasm/fetch_code/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './node/index.js';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vZmV0Y2hfY29kZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/barretenberg_wasm/fetch_code/node/index.ts"],"names":[],"mappings":"AAgBA,wBAAsB,SAAS,CAAC,aAAa,EAAE,OAAO,4BAKrD"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { readFile } from 'fs/promises';
|
|
2
|
+
import { dirname } from 'path';
|
|
3
|
+
import { fileURLToPath } from 'url';
|
|
4
|
+
import pako from 'pako';
|
|
5
|
+
function getCurrentDir() {
|
|
6
|
+
if (typeof __dirname !== 'undefined') {
|
|
7
|
+
return __dirname;
|
|
8
|
+
}
|
|
9
|
+
else {
|
|
10
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
11
|
+
// @ts-ignore
|
|
12
|
+
return dirname(fileURLToPath(import.meta.url));
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
16
|
+
export async function fetchCode(multithreaded) {
|
|
17
|
+
const path = getCurrentDir() + '/../../barretenberg-threads.wasm.gz';
|
|
18
|
+
const compressedData = await readFile(path);
|
|
19
|
+
const decompressedData = pako.ungzip(new Uint8Array(compressedData));
|
|
20
|
+
return decompressedData.buffer;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vZmV0Y2hfY29kZS9ub2RlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBQ3BDLE9BQU8sSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUV4QixTQUFTLGFBQWE7SUFDcEIsSUFBSSxPQUFPLFNBQVMsS0FBSyxXQUFXLEVBQUUsQ0FBQztRQUNyQyxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO1NBQU0sQ0FBQztRQUNOLDZEQUE2RDtRQUM3RCxhQUFhO1FBQ2IsT0FBTyxPQUFPLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNqRCxDQUFDO0FBQ0gsQ0FBQztBQUVELDZEQUE2RDtBQUM3RCxNQUFNLENBQUMsS0FBSyxVQUFVLFNBQVMsQ0FBQyxhQUFzQjtJQUNwRCxNQUFNLElBQUksR0FBRyxhQUFhLEVBQUUsR0FBRyxxQ0FBcUMsQ0FBQztJQUNyRSxNQUFNLGNBQWMsR0FBRyxNQUFNLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztJQUNyRSxPQUFPLGdCQUFnQixDQUFDLE1BQU0sQ0FBQztBQUNqQyxDQUFDIn0=
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare function getSharedMemoryAvailable(): boolean;
|
|
2
|
+
export declare function getRemoteBarretenbergWasm<T>(worker: Worker): T;
|
|
3
|
+
export declare function getNumCpu(): number;
|
|
4
|
+
export declare function threadLogger(): ((msg: string) => void) | undefined;
|
|
5
|
+
export declare function killSelf(): void;
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/barretenberg_wasm/helpers/browser/index.ts"],"names":[],"mappings":"AAEA,wBAAgB,wBAAwB,YAGvC;AAED,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,KAE1D;AAED,wBAAgB,SAAS,WAExB;AAED,wBAAgB,YAAY,IAAI,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAElE;AAED,wBAAgB,QAAQ,SAEvB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { wrap } from 'comlink';
|
|
2
|
+
export function getSharedMemoryAvailable() {
|
|
3
|
+
const globalScope = typeof window !== 'undefined' ? window : globalThis;
|
|
4
|
+
return typeof SharedArrayBuffer !== 'undefined' && globalScope.crossOriginIsolated;
|
|
5
|
+
}
|
|
6
|
+
export function getRemoteBarretenbergWasm(worker) {
|
|
7
|
+
return wrap(worker);
|
|
8
|
+
}
|
|
9
|
+
export function getNumCpu() {
|
|
10
|
+
return navigator.hardwareConcurrency;
|
|
11
|
+
}
|
|
12
|
+
export function threadLogger() {
|
|
13
|
+
return undefined;
|
|
14
|
+
}
|
|
15
|
+
export function killSelf() {
|
|
16
|
+
self.close();
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vaGVscGVycy9icm93c2VyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFL0IsTUFBTSxVQUFVLHdCQUF3QjtJQUN0QyxNQUFNLFdBQVcsR0FBRyxPQUFPLE1BQU0sS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDO0lBQ3hFLE9BQU8sT0FBTyxpQkFBaUIsS0FBSyxXQUFXLElBQUksV0FBVyxDQUFDLG1CQUFtQixDQUFDO0FBQ3JGLENBQUM7QUFFRCxNQUFNLFVBQVUseUJBQXlCLENBQUksTUFBYztJQUN6RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQU0sQ0FBQztBQUMzQixDQUFDO0FBRUQsTUFBTSxVQUFVLFNBQVM7SUFDdkIsT0FBTyxTQUFTLENBQUMsbUJBQW1CLENBQUM7QUFDdkMsQ0FBQztBQUVELE1BQU0sVUFBVSxZQUFZO0lBQzFCLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFFRCxNQUFNLFVBQVUsUUFBUTtJQUN0QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDZixDQUFDIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/barretenberg_wasm/helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './node/index.js';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vaGVscGVycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDIn0=
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
import { Worker } from 'worker_threads';
|
|
3
|
+
export declare function getSharedMemoryAvailable(): boolean;
|
|
4
|
+
/**
|
|
5
|
+
* Comlink allows you to produce a Proxy to the worker, enabling you to call methods as if it were a normal class.
|
|
6
|
+
* Note we give it the type information it needs so the returned Proxy object looks like that type.
|
|
7
|
+
* Node has a different implementation, needing this nodeEndpoint wrapper, hence this function exists here.
|
|
8
|
+
*/
|
|
9
|
+
export declare function getRemoteBarretenbergWasm<T>(worker: Worker): T;
|
|
10
|
+
/**
|
|
11
|
+
* Returns number of cpus as reported by the system, unless overriden by HARDWARE_CONCURRENCY env var.
|
|
12
|
+
*/
|
|
13
|
+
export declare function getNumCpu(): number;
|
|
14
|
+
/**
|
|
15
|
+
* In node, the message passing is different to the browser. When using 'debug' in the browser, we seemingly always
|
|
16
|
+
* get our logs, but in node it looks like it's dependent on the chain of workers from child to main thread be
|
|
17
|
+
* unblocked. If one of our threads aborts, we can't see it as the parent is blocked waiting on threads to join.
|
|
18
|
+
* To work around this in node, threads will by default write directly to stdout.
|
|
19
|
+
*/
|
|
20
|
+
export declare function threadLogger(): ((msg: string) => void) | undefined;
|
|
21
|
+
export declare function killSelf(): never;
|
|
22
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/barretenberg_wasm/helpers/node/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAMxC,wBAAgB,wBAAwB,YAEvC;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,CAE9D;AAED;;GAEG;AACH,wBAAgB,SAAS,WAExB;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,IAAI,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAIlE;AAED,wBAAgB,QAAQ,IAAI,KAAK,CAKhC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import os from 'os';
|
|
2
|
+
import { wrap } from 'comlink';
|
|
3
|
+
import { nodeEndpoint } from './node_endpoint.js';
|
|
4
|
+
import { writeSync } from 'fs';
|
|
5
|
+
export function getSharedMemoryAvailable() {
|
|
6
|
+
return true;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Comlink allows you to produce a Proxy to the worker, enabling you to call methods as if it were a normal class.
|
|
10
|
+
* Note we give it the type information it needs so the returned Proxy object looks like that type.
|
|
11
|
+
* Node has a different implementation, needing this nodeEndpoint wrapper, hence this function exists here.
|
|
12
|
+
*/
|
|
13
|
+
export function getRemoteBarretenbergWasm(worker) {
|
|
14
|
+
return wrap(nodeEndpoint(worker));
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Returns number of cpus as reported by the system, unless overriden by HARDWARE_CONCURRENCY env var.
|
|
18
|
+
*/
|
|
19
|
+
export function getNumCpu() {
|
|
20
|
+
return +process.env.HARDWARE_CONCURRENCY || os.cpus().length;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* In node, the message passing is different to the browser. When using 'debug' in the browser, we seemingly always
|
|
24
|
+
* get our logs, but in node it looks like it's dependent on the chain of workers from child to main thread be
|
|
25
|
+
* unblocked. If one of our threads aborts, we can't see it as the parent is blocked waiting on threads to join.
|
|
26
|
+
* To work around this in node, threads will by default write directly to stdout.
|
|
27
|
+
*/
|
|
28
|
+
export function threadLogger() {
|
|
29
|
+
return (msg) => {
|
|
30
|
+
writeSync(1, msg + '\n');
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
export function killSelf() {
|
|
34
|
+
// Extordinarily hard process termination. Due to how parent threads block on child threads etc, even process.exit
|
|
35
|
+
// doesn't seem to be able to abort the process. The following does.
|
|
36
|
+
process.kill(process.pid);
|
|
37
|
+
throw new Error();
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vaGVscGVycy9ub2RlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQztBQUNwQixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQy9CLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBRS9CLE1BQU0sVUFBVSx3QkFBd0I7SUFDdEMsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSx5QkFBeUIsQ0FBSSxNQUFjO0lBQ3pELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBTSxDQUFDO0FBQ3pDLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxTQUFTO0lBQ3ZCLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLG9CQUFxQixJQUFJLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUM7QUFDaEUsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLFlBQVk7SUFDMUIsT0FBTyxDQUFDLEdBQVcsRUFBRSxFQUFFO1FBQ3JCLFNBQVMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQzNCLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsUUFBUTtJQUN0QixrSEFBa0g7SUFDbEgsb0VBQW9FO0lBQ3BFLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFCLE1BQU0sSUFBSSxLQUFLLEVBQUUsQ0FBQztBQUNwQixDQUFDIn0=
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NodeEndpoint } from 'comlink/dist/esm/node-adapter.js';
|
|
2
|
+
export declare function nodeEndpoint(nep: NodeEndpoint): {
|
|
3
|
+
postMessage: (message: any, transfer?: any[] | undefined) => void;
|
|
4
|
+
addEventListener: (_: any, eh: any) => void;
|
|
5
|
+
removeEventListener: (_: any, eh: any) => void;
|
|
6
|
+
start: (() => void) | undefined;
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=node_endpoint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node_endpoint.d.ts","sourceRoot":"","sources":["../../../../../src/barretenberg_wasm/helpers/node/node_endpoint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAEhE,wBAAgB,YAAY,CAAC,GAAG,EAAE,YAAY;;0BAIpB,GAAG,MAAM,GAAG;6BAWT,GAAG,MAAM,GAAG;;EAUxC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export function nodeEndpoint(nep) {
|
|
2
|
+
const listeners = new WeakMap();
|
|
3
|
+
return {
|
|
4
|
+
postMessage: nep.postMessage.bind(nep),
|
|
5
|
+
addEventListener: (_, eh) => {
|
|
6
|
+
const l = (data) => {
|
|
7
|
+
if ('handleEvent' in eh) {
|
|
8
|
+
eh.handleEvent({ data });
|
|
9
|
+
}
|
|
10
|
+
else {
|
|
11
|
+
eh({ data });
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
nep.on('message', l);
|
|
15
|
+
listeners.set(eh, l);
|
|
16
|
+
},
|
|
17
|
+
removeEventListener: (_, eh) => {
|
|
18
|
+
const l = listeners.get(eh);
|
|
19
|
+
if (!l) {
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
nep.off('message', l);
|
|
23
|
+
listeners.delete(eh);
|
|
24
|
+
},
|
|
25
|
+
start: nep.start && nep.start.bind(nep),
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZV9lbmRwb2ludC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9iYXJyZXRlbmJlcmdfd2FzbS9oZWxwZXJzL25vZGUvbm9kZV9lbmRwb2ludC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsWUFBWSxDQUFDLEdBQWlCO0lBQzVDLE1BQU0sU0FBUyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFDaEMsT0FBTztRQUNMLFdBQVcsRUFBRSxHQUFHLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7UUFDdEMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFNLEVBQUUsRUFBTyxFQUFFLEVBQUU7WUFDcEMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFTLEVBQUUsRUFBRTtnQkFDdEIsSUFBSSxhQUFhLElBQUksRUFBRSxFQUFFLENBQUM7b0JBQ3hCLEVBQUUsQ0FBQyxXQUFXLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2dCQUMzQixDQUFDO3FCQUFNLENBQUM7b0JBQ04sRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztnQkFDZixDQUFDO1lBQ0gsQ0FBQyxDQUFDO1lBQ0YsR0FBRyxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDckIsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDdkIsQ0FBQztRQUNELG1CQUFtQixFQUFFLENBQUMsQ0FBTSxFQUFFLEVBQU8sRUFBRSxFQUFFO1lBQ3ZDLE1BQU0sQ0FBQyxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNQLE9BQU87WUFDVCxDQUFDO1lBQ0QsR0FBRyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdEIsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN2QixDQUFDO1FBQ0QsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO0tBQ3hDLENBQUM7QUFDSixDQUFDIn0=
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from './barretenberg_wasm_main/index.js';
|
|
3
|
+
export declare function fetchModuleAndThreads(desiredThreads?: number): Promise<{
|
|
4
|
+
module: WebAssembly.Module;
|
|
5
|
+
threads: number;
|
|
6
|
+
}>;
|
|
7
|
+
export declare class BarretenbergWasm extends BarretenbergWasmMain {
|
|
8
|
+
/**
|
|
9
|
+
* Construct and initialize BarretenbergWasm within a Worker. Return both the worker and the wasm proxy.
|
|
10
|
+
* Used when running in the browser, because we can't block the main thread.
|
|
11
|
+
*/
|
|
12
|
+
static new(desiredThreads?: number): Promise<{
|
|
13
|
+
worker: import("worker_threads").Worker;
|
|
14
|
+
wasm: BarretenbergWasmMainWorker;
|
|
15
|
+
}>;
|
|
16
|
+
}
|
|
17
|
+
export type BarretenbergWasmWorker = BarretenbergWasmMainWorker;
|
|
18
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/barretenberg_wasm/index.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAKrG,wBAAsB,qBAAqB,CAAC,cAAc,SAAK;;;GAU9D;AAgBD,qBAAa,gBAAiB,SAAQ,oBAAoB;IACxD;;;OAGG;WACiB,GAAG,CAAC,cAAc,CAAC,EAAE,MAAM;;;;CAOhD;AAED,MAAM,MAAM,sBAAsB,GAAG,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { proxy } from 'comlink';
|
|
2
|
+
import createDebug from 'debug';
|
|
3
|
+
import { createMainWorker } from './barretenberg_wasm_main/factory/node/index.js';
|
|
4
|
+
import { getRemoteBarretenbergWasm, getSharedMemoryAvailable } from './helpers/node/index.js';
|
|
5
|
+
import { BarretenbergWasmMain } from './barretenberg_wasm_main/index.js';
|
|
6
|
+
import { fetchCode } from './fetch_code/index.js';
|
|
7
|
+
const debug = createDebug('bb.js:wasm');
|
|
8
|
+
export async function fetchModuleAndThreads(desiredThreads = 32) {
|
|
9
|
+
const shared = getSharedMemoryAvailable();
|
|
10
|
+
const availableThreads = shared ? await getAvailableThreads() : 1;
|
|
11
|
+
// We limit the number of threads to 32 as we do not benefit from greater numbers.
|
|
12
|
+
const limitedThreads = Math.min(desiredThreads, availableThreads, 32);
|
|
13
|
+
const code = await fetchCode(shared);
|
|
14
|
+
const module = await WebAssembly.compile(code);
|
|
15
|
+
return { module, threads: limitedThreads };
|
|
16
|
+
}
|
|
17
|
+
async function getAvailableThreads() {
|
|
18
|
+
if (typeof navigator !== 'undefined' && navigator.hardwareConcurrency) {
|
|
19
|
+
return navigator.hardwareConcurrency;
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
try {
|
|
23
|
+
const os = await import('os');
|
|
24
|
+
return os.cpus().length;
|
|
25
|
+
}
|
|
26
|
+
catch (e) {
|
|
27
|
+
debug(`Could not detect environment. Falling back to one thread.: {e}`);
|
|
28
|
+
return 1;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export class BarretenbergWasm extends BarretenbergWasmMain {
|
|
33
|
+
/**
|
|
34
|
+
* Construct and initialize BarretenbergWasm within a Worker. Return both the worker and the wasm proxy.
|
|
35
|
+
* Used when running in the browser, because we can't block the main thread.
|
|
36
|
+
*/
|
|
37
|
+
static async new(desiredThreads) {
|
|
38
|
+
const worker = createMainWorker();
|
|
39
|
+
const wasm = getRemoteBarretenbergWasm(worker);
|
|
40
|
+
const { module, threads } = await fetchModuleAndThreads(desiredThreads);
|
|
41
|
+
await wasm.init(module, threads, proxy(debug));
|
|
42
|
+
return { worker, wasm };
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNoQyxPQUFPLFdBQVcsTUFBTSxPQUFPLENBQUM7QUFDaEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLHdCQUF3QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUYsT0FBTyxFQUFFLG9CQUFvQixFQUE4QixNQUFNLG1DQUFtQyxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRCxNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUM7QUFFeEMsTUFBTSxDQUFDLEtBQUssVUFBVSxxQkFBcUIsQ0FBQyxjQUFjLEdBQUcsRUFBRTtJQUM3RCxNQUFNLE1BQU0sR0FBRyx3QkFBd0IsRUFBRSxDQUFDO0lBRTFDLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLG1CQUFtQixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsRSxrRkFBa0Y7SUFDbEYsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFFdEUsTUFBTSxJQUFJLEdBQUcsTUFBTSxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDckMsTUFBTSxNQUFNLEdBQUcsTUFBTSxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9DLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxDQUFDO0FBQzdDLENBQUM7QUFFRCxLQUFLLFVBQVUsbUJBQW1CO0lBQ2hDLElBQUksT0FBTyxTQUFTLEtBQUssV0FBVyxJQUFJLFNBQVMsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQ3RFLE9BQU8sU0FBUyxDQUFDLG1CQUFtQixDQUFDO0lBQ3ZDLENBQUM7U0FBTSxDQUFDO1FBQ04sSUFBSSxDQUFDO1lBQ0gsTUFBTSxFQUFFLEdBQUcsTUFBTSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDOUIsT0FBTyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDO1FBQzFCLENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsS0FBSyxDQUFDLGdFQUFnRSxDQUFDLENBQUM7WUFDeEUsT0FBTyxDQUFDLENBQUM7UUFDWCxDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUM7QUFFRCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsb0JBQW9CO0lBQ3hEOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGNBQXVCO1FBQzdDLE1BQU0sTUFBTSxHQUFHLGdCQUFnQixFQUFFLENBQUM7UUFDbEMsTUFBTSxJQUFJLEdBQUcseUJBQXlCLENBQTZCLE1BQU0sQ0FBQyxDQUFDO1FBQzNFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN4RSxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMvQyxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQzFCLENBQUM7Q0FDRiJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../../src/barretenberg_wasm/index.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { BarretenbergWasm } from './index.js';
|
|
2
|
+
describe('barretenberg wasm', () => {
|
|
3
|
+
let worker;
|
|
4
|
+
let wasm;
|
|
5
|
+
beforeAll(async () => {
|
|
6
|
+
({ wasm, worker } = await BarretenbergWasm.new(2));
|
|
7
|
+
}, 20000);
|
|
8
|
+
afterAll(async () => {
|
|
9
|
+
await wasm.destroy();
|
|
10
|
+
await worker.terminate();
|
|
11
|
+
});
|
|
12
|
+
it('should new malloc, transfer and slice mem', async () => {
|
|
13
|
+
const length = 1024;
|
|
14
|
+
const ptr = await wasm.call('bbmalloc', length);
|
|
15
|
+
const buf = Buffer.alloc(length, 128);
|
|
16
|
+
await wasm.writeMemory(ptr, buf);
|
|
17
|
+
const result = Buffer.from(await wasm.getMemorySlice(ptr, ptr + length));
|
|
18
|
+
await wasm.call('bbfree', ptr);
|
|
19
|
+
expect(result).toStrictEqual(buf);
|
|
20
|
+
});
|
|
21
|
+
it('test abort', async () => {
|
|
22
|
+
await expect(() => wasm.call('test_abort')).rejects.toThrow();
|
|
23
|
+
});
|
|
24
|
+
it('test c/c++ stdout/stderr', async () => {
|
|
25
|
+
// We're checking we don't crash, but you can manually confirm you see log lines handled by logstr.
|
|
26
|
+
await wasm.call('test_stdout_stderr');
|
|
27
|
+
});
|
|
28
|
+
it('should new malloc, transfer and slice mem', async () => {
|
|
29
|
+
const length = 1024;
|
|
30
|
+
const ptr = await wasm.call('bbmalloc', length);
|
|
31
|
+
const buf = Buffer.alloc(length, 128);
|
|
32
|
+
await wasm.writeMemory(ptr, buf);
|
|
33
|
+
const result = Buffer.from(await wasm.getMemorySlice(ptr, ptr + length));
|
|
34
|
+
await wasm.call('bbfree', ptr);
|
|
35
|
+
expect(result).toStrictEqual(buf);
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXJyZXRlbmJlcmdfd2FzbS9pbmRleC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBMEIsTUFBTSxZQUFZLENBQUM7QUFFdEUsUUFBUSxDQUFDLG1CQUFtQixFQUFFLEdBQUcsRUFBRTtJQUNqQyxJQUFJLE1BQWUsQ0FBQztJQUNwQixJQUFJLElBQTZCLENBQUM7SUFFbEMsU0FBUyxDQUFDLEtBQUssSUFBSSxFQUFFO1FBQ25CLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsTUFBTSxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyRCxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFVixRQUFRLENBQUMsS0FBSyxJQUFJLEVBQUU7UUFDbEIsTUFBTSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDckIsTUFBTSxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDM0IsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsMkNBQTJDLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDekQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDaEQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDdEMsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNqQyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekUsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMvQixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLFlBQVksRUFBRSxLQUFLLElBQUksRUFBRTtRQUMxQixNQUFNLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2hFLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDBCQUEwQixFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3hDLG1HQUFtRztRQUNuRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUN4QyxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQywyQ0FBMkMsRUFBRSxLQUFLLElBQUksRUFBRTtRQUN6RCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDcEIsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNoRCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN0QyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN6RSxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDcEMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/benchmark/index.ts"],"names":[],"mappings":"AACA,cAAc,YAAY,CAAC;AAW3B,wBAAgB,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,QAazF"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as fs from 'fs';
|
|
2
|
+
export * from './timer.js';
|
|
3
|
+
const bfd = (() => {
|
|
4
|
+
const bfdStr = process.env.BENCHMARK_FD;
|
|
5
|
+
const bfd = bfdStr ? parseInt(bfdStr) : -1;
|
|
6
|
+
if (bfd >= 0 && !fs.fstatSync(bfd)) {
|
|
7
|
+
throw new Error('fd is not open. Did you redirect in your shell?');
|
|
8
|
+
}
|
|
9
|
+
return bfd;
|
|
10
|
+
})();
|
|
11
|
+
export function writeBenchmark(name, value, labels = {}) {
|
|
12
|
+
if (bfd === -1) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
const data = {
|
|
16
|
+
timestamp: new Date().toISOString(),
|
|
17
|
+
name,
|
|
18
|
+
type: typeof value,
|
|
19
|
+
value,
|
|
20
|
+
...labels,
|
|
21
|
+
};
|
|
22
|
+
const jsonl = JSON.stringify(data) + '\n';
|
|
23
|
+
fs.writeSync(bfd, jsonl);
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmVuY2htYXJrL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQ3pCLGNBQWMsWUFBWSxDQUFDO0FBRTNCLE1BQU0sR0FBRyxHQUFHLENBQUMsR0FBRyxFQUFFO0lBQ2hCLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDO0lBQ3hDLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxpREFBaUQsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFFTCxNQUFNLFVBQVUsY0FBYyxDQUFJLElBQVksRUFBRSxLQUFRLEVBQUUsU0FBOEIsRUFBRTtJQUN4RixJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ2YsT0FBTztJQUNULENBQUM7SUFDRCxNQUFNLElBQUksR0FBRztRQUNYLFNBQVMsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRTtRQUNuQyxJQUFJO1FBQ0osSUFBSSxFQUFFLE9BQU8sS0FBSztRQUNsQixLQUFLO1FBQ0wsR0FBRyxNQUFNO0tBQ1YsQ0FBQztJQUNGLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDO0lBQzFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQzNCLENBQUMifQ==
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Timer class to measure time intervals in milliseconds and seconds.
|
|
3
|
+
* Upon instantiation, it stores the current timestamp as the starting point.
|
|
4
|
+
* The 'ms()' method returns the elapsed time in milliseconds,
|
|
5
|
+
* while the 's()' method returns the elapsed time in seconds.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* const timer = new Timer();
|
|
9
|
+
* setTimeout(() =\> \{
|
|
10
|
+
* console.log(`Elapsed time: ${timer.ms()} ms`);
|
|
11
|
+
* \}, 1000);
|
|
12
|
+
*/
|
|
13
|
+
export declare class Timer {
|
|
14
|
+
private start;
|
|
15
|
+
constructor();
|
|
16
|
+
us(): number;
|
|
17
|
+
/**
|
|
18
|
+
* Returns the elapsed time in milliseconds since the Timer instance was created.
|
|
19
|
+
* Provides a simple and convenient way to measure the time duration between two events
|
|
20
|
+
* or monitor performance of specific code sections.
|
|
21
|
+
*
|
|
22
|
+
* @returns The elapsed time in milliseconds.
|
|
23
|
+
*/
|
|
24
|
+
ms(): number;
|
|
25
|
+
/**
|
|
26
|
+
* Returns the time elapsed since the Timer instance was created, in seconds.
|
|
27
|
+
* The value is calculated by subtracting the initial start time from the current time
|
|
28
|
+
* and dividing the result by 1000 to convert milliseconds to seconds.
|
|
29
|
+
*
|
|
30
|
+
* @returns The elapsed time in seconds.
|
|
31
|
+
*/
|
|
32
|
+
s(): number;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=timer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timer.d.ts","sourceRoot":"","sources":["../../../src/benchmark/timer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,qBAAa,KAAK;IAChB,OAAO,CAAC,KAAK,CAAS;;IAMf,EAAE;IAIT;;;;;;OAMG;IACI,EAAE;IAIT;;;;;;OAMG;IACI,CAAC;CAGT"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Timer class to measure time intervals in milliseconds and seconds.
|
|
3
|
+
* Upon instantiation, it stores the current timestamp as the starting point.
|
|
4
|
+
* The 'ms()' method returns the elapsed time in milliseconds,
|
|
5
|
+
* while the 's()' method returns the elapsed time in seconds.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* const timer = new Timer();
|
|
9
|
+
* setTimeout(() =\> \{
|
|
10
|
+
* console.log(`Elapsed time: ${timer.ms()} ms`);
|
|
11
|
+
* \}, 1000);
|
|
12
|
+
*/
|
|
13
|
+
export class Timer {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.start = performance.now();
|
|
16
|
+
}
|
|
17
|
+
us() {
|
|
18
|
+
return this.ms() * 1000;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Returns the elapsed time in milliseconds since the Timer instance was created.
|
|
22
|
+
* Provides a simple and convenient way to measure the time duration between two events
|
|
23
|
+
* or monitor performance of specific code sections.
|
|
24
|
+
*
|
|
25
|
+
* @returns The elapsed time in milliseconds.
|
|
26
|
+
*/
|
|
27
|
+
ms() {
|
|
28
|
+
return performance.now() - this.start;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Returns the time elapsed since the Timer instance was created, in seconds.
|
|
32
|
+
* The value is calculated by subtracting the initial start time from the current time
|
|
33
|
+
* and dividing the result by 1000 to convert milliseconds to seconds.
|
|
34
|
+
*
|
|
35
|
+
* @returns The elapsed time in seconds.
|
|
36
|
+
*/
|
|
37
|
+
s() {
|
|
38
|
+
return this.ms() / 1000;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmVuY2htYXJrL3RpbWVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsTUFBTSxPQUFPLEtBQUs7SUFHaEI7UUFDRSxJQUFJLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU0sRUFBRTtRQUNQLE9BQU8sSUFBSSxDQUFDLEVBQUUsRUFBRSxHQUFHLElBQUksQ0FBQztJQUMxQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksRUFBRTtRQUNQLE9BQU8sV0FBVyxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDeEMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLENBQUM7UUFDTixPQUFPLElBQUksQ0FBQyxFQUFFLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFDMUIsQ0FBQztDQUNGIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bigint-array/index.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,UAU3C;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,SAAK,cAQxD"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export function toBigIntBE(bytes) {
|
|
2
|
+
// A Buffer in node, *is* a Uint8Array. We can't refuse it's type.
|
|
3
|
+
// However the algo below only works on an actual Uint8Array, hence we make a new one to be safe.
|
|
4
|
+
bytes = new Uint8Array(bytes);
|
|
5
|
+
let bigint = BigInt(0);
|
|
6
|
+
const view = new DataView(bytes.buffer);
|
|
7
|
+
for (let i = 0; i < bytes.byteLength; i++) {
|
|
8
|
+
bigint = (bigint << BigInt(8)) + BigInt(view.getUint8(i));
|
|
9
|
+
}
|
|
10
|
+
return bigint;
|
|
11
|
+
}
|
|
12
|
+
export function toBufferBE(value, byteLength = 32) {
|
|
13
|
+
const bytes = new Uint8Array(byteLength);
|
|
14
|
+
const view = new DataView(bytes.buffer);
|
|
15
|
+
for (let i = 0; i < byteLength; i++) {
|
|
16
|
+
view.setUint8(byteLength - i - 1, Number(value & BigInt(0xff)));
|
|
17
|
+
value >>= BigInt(8);
|
|
18
|
+
}
|
|
19
|
+
return bytes;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmlnaW50LWFycmF5L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxVQUFVLENBQUMsS0FBaUI7SUFDMUMsa0VBQWtFO0lBQ2xFLGlHQUFpRztJQUNqRyxLQUFLLEdBQUcsSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsSUFBSSxNQUFNLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3ZCLE1BQU0sSUFBSSxHQUFHLElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQzFDLE1BQU0sR0FBRyxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFDRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBRUQsTUFBTSxVQUFVLFVBQVUsQ0FBQyxLQUFhLEVBQUUsVUFBVSxHQUFHLEVBQUU7SUFDdkQsTUFBTSxLQUFLLEdBQUcsSUFBSSxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekMsTUFBTSxJQUFJLEdBQUcsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3hDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxVQUFVLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRSxLQUFLLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RCLENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function_declaration.d.ts","sourceRoot":"","sources":["../../../src/bindgen/function_declaration.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,GAAG,EAAE,CAAC;IACd,OAAO,EAAE,GAAG,EAAE,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bindgen/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { generateRustCode } from './rust.js';
|
|
2
|
+
import { generateTypeScriptCode } from './typescript.js';
|
|
3
|
+
const [, , exp = '../exports.json', lang = 'ts'] = process.argv;
|
|
4
|
+
function generateCode(exports, lang) {
|
|
5
|
+
switch (lang) {
|
|
6
|
+
case 'ts':
|
|
7
|
+
return generateTypeScriptCode(exports);
|
|
8
|
+
case 'rust':
|
|
9
|
+
return generateRustCode(exports);
|
|
10
|
+
default:
|
|
11
|
+
throw new Error(`Unknown lang: ${lang}`);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
console.log(generateCode(exp, lang));
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmluZGdlbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDN0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFekQsTUFBTSxDQUFDLEVBQUUsQUFBRCxFQUFHLEdBQUcsR0FBRyxpQkFBaUIsRUFBRSxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztBQUVoRSxTQUFTLFlBQVksQ0FBQyxPQUFlLEVBQUUsSUFBWTtJQUNqRCxRQUFRLElBQUksRUFBRSxDQUFDO1FBQ2IsS0FBSyxJQUFJO1lBQ1AsT0FBTyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QyxLQUFLLE1BQU07WUFDVCxPQUFPLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ25DO1lBQ0UsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDO0FBQ0gsQ0FBQztBQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDIn0=
|