Package Exports
- @slimio/queue
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@slimio/queue) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Queue
SlimIO - Simple Queue system
Getting Started
This package is available in the Node Package Repository and can be easily installed with npm or yarn.
$ npm i @slimio/queue
# or
$ yarn add @slimio/queueUsage exemple
const Queue = require("@slimio/queue");
const queue = new Queue();
queue.enqueue("foo", "bar");
console.log(queue.idLenght("foo")); // 1
console.log(queue.dequeue("foo")); // "bar"API
declare namespace Queue {
type id = string|number|symbol;
}Queue.enqueue(id: Queue.id, value: any): void;
Enqueue data in a queue
const queue = new Queue();
queue.enqueue(100, 1);
queue.enqueue(100, 2);
queue.enqueue("foo", "bar");Queue.dequeue(id: Queue.id): any;
Dequeue the first data that was enqueued in a queue
const queue = new Queue();
queue.enqueue(100, 1);
queue.enqueue("foo", "bar");
console.log(queue.dequeue(100)); // 1
console.log(queue.dequeue("foo")); // "bar"Queue.dequeueAll(id: Queue.id): Iterator;
Dequeue all data that was enqueued in a queue
const queue = new Queue();
queue.enqueue(100, 1);
queue.enqueue(100, 2);
queue.enqueue(100, 3);
const data = [...queue.dequeueAll(100)];
console.log(data); // [1, 2, 3]Queue.has(id: Queue.id): boolean;
Check if a QueueID exist
const queue = new Queue();
queue.enqueue("foo", "bar");
console.log(queue.has("foo")); // true
console.log(queue.has("fo")); // falseQueue.ids(): string[];
Get all queues keys
const queue = new Queue();
queue.enqueue(100, 1);
queue.enqueue("foo", "bar");
queue.enqueue("test", 20);
console.log(queue.ids()); // [100, "foo", "test"]Queue.idLength(id: Queue.id): Number;
Return the number of elements of a given QueueID.
const queue = new Queue();
queue.enqueue("test", 20);
queue.enqueue("test", 21);
queue.enqueue("test", 22);
console.log(queue.idLength("test")); // 3LICENCE
MIT