HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.10/idlelib/__pycache__/stackviewer.cpython-310.opt-1.pyc
o

�if�@s�ddlZddlZddlZddlZddlmZmZddlm	Z	m
Z
mZddd�ZGdd�de
�Z
Gdd	�d	e
�ZGd
d�de�Zdd
�Zedkr`ddlmZedddd�ddlmZee�dSdS)�N)�ObjectTreeItem�make_objecttreeitem)�TreeNode�TreeItem�ScrolledCanvascCsT|dur	t�|�}t|ddd�atjjddd�t||�attj	dt�a
t
��dS)NZwhiter)�bgZhighlightthickness�Zboth)�expand�fill)�tk�ToplevelrZsc�frame�pack�
StackTreeItem�itemrZcanvasZnoder	)�root�flist�tb�top�r�0/usr/local/lib/python3.10/idlelib/stackviewer.py�StackBrowser
s

rc@s6eZdZddd�Zdd�Zdd�Zdd	�Zd
d�ZdS)
rNcCs ||_|�|�|_|��|_dS�N)r�	get_stack�stack�
get_exception�text)�selfrrrrr�__init__szStackTreeItem.__init__cCsR|durtj}g}|r|jdur|j}|dur'|�|j|jf�|j}|dus|Sr)�sys�last_traceback�tb_frame�tb_next�append�	tb_lineno)rrrrrrrs�zStackTreeItem.get_stackcCs@tj}tj}t|d�r|j}t|�}|dur|dt|�}|S)N�__name__z: )r�	last_type�
last_value�hasattrr%�str)r�type�value�srrrr's
zStackTreeItem.get_exceptioncC�|jSr)r�rrrr�GetText1�zStackTreeItem.GetTextcCs*g}|jD]
}t||j�}|�|�q|Sr)r�
FrameTreeItemrr#)r�sublist�inforrrr�
GetSubList4s

zStackTreeItem.GetSubList)NN)r%�
__module__�__qualname__rrrr/r4rrrrrs

rc@�,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
r1cCs||_||_dSr)r3r)rr3rrrrr>s
zFrameTreeItem.__init__c	Csz|j\}}z|jd}Wnd}Y|j}|j}|j}t�||�}|��}|dvr3d|||f}|Sd||||f}|S)Nr%�?)r8�Nz%s, line %d: %sz%s.%s(...), line %d: %s)r3�	f_globals�f_code�co_filename�co_name�	linecache�getline�strip)	rr
�lineno�modname�code�filename�funcnameZ
sourcelinerrrrr/Bs"
��zFrameTreeItem.GetTextcCsR|j\}}g}|j|jurtd|j|j�}|�|�td|j|j�}|�|�|S)Nz<locals>z	<globals>)r3r:�f_locals�VariablesTreeItemrr#)rr
rAr2rrrrr4Ts


zFrameTreeItem.GetSubListcCs>|jr|j\}}|jj}tj�|�r|j�||�dSdSdSr)rr3r;r<�os�path�isfileZgotofileline)rr
rArDrrr�
OnDoubleClick^s
�zFrameTreeItem.OnDoubleClickN)r%r5r6rr/r4rKrrrrr1<s

r1c@r7)
rGcCr-r)Z	labeltextr.rrrr/hr0zVariablesTreeItem.GetTextcCsdSrrr.rrr�GetLabelTextkszVariablesTreeItem.GetLabelTextcCst|j�dkS)Nr)�len�objectr.rrr�IsExpandablenszVariablesTreeItem.IsExpandablec	Csdg}|j��D](}z|j|}Wn	tyYqw||jfdd�}t|d||�}|�|�q|S)NcSs|||<dSrr)r+�keyrNrrr�setfunctionxsz1VariablesTreeItem.GetSubList.<locals>.setfunctionz =)rN�keys�KeyErrorrr#)rr2rPr+rQrrrrr4qs�zVariablesTreeItem.GetSubListN)r%r5r6r/rLrOr4rrrrrGfs
rGc	Cs�ddlm}t�|�}|�d�tt|���d�dd��\}}|�d|d|df�||�}zt	Wnt
yEt��\}}}Ynw|t_
|t_|t_t||||d	�t`
t`t`dS)
Nr)�PyShellFileListzTest StackViewer�+rz+%d+%d�2�)rrr)Zidlelib.pyshellrTrr�title�map�intZgeometry�splitZintentional_name_error�	NameErrorr�exc_infor&r'r r)	�parentrTr�x�yr�exc_type�	exc_value�exc_tbrrr�
_stack_viewers$

 �rd�__main__)�mainz"idlelib.idle_test.test_stackviewer�F)�	verbosity�exit)�run)NNN)r>rHr�tkinterrZidlelib.debugobjrrZidlelib.treerrrrrr1rGrdr%ZunittestrfZidlelib.idle_test.htestrjrrrr�<module>s"
'*�