This library will parse .widl
files into an AST. Refer to the docs docs for more information.
$ npm install @wapc/widl
const widl = require("@wapc/widl");
const source = `
namespace "mandelbrot"
interface {
update(width: u32, height: u32, limit: u32): [u16]
}`;
const doc = widl.parse(source, { noLocation: true });
console.log(JSON.stringify(doc));
<script
type="text/javascript"
src="https://cdn.jsdelivr.net/npm/@wapc/widl/dist/standalone.min.js"
></script>
<script type="text/javascript">
const source = `
namespace "mandelbrot"
interface {
update(width: u32, height: u32, limit: u32): [u16]
}`;
const doc = widl.parse(source, { noLocation: true });
console.log(JSON.stringify(doc));
</script>