first commit
This commit is contained in:
74
app_vue/node_modules/@node-ipc/js-queue/queue-vanilla.js
generated
vendored
Normal file
74
app_vue/node_modules/@node-ipc/js-queue/queue-vanilla.js
generated
vendored
Normal file
@ -0,0 +1,74 @@
|
||||
function Queue(){
|
||||
Object.defineProperties(
|
||||
this,
|
||||
{
|
||||
add:{
|
||||
enumerable:true,
|
||||
writable:false,
|
||||
value:addToQueue
|
||||
},
|
||||
next:{
|
||||
enumerable:true,
|
||||
writable:false,
|
||||
value:run
|
||||
},
|
||||
clear:{
|
||||
enumerable:true,
|
||||
writable:false,
|
||||
value:clearQueue
|
||||
},
|
||||
contents:{
|
||||
enumerable:false,
|
||||
get:getQueue,
|
||||
set:setQueue
|
||||
},
|
||||
autoRun:{
|
||||
enumerable:true,
|
||||
writable:true,
|
||||
value:true
|
||||
},
|
||||
stop:{
|
||||
enumerable:true,
|
||||
writable:true,
|
||||
value:false
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
var queue=[];
|
||||
var running=false;
|
||||
var stop=false;
|
||||
|
||||
function clearQueue(){
|
||||
queue=[];
|
||||
return queue;
|
||||
}
|
||||
|
||||
function getQueue(){
|
||||
return queue;
|
||||
}
|
||||
|
||||
function setQueue(val){
|
||||
queue=val;
|
||||
return queue;
|
||||
}
|
||||
|
||||
function addToQueue(){
|
||||
for(var i in arguments){
|
||||
queue.push(arguments[i]);
|
||||
}
|
||||
if(!running && !this.stop && this.autoRun){
|
||||
this.next();
|
||||
}
|
||||
}
|
||||
|
||||
function run(){
|
||||
running=true;
|
||||
if(queue.length<1 || this.stop){
|
||||
running=false;
|
||||
return;
|
||||
}
|
||||
|
||||
queue.shift().bind(this)();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user