(timerHandle: TimerID)
| 607 | } |
| 608 | |
| 609 | private _runTimerHandle(timerHandle: TimerID) { |
| 610 | const timer = this._timers.get(timerHandle); |
| 611 | |
| 612 | if (!timer) { |
| 613 | // Timer has been cleared - we'll hit this when a timer is cleared within |
| 614 | // another timer in runOnlyPendingTimers |
| 615 | return; |
| 616 | } |
| 617 | |
| 618 | switch (timer.type) { |
| 619 | case 'timeout': |
| 620 | this._timers.delete(timerHandle); |
| 621 | timer.callback(); |
| 622 | break; |
| 623 | |
| 624 | case 'interval': |
| 625 | timer.expiry = this._now + (timer.interval || 0); |
| 626 | timer.callback(); |
| 627 | break; |
| 628 | |
| 629 | default: |
| 630 | throw new Error(`Unexpected timer type: ${timer.type}`); |
| 631 | } |
| 632 | } |
| 633 | } |
no test coverage detected