watr
Version:
Light & fast WAT compiler – WebAssembly Text to binary, parse, print, transform
34 lines • 1.42 kB
TypeScript
export default watr;
/**
* Compile and instantiate WAT, returning exports.
*
* @param {string|TemplateStringsArray} source - WAT source or template strings
* @param {...any} values - Interpolation values (for template literal)
* @returns {WebAssembly.Exports} Module exports
*
* @example
* const { add } = watr`(func (export "add") (param i32 i32) (result i32)
* (i32.add (local.get 0) (local.get 1))
* )`
*/
export function watr(source: string | TemplateStringsArray, ...values: any[]): WebAssembly.Exports;
/**
* Compile WAT to binary. Supports both string and template literal.
*
* @param {string|TemplateStringsArray} source - WAT source or template strings
* @param {...any} values - Interpolation values (for template literal).
* Last value can be an options object: { polyfill, optimize }.
* @returns {Uint8Array} WebAssembly binary
*
* @example
* compile('(func (export "f") (result i32) (i32.const 42))')
* compile`(func (export "f") (result f64) (f64.const ${Math.PI}))`
* compile(src, { polyfill: true, optimize: true })
*/
export function compile(source: string | TemplateStringsArray, ...values: any[]): Uint8Array;
import parse from './src/parse.js';
import print from './src/print.js';
import _polyfill from './src/polyfill.js';
import _optimize from './src/optimize.js';
export { parse, print, _polyfill as polyfill, _optimize as optimize };
//# sourceMappingURL=watr.d.ts.map