| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 | | class Stack{ |  |     constructor(){ |  |         this.stack=[]; |  |         this.autoRun=true; |  |         this.running=false; |  |         this.stop=false; |  |     } |  |   |  |     clear(){ |  |         this.stack=[]; |  |         return this.stack; |  |     } |  |   |  |     contents(val){ |  |         if(val){ |  |           this.stack=val; |  |         } |  |         return this.stack; |  |     } |  |   |  |     add(...callbacks){ |  |         this.stack.push(...callbacks); |  |         if(!this.running && !this.stop && this.autoRun){ |  |             this.next(); |  |         } |  |     } |  |   |  |     next(){ |  |         this.running=true; |  |         if(this.stack.length<1 || this.stop){ |  |             this.running=false; |  |             return; |  |         } |  |   |  |         this.stack.pop().bind(this)(); |  |     } |  | } |  |   |  | module.exports=Stack; | 
 |