sugaryjs
Version:
Allowing Developers to Write their Own Syntactic Sugars for JavaScript
14 lines (12 loc) • 420 B
JavaScript
export function output(ast) {
const generateSourceCode = (nodes, accumulator) => {
if (nodes.length === 0) {
return accumulator;
}
const first = nodes[0];
const rest = nodes.slice(1);
return generateSourceCode([...first.Children, ...rest],
accumulator + first.getSourceCode());
}
return generateSourceCode([ast], "");
}