1.0.2 • Published 8 months ago
@vvlad1973/simple-queue v1.0.2
Queue Class
This module provides the Queue class for managing a priority-based queue.
Installation
npm install @vvlad1973/simple-queueUsage
import Queue from '@vvlad1973/simple-queue';
const queue = new Queue<string>(10);
queue.enqueue('task1', 5);
queue.enqueue('task2', 1);
console.log(queue.front); // 'task2' (higher priority)
queue.dequeue();
console.log(queue.size); // 1API
Constructor
new Queue<T>(limitSize?: number)limitSize(optional, default:Infinity) – The maximum number of items the queue can hold.
Properties
limitSize: number– The maximum size of the queue.contents: QueueItem<T>[]– Retrieves the contents of the queue.size: number– Retrieves the current size of the queue.front: T | undefined– Retrieves the item at the front of the queue.
Methods
enqueue(item: T, priority?: number): boolean
Adds an item to the queue with a specified priority.
item: T– The item to be added.priority: number(optional, default:Number.MAX_VALUE) – The priority of the item.- Returns
trueif the item was added. - Throws
OverloadErrorif the queue is full.
dequeue(): T | undefined
Removes and returns the item with the highest priority.
- Returns the removed item or
undefinedif the queue is empty.
clear(): void
Clears the contents of the queue.
isEmpty(): boolean
Checks if the queue is empty.
- Returns
trueif the queue is empty, otherwisefalse.
License
MIT License with Commercial Use