X7ROOT File Manager
Current Path:
/opt/alt/python313/lib64/python3.13/_pyrepl
opt
/
alt
/
python313
/
lib64
/
python3.13
/
_pyrepl
/
ðŸ“
..
📄
__init__.py
(925 B)
📄
__main__.py
(263 B)
ðŸ“
__pycache__
📄
_minimal_curses.py
(1.8 KB)
📄
_threading_handler.py
(2.12 KB)
📄
commands.py
(11.91 KB)
📄
completing_reader.py
(9.81 KB)
📄
console.py
(6.71 KB)
📄
curses.py
(1.21 KB)
📄
fancy_termios.py
(2.11 KB)
📄
historical_reader.py
(12.93 KB)
📄
input.py
(3.69 KB)
📄
keymap.py
(6.31 KB)
📄
main.py
(1.89 KB)
📄
mypy.ini
(870 B)
📄
pager.py
(5.68 KB)
📄
reader.py
(27.06 KB)
📄
readline.py
(19.75 KB)
📄
simple_interact.py
(5.15 KB)
📄
trace.py
(433 B)
📄
types.py
(354 B)
📄
unix_console.py
(24.88 KB)
📄
unix_eventqueue.py
(4.92 KB)
📄
utils.py
(2.18 KB)
📄
windows_console.py
(19.05 KB)
Editing: _threading_handler.py
from __future__ import annotations from dataclasses import dataclass, field import traceback TYPE_CHECKING = False if TYPE_CHECKING: from threading import Thread from types import TracebackType from typing import Protocol class ExceptHookArgs(Protocol): @property def exc_type(self) -> type[BaseException]: ... @property def exc_value(self) -> BaseException | None: ... @property def exc_traceback(self) -> TracebackType | None: ... @property def thread(self) -> Thread | None: ... class ShowExceptions(Protocol): def __call__(self) -> int: ... def add(self, s: str) -> None: ... from .reader import Reader def install_threading_hook(reader: Reader) -> None: import threading @dataclass class ExceptHookHandler: lock: threading.Lock = field(default_factory=threading.Lock) messages: list[str] = field(default_factory=list) def show(self) -> int: count = 0 with self.lock: if not self.messages: return 0 reader.restore() for tb in self.messages: count += 1 if tb: print(tb) self.messages.clear() reader.scheduled_commands.append("ctrl-c") reader.prepare() return count def add(self, s: str) -> None: with self.lock: self.messages.append(s) def exception(self, args: ExceptHookArgs) -> None: lines = traceback.format_exception( args.exc_type, args.exc_value, args.exc_traceback, colorize=reader.can_colorize, ) # type: ignore[call-overload] pre = f"\nException in {args.thread.name}:\n" if args.thread else "\n" tb = pre + "".join(lines) self.add(tb) def __call__(self) -> int: return self.show() handler = ExceptHookHandler() reader.threading_hook = handler threading.excepthook = handler.exception
Upload File
Create Folder