npm.io
1.0.0 • Published 1 month ago

@putout/operator-wasm

Licence
MIT
Version
1.0.0
Deps
1
Size
5 kB
Vulns
0
Weekly
0
Stars
796

@putout/operator-wasm NPM version

Putout operator adds ability to lint wasm.

Install

npm i putout @putout/operator-wasm

API

__wasm
import {operator} from 'putout';

const {__wasm} = operator;

export const traverse = ({push}) => ({
    [__wasm]: push,
});
wrapInNamespace(source: string, name?: string);
import {montag} from 'montag';
import {operator} from 'putout';

const {wrapInNamespace} = operator;

wrapInNamespace(montag`
    export function add(a: i32, b: i32) {
        i32.add(get.local(b), get.local(a));
    }
`);
// returns
`namespace __putout_processor_wasm {
    export function add(a: i32, b: i32) {
        i32.add(get.local(b), get.local(a));
    }
}`;
unwrapNamespace(source: string, name?: string);
import {montag} from 'montag';
import {operator} from 'putout';

const {unwrapNamespace} = operator;

unwrapNamespace(montag`
    namespace __putout_processor_wasm {
        export function add(a: i32, b: i32) {
            i32.add(get.local(b), get.local(a));
        }
    }
`);
// returns
`export function add(a: i32, b: i32) {
    i32.add(get.local(b), get.local(a));
}`;

License

MIT

Keywords