mirror of
https://github.com/nihilvux/bancho.py.git
synced 2025-09-16 18:48:38 -07:00
Add files via upload
This commit is contained in:
27
app/timer.py
Normal file
27
app/timer.py
Normal file
@@ -0,0 +1,27 @@
|
||||
from __future__ import annotations
|
||||
|
||||
import time
|
||||
from types import TracebackType
|
||||
|
||||
|
||||
class Timer:
|
||||
def __init__(self) -> None:
|
||||
self.start_time: float | None = None
|
||||
self.end_time: float | None = None
|
||||
|
||||
def __enter__(self) -> Timer:
|
||||
self.start_time = time.time()
|
||||
return self
|
||||
|
||||
def __exit__(
|
||||
self,
|
||||
exc_type: type[BaseException] | None,
|
||||
exc: BaseException | None,
|
||||
traceback: TracebackType | None,
|
||||
) -> None:
|
||||
self.end_time = time.time()
|
||||
|
||||
def elapsed(self) -> float:
|
||||
if self.start_time is None or self.end_time is None:
|
||||
raise ValueError("Timer has not been started or stopped.")
|
||||
return self.end_time - self.start_time
|
Reference in New Issue
Block a user