discrete-queue

2.0.0 • Public • Published

Discrete Queue

version license issues language npm bundle size

Execute ordered list of functions. Add data-arguments and they will be passed to each function in the list:

import dQ from 'discrete-queue'
const car = { ... }; // Car object definition
dQ ( [ getTheCar, washIt, driveToTheGarage], car ).then ( result => .... )
/*          ^                                 ^               ^
/*          |                Extra data argument              |
            |                                                 |
            |                Array of function returns -------+
            |
            +---> list of tasks ( functions )          
*/

Installation

Install by writing in your terminal:

npm install discrete-queue --save

Once it has been installed, it can be used by writing this line of JavaScript:

import dQ from 'discrete-queue'

Task Functions

Every task function will receive two arguments. Task is an ask-for-promise object and controls execution of queue. Resolving the promise will start next task. Data is available for all functions in task list.

let myTask = ( task, data ) => {
           // ... do something here
           task.done ( 'myTaskResult' )   // finishing the task. Provide result if needed 
           // return task.promise // --> if function has asynchronous code and we have to wait until it is done
     }

Examples

Find some examples in ./test folder.

Known bugs

(Nothing yet)

Credits

'discrete-queue' was created by Peter Naydenov.

License

'discrete-queue' is released under the MIT License.

Package Sidebar

Install

npm i discrete-queue

Weekly Downloads

150

Version

2.0.0

License

MIT

Unpacked Size

6.2 kB

Total Files

6

Last publish

Collaborators

  • dreamgfx