2 from types import TracebackType
3 from typing import Type
5 class Timeout(TimeoutError):
6 def __init__(self, lock_file: str) -> None: ...
7 def __str__(self) -> str: ...
9 class _Acquire_ReturnProxy:
10 def __init__(self, lock: str) -> None: ...
11 def __enter__(self) -> str: ...
13 self, exc_type: Type[BaseException] | None, exc_val: BaseException | None, traceback: TracebackType | None
17 def __init__(self, lock_file: str, timeout: float | int | str = ...) -> None: ...
19 def lock_file(self) -> str: ...
21 def timeout(self) -> float: ...
23 def timeout(self, value: int | str | float) -> None: ... # type: ignore
25 def is_locked(self) -> bool: ...
26 def acquire(self, timeout: float | None = ..., poll_intervall: float = ...) -> _Acquire_ReturnProxy: ...
27 def release(self, force: bool = ...) -> None: ...
28 def __enter__(self) -> BaseFileLock: ...
30 self, exc_type: Type[BaseException] | None, exc_val: BaseException | None, traceback: TracebackType | None
32 def __del__(self) -> None: ...
34 class WindowsFileLock(BaseFileLock):
35 def _acquire(self) -> None: ...
36 def _release(self) -> None: ...
38 class UnixFileLock(BaseFileLock):
39 def _acquire(self) -> None: ...
40 def _release(self) -> None: ...
42 class SoftFileLock(BaseFileLock):
43 def _acquire(self) -> None: ...
44 def _release(self) -> None: ...
46 if sys.platform == "win32":
47 FileLock = WindowsFileLock
48 elif sys.platform == "linux" or sys.platform == "darwin":
49 FileLock = UnixFileLock
51 FileLock = SoftFileLock