s-exify
v0.3.2
Published
Beautifier for S-expression, mainly for WAT
Downloads
6
Maintainers
Readme
s-exify
Beautifier for S-expression, mainly for WAT
Install
npm install s-exify
API
The s-exify
module exports the following members.
TypeScript:
import { SExp, parse, beautify } from "s-exify";
JavaScript:
const { parse, beautify } = require("s-exify");
// for mjs
import { parse, beautify } from "s-exify/module";
type SExp
TypeScript only. A type for parsed S-expression, which is basically nested array of strings.
const sExp: SExp = [
"module",
["global", "$g", ["import", `"js"`, `"global"`], ["mut", "i32"]]
];
parse(input: string): SExp
A parse function to literally parse a string into SExp
.
parse("(i32.const 1234)") // => ["i32.const", "1234"]
beautify(input: string): string
A code beautifier function to format S-expression.
beautify("(i32.const\n1234\n)") // => (i32.const 1234)
beautify("(module ... very long expr ...)") // => (module↵ ...
CLI
The npm package provides a CLI script, s-exify
.
cat out.wat | s-exify # with pipe
s-exify out.wat # with a file
It will output the formatted S-expression as stdout.