jora
Version:
JavaScript object query engine
33 lines (29 loc) • 668 B
JavaScript
;
function suggest(node, ctx) {
if (node.query === null) {
ctx.queryRoot(node.range[1]);
}
}
function compile(node, ctx) {
if (node.array) {
ctx.put('...');
ctx.put(ctx.buildinFn('ensureArray'));
ctx.put('(');
ctx.nodeOrCurrent(node.query);
ctx.put(')');
return;
}
ctx.put('...');
ctx.nodeOrCurrent(node.query);
}
function walk(node, ctx) {
ctx.nodeOrNothing(node.query);
}
function stringify(node, ctx) {
ctx.put('...');
ctx.nodeOrNothing(node.query);
}
exports.compile = compile;
exports.stringify = stringify;
exports.suggest = suggest;
exports.walk = walk;