File: //usr/local/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/traceback.cpython-310.pyc
o
��i�e � @ s� d dl mZ d dlZd dlZd dlZd dlmZmZ d dlm Z d dl
mZmZ d dl
mZmZmZmZmZmZmZmZmZ d dlmZ d dlmZmZmZmZmZmZ d d lm Z! d d
lm"Z" d dl#m$Z$ dd
l%m&Z& ddl'm(Z( ddl)m*Z* ddl+m,Z,m-Z-m.Z.m/Z/m0Z0 ddl1m2Z2 ddl3m4Z4m5Z5 ddl6m7Z7 ddl8m9Z9 ddl:m;Z; ddl<m=Z= dd l>m Z ddl?m@Z@ e�A� dkZBdZCdZDdddddddddd � d!ee, d"eeE d#eEd$eeF d%eGd&eGd'eGd(eeeFef d)eEd*eeeH eHee gef fd+d,�ZIeG d-d.� d.��ZJeG d/d0� d0��ZKeG d1d2� d2��ZLeG d3d4� d4��ZMG d5d6� d6e4�ZNG d7d8� d8�ZOePd9k�r^dd:l+m,Z, e,� Z+d dlZd;ed*dfd<d=�ZQd;ed*dfd>d?�ZRdBd@dA�ZSeS� dS dS )C� )�absolute_importN)� dataclass�field)�walk_tb)�
ModuleType�
TracebackType) �Any�Callable�Dict�Iterable�List�Optional�Sequence�Type�Union)�guess_lexer_for_filename)�Comment�Keyword�Name�Number�Operator�String)�Text)�Token)�
ClassNotFound� )�pretty)� loop_last)�Columns)�Console�ConsoleOptions�ConsoleRenderable�RenderResult�group)� Constrain)�RegexHighlighter�ReprHighlighter)�Panel)�render_scope)�Style)�Syntax)�Theme�Windows�
�P �d � FT� ) �console�width�extra_lines�theme� word_wrap�show_locals�
indent_guides�suppress�
max_framesr2 r3 r4 r5 r6 r7 r8 r9 r: �returnc
s� | du r
t tjd�n| �dtt dtdtt ddf��������� f dd�� d tddf� fd
d�} zt� }
| |
� tj W S t
yN tj }� t_ | Y S w )a8 Install a rich traceback handler.
Once installed, any tracebacks will be printed with syntax highlighting and rich formatting.
Args:
console (Optional[Console], optional): Console to write exception to. Default uses internal Console instance.
width (Optional[int], optional): Width (in characters) of traceback. Defaults to 100.
extra_lines (int, optional): Extra lines of code. Defaults to 3.
theme (Optional[str], optional): Pygments theme to use in traceback. Defaults to ``None`` which will pick
a theme appropriate for the platform.
word_wrap (bool, optional): Enable word wrapping of long lines. Defaults to False.
show_locals (bool, optional): Enable display of local variables. Defaults to False.
indent_guides (bool, optional): Enable indent guides in code and locals. Defaults to True.
suppress (Sequence[Union[str, ModuleType]]): Optional sequence of modules or paths to exclude from traceback.
Returns:
Callable: The previous exception handler that was replaced.
N)�file�type_�value� tracebackr; c s* �� tj| ||�� ������d�� d S )N)r3 r4 r5 r6 r7 r8 r9 r: )�print� Traceback�from_exception)r= r>