from contextlib import ExitStack, contextmanager from typing import ContextManager, Generator, TypeVar _T = TypeVar("_T", covariant=True) class CommandContextMixIn: def __init__(self) -> None: super().__init__() self._in_main_context = False self._main_context = ExitStack() @contextmanager def main_context(self) -> Generator[None, None, None]: assert not self._in_main_context self._in_main_context = True try: with self._main_context: yield finally: self._in_main_context = False def enter_context(self, context_provider: ContextManager[_T]) -> _T: assert self._in_main_context return self._main_context.enter_context(context_provider)
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
__pycache__ | Folder | 0755 |
|
|
__init__.py | File | 132 B | 0644 |
|
autocompletion.py | File | 6.7 KB | 0644 |
|
base_command.py | File | 8.09 KB | 0644 |
|
cmdoptions.py | File | 29.4 KB | 0644 |
|
command_context.py | File | 774 B | 0644 |
|
index_command.py | File | 5.5 KB | 0644 |
|
main.py | File | 2.75 KB | 0644 |
|
main_parser.py | File | 4.24 KB | 0644 |
|
parser.py | File | 10.57 KB | 0644 |
|
progress_bars.py | File | 2.66 KB | 0644 |
|
req_command.py | File | 11.96 KB | 0644 |
|
spinners.py | File | 5 KB | 0644 |
|
status_codes.py | File | 116 B | 0644 |
|