1.0.2 • Published 3 years ago

myqueue v1.0.2

Weekly downloads
3
License
ISC
Repository
-
Last release
3 years ago

MyQueue

MyQueue is a queuing system used to make functions run sequentially or in parallel

Made by

Esponjosin With the help of Danny

Install

npm i myqueue --save

Functions

If you want to be aware of what is happening internally you can log what the debug event emits

<Queue>.on('debug', console.log)

Add

The add function is used to add the desired function to the waiting list

/**
 * @param {Object} [obj] Object with the data of the function
 * @param  {...any} args Arguments to be given to the function
 */

// Javascript

const Queue = new (require('myqueue'))();

// Typescript

import MyQueue from 'myqueue';

const Queue: MyQueue = new MyQueue();

// Normal

Queue.Add({
    fun: log
}, 'Hello', 'World');

function log(...args) {
    console.log(...args);
};

// Emitting an event when the task is complete

const observer = new (require('events'));

observer.on('test', console.log)

Queue.Add({
    fun: log,
    emitter: observer,
    event: 'test',
    argsToEmit: 'NodeJS'
}, 'Hello', 'World');

/**
Expected Promise Output
{<Function> response}
 */

Slice

The slice function is used to remove a waiting function from the queue

/**
 * @param {Number} [index] Index in which you want to delete
 */

// Javascript

const Queue = new (require('myqueue'))();

// Typescript

import MyQueue from 'myqueue';

const Queue: MyQueue = new MyQueue();

Queue.Add({
    fun: log
}, 'Hello', 'World');

function log(...args) {
    console.log(...args);
};

Queue.Add({
    fun: log
}, 'Hello', 'World');

Queue.Slice(1)

/**
Expected Promise Output
{<Boolean>}
 */

Pause

The function pauses for the queue indefinitely until it is reactivated with the function resume

// Javascript

const Queue = new (require('myqueue'))();

// Typescript

import MyQueue from 'myqueue';

const Queue: MyQueue = new MyQueue();

Queue.Add({
    fun: log
}, 'Hello', 'World');

function log(...args) {
    console.log(...args);
};

Queue.Pause()

/**
Expected Promise Output
{<Boolean>}
 */

Resume

The resume function reactivates the queue

// Javascript

const Queue = new (require('myqueue'))();

// Typescript

import MyQueue from 'myqueue';

const Queue: MyQueue = new MyQueue();

Queue.Add({
    fun: log
}, 'Hello', 'World');

function log(...args) {
    console.log(...args);
};

Queue.Resume()

/**
Expected Promise Output
{<Boolean>}
 */

allQueue

The allQueue function returns an array with all the tasks that are waiting

// Javascript

const Queue = new (require('myqueue'))();

// Typescript

import MyQueue from 'myqueue';

const Queue: MyQueue = new MyQueue();

Queue.Add({
    fun: log
}, 'Hello', 'World');

function log(...args) {
    console.log(...args);
};

Queue.allQueue()

/**
Expected Promise Output
{<Array>}
 */

Clear

The Clear function removes the entire queue

// Javascript

const Queue = new (require('myqueue'))();

// Typescript

import MyQueue from 'myqueue';

const Queue: MyQueue = new MyQueue();

Queue.Add({
    fun: log
}, 'Hello', 'World');

function log(...args) {
    console.log(...args);
};

Queue.Clear()

/**
Expected Promise Output
{<Array>}
 */