UNPKG

jsoniq

Version:

JSONiq implementation for JavaScript

29 lines (27 loc) 3.39 kB
"use strict"; /// <reference path="../../../typings/tsd.d.ts" /> //import * as _ from "lodash"; var Iterator_1 = require("./Iterator"); class SimpleMapExpr extends Iterator_1.default { constructor(position, left, right) { super(position); this.left = left; this.right = right; } // serialize() { var node = super.serialize(); node.add("(function *(){\n") .add("for(let $$ of ") .add(this.left.serialize()) .add("){\n") .add(`$$ = [$$];\n`) .add("yield *") .add(this.right.serialize()) .add(";\n") .add("}\n})()"); return node; } } exports.default = SimpleMapExpr; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9ydW50aW1lL2l0ZXJhdG9ycy9TaW1wbGVNYXBFeHByLnRzIl0sIm5hbWVzIjpbIlNpbXBsZU1hcEV4cHIiLCJTaW1wbGVNYXBFeHByLmNvbnN0cnVjdG9yIiwiU2ltcGxlTWFwRXhwci5zZXJpYWxpemUiXSwibWFwcGluZ3MiOiI7QUFBQSxrREFBa0Q7QUFDbEQsOEJBQThCO0FBQzlCLHlCQUFxQixZQUFZLENBQUMsQ0FBQTtBQUlsQyw0QkFBMkMsa0JBQVE7SUFLL0NBLFlBQVlBLFFBQWtCQSxFQUFFQSxJQUFjQSxFQUFFQSxLQUFlQTtRQUMzREMsTUFBTUEsUUFBUUEsQ0FBQ0EsQ0FBQ0E7UUFDaEJBLElBQUlBLENBQUNBLElBQUlBLEdBQUdBLElBQUlBLENBQUNBO1FBQ2pCQSxJQUFJQSxDQUFDQSxLQUFLQSxHQUFHQSxLQUFLQSxDQUFDQTtJQUN2QkEsQ0FBQ0E7SUFFREQsRUFBRUE7SUFDRkEsU0FBU0E7UUFDTEUsSUFBSUEsSUFBSUEsR0FBR0EsS0FBS0EsQ0FBQ0EsU0FBU0EsRUFBRUEsQ0FBQ0E7UUFDN0JBLElBQUlBLENBQUNBLEdBQUdBLENBQUNBLGtCQUFrQkEsQ0FBQ0E7YUFDdkJBLEdBQUdBLENBQUNBLGdCQUFnQkEsQ0FBQ0E7YUFDckJBLEdBQUdBLENBQUNBLElBQUlBLENBQUNBLElBQUlBLENBQUNBLFNBQVNBLEVBQUVBLENBQUNBO2FBQzFCQSxHQUFHQSxDQUFDQSxNQUFNQSxDQUFDQTthQUNYQSxHQUFHQSxDQUFDQSxjQUFjQSxDQUFDQTthQUNuQkEsR0FBR0EsQ0FBQ0EsU0FBU0EsQ0FBQ0E7YUFDZEEsR0FBR0EsQ0FBQ0EsSUFBSUEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsU0FBU0EsRUFBRUEsQ0FBQ0E7YUFDM0JBLEdBQUdBLENBQUNBLEtBQUtBLENBQUNBO2FBQ1ZBLEdBQUdBLENBQUNBLFNBQVNBLENBQUNBLENBQ2xCQTtRQUNEQSxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQTtJQUNoQkEsQ0FBQ0E7QUFDTEYsQ0FBQ0E7Z0NBQUEiLCJmaWxlIjoibGliL3J1bnRpbWUvaXRlcmF0b3JzL1NpbXBsZU1hcEV4cHIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHJlZmVyZW5jZSBwYXRoPVwiLi4vLi4vLi4vdHlwaW5ncy90c2QuZC50c1wiIC8+XG4vL2ltcG9ydCAqIGFzIF8gZnJvbSBcImxvZGFzaFwiO1xuaW1wb3J0IEl0ZXJhdG9yIGZyb20gXCIuL0l0ZXJhdG9yXCI7XG5pbXBvcnQgUG9zaXRpb24gZnJvbSBcIi4uLy4uL2NvbXBpbGVyL3BhcnNlcnMvUG9zaXRpb25cIjtcbmltcG9ydCAqIGFzIFNvdXJjZU1hcCBmcm9tIFwic291cmNlLW1hcFwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTaW1wbGVNYXBFeHByIGV4dGVuZHMgSXRlcmF0b3Ige1xuXG4gICAgcHJpdmF0ZSBsZWZ0OiBJdGVyYXRvcjtcbiAgICBwcml2YXRlIHJpZ2h0OiBJdGVyYXRvcjtcblxuICAgIGNvbnN0cnVjdG9yKHBvc2l0aW9uOiBQb3NpdGlvbiwgbGVmdDogSXRlcmF0b3IsIHJpZ2h0OiBJdGVyYXRvcikge1xuICAgICAgICBzdXBlcihwb3NpdGlvbik7XG4gICAgICAgIHRoaXMubGVmdCA9IGxlZnQ7XG4gICAgICAgIHRoaXMucmlnaHQgPSByaWdodDtcbiAgICB9XG5cbiAgICAvL1xuICAgIHNlcmlhbGl6ZSgpOiBTb3VyY2VNYXAuU291cmNlTm9kZSB7XG4gICAgICAgIHZhciBub2RlID0gc3VwZXIuc2VyaWFsaXplKCk7XG4gICAgICAgIG5vZGUuYWRkKFwiKGZ1bmN0aW9uICooKXtcXG5cIilcbiAgICAgICAgICAgIC5hZGQoXCJmb3IobGV0ICQkIG9mIFwiKVxuICAgICAgICAgICAgLmFkZCh0aGlzLmxlZnQuc2VyaWFsaXplKCkpXG4gICAgICAgICAgICAuYWRkKFwiKXtcXG5cIilcbiAgICAgICAgICAgIC5hZGQoYCQkID0gWyQkXTtcXG5gKVxuICAgICAgICAgICAgLmFkZChcInlpZWxkICpcIilcbiAgICAgICAgICAgIC5hZGQodGhpcy5yaWdodC5zZXJpYWxpemUoKSlcbiAgICAgICAgICAgIC5hZGQoXCI7XFxuXCIpXG4gICAgICAgICAgICAuYWRkKFwifVxcbn0pKClcIilcbiAgICAgICAgO1xuICAgICAgICByZXR1cm4gbm9kZTtcbiAgICB9XG59XG4iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0=