Current File : //usr/local/apps/python3/lib/python3.11/idlelib/__pycache__/run.cpython-311.opt-2.pyc
�

�KeT��\�	ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl	Z
ddlZddlZddl
Z
ddl
mZddl
mZddl
mZddl
mZddl
mZddl
mZddl
mZddlZddlZeejd	d
��s.dD]Zeee��ejdez=�d
ejd	_dZ	dZee_ee_n#e $rYnwxYwd3d�Z!	d4d�Z"da#d�Z$e$d��ej%��Z&e&fd�Z'd
a(d
a)d
a*d5d�Z+d�Z,d�Z-d�Z.d�Z/d�Z0d�Z1d�Zd�Z2d�Z3dZ4d �Z5d!�Z6Gd"�d#ej7��Z8Gd$�d%ej9��Z:Gd&�d'e:��Z;Gd(�d)e:��Z<Gd*�d+ej=��Z>Gd,�d-��Z?e@d.krdd/lAm+Z+e+d0d1�2��e$d
��dS)6�N)�autocomplete)�calltip)�
debugger_r)�
debugobj_r)�iomenu)�rpc)�stackviewerzidlelib.run�firstrun)�simpledialog�
messagebox�font�dialog�
filedialog�commondialog�ttkztkinter.Fz	127.0.0.1zCtrl-D (end-of-file)c��	d}|d|�d|�d�z
}|�tj||��}|���}|r|d|zz
}||j�d|�d�z
}|S)Nz!
Warning (from warnings module):
z  File "z", line �
z    %s
�: )�	linecache�getline�strip�__name__)�message�category�filename�lineno�line�ss      �5/usr/local/apps/python3/lib/python3.11/idlelib/run.py�idle_formatwarningr 3s��'�-�A��A�x�x�x����	8�8�A��|�� ��6�2�2���:�:�<�<�D���	�Z�$�
����x�(�(�(�'�'�'�	2�2�A��H�c	��	|�tj}	|�t|||||����dS#t$rYdSwxYw�N)�sys�stderr�writer �OSError)rrrr�filers      r�idle_showwarning_subprocr)@st����|��z��
��
�
�%���8�V�T�;�;�	<�	<�	<�	<�	<���
�
�
����
���s�&9�
A�Ac��	|r(t�tjatt_dSdSt�tt_dadSdSr#)�_warnings_showwarning�warnings�showwarningr))�captures r�capture_warningsr/PsX��L��)� �(�$,�$8�!�#;�H� � � �)�(�!�,�#8�H� �$(�!�!�!�-�,r!Tc�2�	|�d��dS)N�update)�eval)�tcls r�handle_tk_eventsr4`s!����H�H�X�����r!c��	|a	ttjd��}n##t	dtj���YdSxYwt
d��dgtjdd�<tjtdt|ff���}d|_|���		tr 	t��n#t$rY�%wxYw	t j�dd�	��}n#t&j$rd}YnwxYw|r3|\}\}}}||i|��}t j�||f��nt/��n�#t$rt0rda
Y��t2$rt
d
���tj��\}	}
}	t7��t j�|df��Y�� #t9j|	|
|tj���t��YnxYwYnxYw��])N���z/IDLE Subprocess: no IP port passed in sys.argv.�r(T��
SockThread)�target�name�args皙�����?)�block�timeoutF)�no_exitfunc�intr$�argv�print�
__stderr__r/�	threading�Thread�
manage_socket�	LOCALHOST�daemon�start�exit_now�exit�KeyboardInterruptr�
request_queue�get�queue�Empty�response_queue�putr4�quitting�
SystemExit�exc_info�print_exception�	traceback)�del_exitfunc�port�
sockthread�request�seq�methodr<�kwargs�ret�type�value�tbs            r�mainrdnsm���(�K���3�8�B�<� � �����
�?��>�	#�	#�	#�	#��������T�����$�C�H�Q�Q�Q�K��!��'3�)2�D�(9�';�=�=�=�J��J��������%�$	��
���F�F�F�F��(�����H�����
��+�/�/�d�D�/�I�I�����;�
�
�
�����
�����
#�.5�+��+�f�d�F��f�d�-�f�-�-���"�&�&��S�z�2�2�2�2� �"�"�"��� �	�	�	��
 ����H��	�	�	��U�#�#�#��
	�!�l�n�n�O�D�%��
��!�!�!��"�&�&��T�{�3�3�3����
��)�$��r���O�O�O�O���������������G%sv�%�A�*E�2C�E�
C�E�
C�E�!C4�3E�4D�E�D�AE�H�$1H�/G�2G<�:Hc��td��D]r}tj|��	t|t��}nt#t
$r8}t
d|jdzdztj	���|}Yd}~�kd}~wwxYwt
dtj	���t||��dadS|���dS)N�zIDLE Subprocess: OSError: �z, retrying....r7z8IDLE Subprocess: Connection to IDLE GUI failed, exiting.T)
�range�time�sleep�MyRPCServer�	MyHandlerr'rCr<r$rD�show_socket_errorrK�handle_request)�address�i�server�err�socket_errors     rrGrG�s���
�1�X�X�����
�1�
�
�
�	� ��)�4�4�F��E���	�	�	��.���!��<�"�#�),��
9�
9�
9�
9��L�L�L�L�L�L�����	����
	�*�03��	@�	@�	@�	@��,��0�0�0�����
�������s�>�
B�.A;�;Bc�
�	ddl}ddlm}|j��}t	|��|���|dd|d�d|d�d|j�d|j�d	�	|�
��|���dS)Nr)�	showerrorzSubprocess Connection Errorz#IDLE's subprocess can't connect to �:rgz.
Fatal OSError #rzz.
See the 'Startup failure' section of the IDLE doc, online at
https://docs.python.org/3/library/idle.html#startup-failure)�parent)	�tkinter�tkinter.messageboxru�Tk�fix_scaling�withdraw�errno�strerror�destroy)rrrorxru�roots     rrmrm�s���.��N�N�N�,�,�,�,�,�,��7�:�<�<�D�������M�M�O�O�O�
�I�)�
J�'�!�*�
J�
J�w�q�z�
J�
J�!�i�
J�
J�+.�<�
J�
J�
J��
����	�L�L�N�N�N�N�Nr!c�Z�	|ttfvr�tj��}t	j|��5t
j|||��ddd��n#1swxYwY|����	d��ddzgStj||��S)Nr���)�AttributeError�	NameError�io�StringIO�
contextlib�redirect_stderrr$�__excepthook__�getvalue�splitrX�format_exception_only)�typ�excrcrrs    r�get_message_linesr��s���2�
�~�y�)�)�)��k�m�m��
�
'��
,�
,�	-�	-���s�C��,�,�,�	-�	-�	-�	-�	-�	-�	-�	-�	-�	-�	-����	-�	-�	-�	-������$�$�T�*�*�2�.��5�6�6��.�s�C�8�8�8s�A�A �#A c�$����ddl}|j��t��tj�tj��x\}}}}|\t_t_t_t������fd���|||��dS)Nrc�r����t|����|j}|j}|�Bt|���vr1�
t	|��||j��t
d�	���nJ|�H|jsAt|���vr0�
t	|��||j��t
d�	���|rMtj	|��}t
d�	���d}t||��tj|�	���t|||��}|D]}t
|d�	����dS)NzF
The above exception was the direct cause of the following exception:
r7zE
During handling of the above exception, another exception occurred:
z"Traceback (most recent call last):)zrun.pyzrpc.pyzthreading.pyzqueue.pyz
debugger_r.pyzbdb.pyr8)�endr()
�add�id�__context__�	__cause__ra�
__traceback__rC�__suppress_context__rX�
extract_tb�cleanup_traceback�
print_listr�)r�r�rc�context�cause�tbe�exclude�linesr�efile�	print_exc�seens         ���rr�z"print_exception.<locals>.print_exc�sy�������C�������/���
�����E���$�!6�!6��I�d�5�k�k�5�%�*=�>�>�>��2�8=�
?�
?�
?�
?�
?��!��*�"���k�k��%�%��I�d�7�m�m�W�g�.C�D�D�D��2�8=�
?�
?�
?�
?�
�	2��&�r�*�*�C��6�U�C�C�C�C�2�G��c�7�+�+�+�� ��5�1�1�1�1�!�#�s�B�/�/���	,�	,�D��$�B�U�+�+�+�+�+�	,�	,r!)
r�
checkcache�flush_stdoutr$r%rV�	last_type�
last_value�last_traceback�set)rr��valrc�excinfor�r�r�s     @@@rrWrW�s�����������I������N�N�N��J�E� �\�^�^�+�L�C��b�7�8?�5�C�M�3�>�3�#5��5�5�D�,�,�,�,�,�,�,�2�I�c�3������r!c�`�	|dd�}|r.|D]%}|dd�|��rn�&n|d=|�.|r.|D]%}|dd�|��rn�&n|d=|�.t|��dkr*|dd�|dd�<tdtj���t
jdj}tt|����D]Q}||\}}}}	|dkrd}|	s/|�	d��r|�
d	d
||fi��}	||||	f||<�RdS)Nrr6z** IDLE Internal Exception: r7�exec�?z
-toplevel-z	<pyshell#rr)�count�lenrCr$r%r�objecttable�
rpchandlerrh�
startswith�
remotecall)
rcr��orig_tb�rpcfiler�rp�fn�ln�nmrs
          rr�r�s���G�����e�G�
���	�	�G��!�u�Q�x�~�~�g�&�&�
���
�
��q�E�

��
���	�	�G��"�v�a�y���w�'�'�
���
�
��r�F�

���2�w�w�!�|�|�����
��1�1�1��
�,�3�:�>�>�>�>����(�3�J�
�3�r�7�7�^�^�!�!���a�5���B��D�
��9�9��B��	<��
�
�k�2�2�	<��(�(��i�/1�2�h��<�<�D��B��D� ��1���!�!r!c��dSr#�r�r!rr�r�.s��!�!r!c��	trddl}|���td��t	jd��dS)NrF)r@�atexit�_clearr/r$rL)r�s rrLrL1sF������
�
�
��
�
�����U�����H�Q�K�K�K�K�Kr!c�D�	ddl}t|j�dd����}|dkrj|j�|��D]Q}|j�||d���}t|d��}|dkrtd|z��|d<�PdSdS)	Nr�tk�scalinggffffff�?T)r�r;�exists�sizeg�)	�tkinter.font�floatr��callr
�names�FontrA�round)r�rxr�r;r
r�s      rr{r{@s���(������D�G�L�L��y�1�1�2�2�G���}�}��L�&�&�t�,�,�	1�	1�D��<�$�$�$�T�$�$�G�G�D��t�F�|�$�$�D��a�x�x�$�U�4�Z�0�0��V����}�	1�	1r!c��|j�
|jdznd}|tjtj|����z|_dS)Nz

r8)�__doc__�textwrap�fill�dedent)�fun�text�tems   r�fixdocr�Ls>��$'�K�$;�3�;�����C���
�h�o�d�&;�&;�<�<�<�C�K�K�Kr!�c����	tjtj���fd����t	�dt
�d���tjtj���fd����t	�dt
�dt
�d���tjtj��t
z���t_�t_dS)Nc����|rtd���	|\}n.#t$r!tdt|���d����wxYw|dkstd�����|tz��S)Nz.setrecursionlimit() takes no keyword argumentsz0setrecursionlimit() takes exactly one argument (z given)rz/recursion limit must be greater or equal than 1)�	TypeError�
ValueErrorr��__wrapped__�RECURSIONLIMIT_DELTA)r<r_�limit�setrecursionlimits   �rr�z:install_recursionlimit_wrappers.<locals>.setrecursionlimitVs�����	B��@�B�B�
B�	=��F�E�E���	=�	=�	=��<�),�T���<�<�<�=�=�
=�	=�����q�y�y��A�C�C�
C�!�,�,�U�5I�-I�J�J�Js	��+Az#            This IDLE wrapper adds z7 to prevent possible
            uninterruptible loops.c�<������tz
Sr#)r�r�)�getrecursionlimits�rr�z:install_recursionlimit_wrappers.<locals>.getrecursionlimitks��� �,�,�.�.�1E�E�Er!z(            This IDLE wrapper subtracts z# to compensate
            for the z" IDLE adds when setting the limit.)�	functools�wrapsr$r�r�r�r�)r�r�s@@r�install_recursionlimit_wrappersr�Rs!����C��_�S�*�+�+�K�K�K�K�,�+�K� ��&�$8�&�&�&�'�'�'��_�S�*�+�+�F�F�F�F�,�+�F���P�)=�P�P�)�P�P�P�Q�Q�Q�
��#�/�1�1�4H�H�I�I�I�-�C��-�C���r!c�B�	ttjdd��r�ttjdd��rgtjjt_tjjt_tjtj��t
z
��dSdSdS)Nr�)�getattrr$r�r�r�r�r�r!r�!uninstall_recursionlimit_wrappersr�zs����
�C�)�=�$�?�?�N��C�)�=�$�?�?�N�!$� 5� A��� #� 5� A�����c�3�5�5�8L�L�M�M�M�M�M�
N�N�N�Nr!c��eZdZd�ZdS)rkc��		�#t$r�t$rdatj��YdSt
j}ttj	dd�dtj��j�d|�d|�d�	��|���tjd|�	��ttj	d
d����|���datj��YdSxYw)NTz
            z(----------------------------------------zU
            Unhandled exception in user code execution server!'
            Thread: z"
            IDLE Client Address: z
            Request: r7i��)r�r(a
            *** Unrecoverable, server exiting!

            Users should never see this message; it is likely transient.
            If this recurs, report this with a copy of the message
            and an explanation of how to make it repeat.
            )rU�EOFErrorrK�thread�interrupt_mainr$rDrCr�r�rE�current_threadr;rXr�rT)�selfr\�client_address�erfs    r�handle_errorzMyRPCServer.handle_error�sR��	�	$����	�	�	���	$�	$�	$��H��!�#�#�#�#�#�#�	$��.�C��(�/�#�
�#�#��-�/�/�4�#�#�#1�	#�#�
�#�#�#����

�
�
�
�
��c��4�4�4�4��(�/�#��
#�#��� #�

$�
$�
$�
$��H��!�#�#�#�#�#�#���s��)C�B$CN)r�
__module__�__qualname__r�r�r!rrkrk�s#������!$�!$�!$�!$�!$r!rkc�^�eZdZd	d�Zed���Zed���Zed���Zd�ZdS)
�	StdioFile�utf-8�strictc�>�||_||_||_||_dSr#)�shell�tags�	_encoding�_errors)r�r�r��encoding�errorss     r�__init__zStdioFile.__init__�s"����
���	�!�������r!c��|jSr#)r��r�s rr�zStdioFile.encoding�s
���~�r!c��|jSr#)r�r�s rr�zStdioFile.errors�s
���|�r!c��d|jzS)Nz<%s>)r�r�s rr;zStdioFile.name�s����	�!�!r!c��dS�NTr�r�s r�isattyzStdioFile.isatty�����tr!N)r�r�)	rr�r�r��propertyr�r�r;rr�r!rr�r��s���������������X������X���"�"��X�"�����r!r�c��eZdZd�Zd�ZdS)�
StdOutputFilec��dSrr�r�s r�writablezStdOutputFile.writable�rr!c��|jrtd���t�||j|j���|j|j��}|j�||j	��S)Nzwrite to closed file)
�closedr��str�encoder�r��decoder�r&r�)r�rs  rr&zStdOutputFile.write�sb���;�	5��3�4�4�4��J�J�q�$�-���5�5�<�<�T�]�D�K�X�X���z����4�9�-�-�-r!N)rr�r�rr&r�r!rrr�s2���������.�.�.�.�.r!rc�.�eZdZdZd�Zdd�Zdd�Zd�ZdS)	�StdInputFiler8c��dSrr�r�s r�readablezStdInputFile.readable�rr!r6c��|jrtd���|�d}n9t|t��s$t	dt|��jz���|j}d|_|dkr<|j�	��x}r ||z
}|j�	��x}� n`t|��|kr4|j�	��}|sn||z
}t|��|k�4||d�|_|d|�}|S)N�read from closed filer6�must be int, not r8r)r
r��
isinstancerAr�rar�_line_bufferr��readliner�)r�r��resultrs    r�readzStdInputFile.read�s ���;�	6��4�5�5�5��<��D�D��D�#�&�&�	G��/�$�t�*�*�2E�E�F�F�F��"������!�8�8��*�-�-�/�/�/�$�
��$����*�-�-�/�/�/�$�
���f�+�+��$�$��z�*�*�,�,���"�U��$����f�+�+��$�$�!'�t�u�u�
�D���E�T�E�]�F��
r!c��|jrtd���|�d}n9t|t��s$t	dt|��jz���|jp|j�	��}|dkrt|��}|�dd|��}|dkr|dz}||d�|_|d|�S)Nrr6rrrrg)r
r�rrAr�rarrr�rr��find)r�r�r�eols    rrzStdInputFile.readline�s����;�	6��4�5�5�5��<��D�D��D�#�&�&�	G��/�$�t�*�*�2E�E�F�F�F�� �9�D�J�$7�$7�$9�$9���!�8�8��t�9�9�D��i�i��a��&�&���!�8�8���7�D� ����K����E�T�E�{�r!c�8�|j���dSr#)r��closer�s rrzStdInputFile.closes���
�������r!N)r6)rr�r�rrrrrr�r!rrr�s_�������L��������*���� ����r!rc�&�eZdZd�Zd�Zd�Zd�ZdS)rlc��	t|��}|�d|��|�d��|_t	|jdt
jt
j��t_	t|jdt
jt
j��t_t|jdt
jd��t_tjt_ddl}|j|_tj	|_t'��|�d��|_tj�|dd	�
��dS)Nr��console�stdin�stdoutr%�backslashreplacer�interpr=)�myseq�wait)�	Executive�register�get_remote_proxyr!rrr�r�r$r"rr#r%r�displayhook�pydoc�
plainpager�pager�_keep_stdinr�r%�
RPCHandler�getresponse)r��	executiver,s   r�handlezMyHandler.handles��"��d�O�O�	��
�
�f�i�(�(�(��,�,�Y�7�7��� ���w�!'��&�-�A�A��	�"�4�<��#)�?�F�M�C�C��
�"�4�<��#)�?�4F�H�H��
��/��������&����9���'�)�)�)��+�+�H�5�5�����"�"�4�t�$�"�?�?�?�?�?r!c�0�	tjd��dS)N�
)rirjr�s r�exithookzMyHandler.exithook s��H��
�2�����r!c�2�	datj��dSr�rTr�r�r�s r�EOFhookzMyHandler.EOFhook$s��O���������r!c�2�	datj��dSrr8r�s r�decode_interrupthookzMyHandler.decode_interrupthook*s��#���������r!N)rr�r�r3r6r9r;r�r!rrlrlsS������@�@�@�4��� � � � � � � � r!rlc�@�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d
d	�Z
dS)r(c���||_tjdurCtj|_t
j��|_tj	��|_dSi|_dS)NF)
r��idlelib�testing�__main__�__dict__�localsr�Calltipr�AutoComplete)r�r�s  rr�zExecutive.__init__3sQ��$����?�e�#�#�"�+�D�K�"�?�,�,�D�L� ,� 9� ;� ;�D�����D�K�K�Kr!c�<�	d|_da	t||j��dan#dawxYw	t	��dS#t
$rz}|jrb|jd}t|td��tf��s7tdt|��ztj
���Yd}~dSYd}~dSYd}~dSd}~wtj��|_trt!��tjtjurt'��nB	tj|j�n-#tj��|_t'��YnxYw|jj�d��}|r!|jj���YdSYdSxYw)NTFrzSystemExit: r7z<<toggle-jit-stack-viewer>>)�
user_exc_info�
interruptabler�rBr�rUr<rrarArCrr$r%rVrTrL�
excepthookr�rWr�r!�getvarr%�open_remote_stack_viewer)r��code�e�ob�jits     r�runcodezExecutive.runcode<s���	�!%�D�� �M�
&��T�4�;�'�'�'� %�
�
���
�%�%�%�%�
�.
�N�N�N�N�N��-�	E�	E�	E��v�
E��V�A�Y��!�"�t�D�z�z�3�&7�8�8�E��.�3�r�7�7�2���D�D�D�D�D�D�D�D�D�D�
E�
E�
E�
E�
E�
E�E�E�E�E�E�E�����	B�!$����D���
������~��!3�3�3��!�!�!�!�&��N�D�$6�7�7�7��&�),����D�&�#�%�%�%�%�%�����/�)�0�0�1N�O�O�C��
B���&�?�?�A�A�A�A�A�A�
B�
B�
B���s@�	<�$�<�(�<�
F�A#B;�;AF�D)�(F�)(E�AFc�>�trtj��dSdSr#)rGr�r�r�s r�interrupt_the_serverzExecutive.interrupt_the_server]s)���	$��!�#�#�#�#�#�	$�	$r!c�6�tj|j|��Sr#)r�start_debuggerr�)r��gui_adap_oids  r�start_the_debuggerzExecutive.start_the_debuggeras���(���,�G�G�Gr!c�<�	|j�|��dSr#)r��
unregister)r��idb_adap_oids  r�stop_the_debuggerzExecutive.stop_the_debuggerds!��N���"�"�<�0�0�0�0�0r!c�6�|j�|��Sr#)r�	fetch_tip)r�r;s  r�get_the_calltipzExecutive.get_the_calltiphs���|�%�%�d�+�+�+r!c�8�|j�||��Sr#)r�fetch_completions)r��what�modes   r�get_the_completion_listz!Executive.get_the_completion_listks��� �2�2�4��>�>�>r!Nc�P�|jr|j\}}}ndSd}|�|j�|��}|r1|jjddvr|j}|r|jjddv�|t_|t_tj
||��}tj|��S)Nr)r�run)
rFr�r*�tb_frame�	f_globals�tb_nextr$r�r�r	�
StackTreeItemr�remote_object_tree_item)r��	flist_oidr�r�rc�flist�items       rr	zExecutive.stackviewerns�����	��-�L�C��b�b��4���� ��O�4�4�Y�?�?�E��	�R�[�*�:�6�.�H�H���B��	�R�[�*�:�6�.�H�H���
�����(���3�3���1�$�7�7�7r!r#)rr�r�r�rOrQrUrYr\rar	r�r!rr(r(1s�������������B$�$�$�H�H�H�1�1�1�,�,�,�?�?�?�
8�
8�
8�
8�
8�
8r!r(r@)rdzidlelib.idle_test.test_run�)�	verbosityr#)NN)F)Br�r�r�rrPr$r�rirX�_threadr�rEr,r>rrrrrrr	r@rx�hasattr�modules�mod�delattrr
rH�eofrL�quitr�r r)r+r/�Tclr3r4rKrTrGrdrGrmr�rWr�r�r{r�r�r�r��	RPCServerrk�
TextIOBaser�rrr0rlr(r�unittestr�r!r�<module>ryss�����������	�	�	�	���������
�
�
�
����������������������������� � � � � � ����������������������������������������������w�s�{�=�)�:�6�6�0��*�*��	��������K�
�S�(�)�)�*/�C�K�
��'��	�	�
 �C��D�H��D�H�H���	�	�	��D�	����
�
�
�
�>B�
�
�
�
���)�)�)��������g�k�m�m������������
�K�K�K�K�Z���&���"	9�	9�	9�"�"�"�H!�!�!�>"�"�"����	1�	1�	1�=�=�=���%.�%.�%.�PN�N�N�#$�#$�#$�#$�#$�#�-�#$�#$�#$�P������
����0	.�	.�	.�	.�	.�I�	.�	.�	.�,�,�,�,�,�9�,�,�,�^* �* �* �* �* ���* �* �* �ZJ8�J8�J8�J8�J8�J8�J8�J8�Z�z����������D�	%��3�3�3�3��������s�0C�C	�C