v0.1.2
Circle Buffer
A simple circular array buffer for efficient management of circular buffers in JavaScript/TypeScript.
Installation
npm install circle-bufferUsage
import { CircularBuffer } from 'circle-buffer';
// Create a circular buffer with a limit of 5
const buffer = new CircularBuffer({ limit: 5 });
// Add values to the buffer
buffer.forward('A');
buffer.forward('B');
buffer.forward('C');
// Get the current state of the buffer
console.log(buffer.get()); // Output: 'ABC'
// Rewind the buffer
buffer.rewind();
// Get the updated buffer state
console.log(buffer.get()); // Output: 'AB'
// Reset the buffer
buffer.reset();
// Get the buffer state after reset
console.log(buffer.get()); // Output: ''API
CircularBuffer
Constructor
-
new CircularBuffer(options: { limit: number }): CircularBufferCreates a new instance of the
CircularBufferclass with the specified limit.options.limit: The maximum number of elements the circular buffer can hold.
Methods
-
get(): stringReturns a string representation of the current state of the circular buffer.
-
reset(): voidResets the circular buffer by filling it with empty strings.
-
forward(value: string): voidMoves the buffer forward by one position, adding the provided value at the end of the buffer. If the buffer is full, the oldest value is removed.
value: The string value to be added to the buffer.
-
rewind(): voidMoves the buffer backward by one position, removing the last value. If the buffer becomes empty, an empty string is added at the beginning.
License
This project is licensed under the MIT License - see the LICENSE file for details.