diff options
Diffstat (limited to 'assets/php/vendor/react/event-loop/src/Timer/Timer.php')
-rw-r--r-- | assets/php/vendor/react/event-loop/src/Timer/Timer.php | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/assets/php/vendor/react/event-loop/src/Timer/Timer.php b/assets/php/vendor/react/event-loop/src/Timer/Timer.php new file mode 100644 index 0000000..da3602a --- /dev/null +++ b/assets/php/vendor/react/event-loop/src/Timer/Timer.php @@ -0,0 +1,55 @@ +<?php + +namespace React\EventLoop\Timer; + +use React\EventLoop\TimerInterface; + +/** + * The actual connection implementation for TimerInterface + * + * This class should only be used internally, see TimerInterface instead. + * + * @see TimerInterface + * @internal + */ +final class Timer implements TimerInterface +{ + const MIN_INTERVAL = 0.000001; + + private $interval; + private $callback; + private $periodic; + + /** + * Constructor initializes the fields of the Timer + * + * @param float $interval The interval after which this timer will execute, in seconds + * @param callable $callback The callback that will be executed when this timer elapses + * @param bool $periodic Whether the time is periodic + */ + public function __construct($interval, $callback, $periodic = false) + { + if ($interval < self::MIN_INTERVAL) { + $interval = self::MIN_INTERVAL; + } + + $this->interval = (float) $interval; + $this->callback = $callback; + $this->periodic = (bool) $periodic; + } + + public function getInterval() + { + return $this->interval; + } + + public function getCallback() + { + return $this->callback; + } + + public function isPeriodic() + { + return $this->periodic; + } +} |