UNPKG

grafast

Version:

Cutting edge GraphQL planning and execution engine

36 lines 1.08 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CoalesceStep = void 0; exports.coalesce = coalesce; const constants_js_1 = require("../constants.js"); const step_js_1 = require("../step.js"); class CoalesceStep extends step_js_1.UnbatchedStep { static { this.$$export = { moduleName: "grafast", exportName: "CoalesceStep", }; } constructor(steps) { super(); this.isSyncAndSafe = true; this.allowMultipleOptimizations = true; for (const step of steps) { this.addDataDependency({ step, acceptFlags: constants_js_1.FLAG_INHIBITED | constants_js_1.FLAG_NULL, }); } } unbatchedExecute(_info, ...values) { return values.find((v) => v != null) ?? null; } } exports.CoalesceStep = CoalesceStep; function coalesce(...input) { if (Array.isArray(input[0])) { return new CoalesceStep(input[0]); } else { return new CoalesceStep(input); } } //# sourceMappingURL=coalesce.js.map