An open API service indexing awesome lists of open source software.

https://github.com/korkje/fifo

First-in-first-out queue
https://github.com/korkje/fifo

deno queue typescript

Last synced: about 1 year ago
JSON representation

First-in-first-out queue

Awesome Lists containing this project

README

          

# fifo [![JSR](https://jsr.io/badges/@korkje/fifo)](https://jsr.io/@korkje/fifo)

Simple and fast first-in-first-out queue.

```ts
import FIFO from "jsr:@korkje/fifo";

const queue = new FIFO();

queue.push(1);
queue.push(2);
queue.push(3);

console.log(queue.length); // 3

console.log(queue.shift()); // 1
console.log(queue.shift()); // 2
console.log(queue.shift()); // 3

console.log(queue.shift()); // undefined
```

Supports both sync and async iteration.

```ts
// Consumes queue
for (const item of queue) {
console.log(item);
}

// Consumes queue, waits for new items
for await (const item of queue) {
console.log(item);
}
```