UNPKG

firewalk

Version:

A collection traversal library for Firestore

26 lines 1.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SLLQueueExtended = void 0; const ds_1 = require("@proficient/ds"); const errors_1 = require("../errors"); class SLLQueueExtended extends ds_1.SLLQueue { /** * Dequeues the first `itemCount` items into an array. * * @param itemCount - The number of items to dequeue. * @returns The array of dequeued items. * @throws {@link IllegalArgumentError} Thrown if `itemCount` is invalid. */ dequeueFirst(itemCount) { if (!Number.isInteger(itemCount) || itemCount < 0 || itemCount > this.count) { throw new errors_1.IllegalArgumentError('The `itemCount` argument must be a non-negative integer less than or equal to the size of the queue.'); } const items = new Array(itemCount); for (let i = 0; i < itemCount; i++) { items[i] = this.dequeue(); } return items; } } exports.SLLQueueExtended = SLLQueueExtended; //# sourceMappingURL=SLLQueueExtended.js.map