nimma
Version:
Scalable JSONPath engine.
28 lines (22 loc) • 909 B
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var builders = require('../ast/builders.cjs');
var consts = require('../tree/consts.cjs');
var internalScope = require('./internal-scope.cjs');
var scope = require('./scope.cjs');
var state = require('./state.cjs');
const PARAMS = {
[0]: [scope.default._],
[consts.NEEDS_TRAVERSAL]: [scope.default._],
[consts.NEEDS_TRAVERSAL | consts.NEEDS_STATE]: [scope.default._, state.default._],
[consts.NEEDS_TRAVERSAL | consts.NEEDS_SHORTHANDS]: [scope.default._, internalScope.default.shorthands],
[consts.NEEDS_TRAVERSAL | consts.NEEDS_STATE | consts.NEEDS_SHORTHANDS]: [
scope.default._,
state.default._,
internalScope.default.shorthands,
],
};
function generateTreeMethod(id, branch, feedback) {
return builders.objectMethod('method', id, PARAMS[feedback], branch);
}
exports.default = generateTreeMethod;