Socket
Socket
Sign inDemoInstall

@supercharge/queue-datastructure

Package Overview
Dependencies
0
Maintainers
3
Versions
9
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @supercharge/queue-datastructure

A no-dependency, in-memory queue data structure for Node.js and JavaScript


Version published
Maintainers
3
Install size
15.4 kB
Created

Changelog

Source

2.1.0 - 2020-08-20

Updated

  • move tests to TypeScript
  • test directly the TypeScript code via ts-jest
  • point main in package.json to export the transpiled code
  • point types in package.json to export the types from the transpiled code

Removed

  • deleted index.js file which acted as a middleman to export the transpiled code

Readme

Source


Queue Datastructure

A queue data structure for Node.js and JavaScript.


Installation · Usage · API



Latest Version Monthly downloads

Follow @marcuspoehls and @superchargejs for updates!


Installation

npm i @supercharge/queue-datastructure

Usage

Using the queue data structure is pretty straightforward. The library exposes a Queue class that you can use to create a queue instance. You can create a queue from existing data or an empty one:

const Queue = require('@supercharge/queue-datastructure')

// create a queue from an existing array
const queue = new Queue([ 1, 2, 3 ])

// or, create a queue from individual items
const queue = new Queue(1, 2, 3)

// or, create an empty queue
const queue = new Queue()

API

.enqueue(items)

Push new items to the end of the queue.

queue
  .enqueue(1)
  .enqueue(2, 3)
  .enqueue([ 4, 5, 6])

// Queue: 1, 2, 3, 4, 5, 6
.dequeue()

Remove and return the item which is up for processing. Returns undefined if the queue is empty.

queue.enqueue(1, 2, 3)
queue.size() // 3

queue.dequeue() // 1
queue.size() // 2
.peek()

Returns the first item without removing it from the queue. Returns undefined if the queue is empty.

queue.enqueue(1, 2, 3)
queue.peek() // 1
.size()

Returns the number of items in the queue.

queue.size() // 0
queue.enqueue(1, 2)
queue.size() // 2
.isEmpty()

Returns true if there are no items in the queue, false otherwise.

queue.isEmpty() // true
queue.enqueue(1)
queue.isEmpty() // false
.isNotEmpty()

Returns true if there are items in the queue, false when the queue is empty.

queue.isNotEmpty() // false
queue.enqueue(1)
queue.isNotEmpty() // true
.clear()

Removes all items from the queue.

queue.clear()
queue.size() // 0

Contributing

  1. Create a fork
  2. Create your feature branch: git checkout -b my-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request 🚀

License

MIT © Supercharge


superchargejs.com  ·  GitHub @supercharge  ·  Twitter @superchargejs

Keywords

FAQs

Last updated on 20 Aug 2020

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc