Package Exports
- onigasm
- onigasm/lib/onigasm.wasm
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (onigasm) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Onigasm (OnigurumaASM)
WebAssembly port of Oniguruma regex library.
Usage/API/Behaviour 1:1 with node-oniguruma port, tests are literally imported from node-oniguruma repository for maximum compliance.
Of course, unlike node-oniguruma, this library can't hook into roots of V8 and is therefore 2 times* slower than the former.
Instructions for porting your app to web
Install
npm i onigasmLight it up
WASM must be loaded before you use any other feature like
OnigRegExporOnigScanner
// index.js (entry point)
import { loadWASM } from 'onigasm'
import App from './App'
(async () => {
await loadWASM('path/to/onigasm.wasm') // You can also pass ArrayBuffer of onigasm.wasm file
App.start()
})()
// `onigasm.wasm` file will be available at `onigasm/lib/onigasm.wasm` in `node_modules` of your project directoryOnce loaded
onigasmis a drop-in replacement foroniguruma
- import { OnigRegExp } from 'oniguruma'
+ import { OnigRegExp } from 'onigasm'That's it!
* Tested under laboratory conditions using benchmark.js
License
onigasm is licensed under MIT License. See LICENSE in the root of this project for more info.
Contributors/Maintainers
- @neeksandhu (Neek Sandhu)
- @aeschli (Martin Aeschlimann)