Files
proxy/nodejs/utils/callback_queue.js
T
2020-12-22 20:20:15 -05:00

27 lines
449 B
JavaScript

'use strict';
class CallbackQueue{
constructor(callbacks){
this.__callbacks = [];
for(let callback of Array.isArray(callbacks) ? callbacks : [callbacks]){
this.push(callback);
}
}
push(callback){
if(callback instanceof Function){
this.__callbacks.push(callback);
}
}
call(){
let args = arguments;
this.__callbacks.forEach(function(callback){
callback(...args);
}.bind(this))
}
}
module.exports = {CallbackQueue};