HEX
Server: Microsoft-IIS/10.0
System: Windows NT ITPWINWEBSVR22 10.0 build 20348 (Windows Server 2022) AMD64
User: www.conferencesearch.co.uk (0)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: D:/Python311/Lib/idlelib/__pycache__/hyperparser.cpython-311.opt-2.pyc
�

��Vc�3��(�	ddlmZddlZddlmZeejejzdz��Zeejdz��Z	d�e
d��D��Zd�e
d��D��ZGd�d	��Z
ed
krddlmZedd
���dSdS)�)�	iskeywordN)�pyparse�_c�:�g|]}t|��tv��S�)�chr�_ASCII_ID_CHARS��.0�xs  �'D:\Python311\Lib\idlelib\hyperparser.py�
<listcomp>rs#��E�E�E�Q�c�!�f�f��/�E�E�E��c�:�g|]}t|��tv��Sr)r�_ASCII_ID_FIRST_CHARSr
s  r
rrs$��;�;�;�1�c�!�f�f�%�%�;�;�;rc�h�eZdZd�Zd�Zd�Zd�Zd
d�Zehd���Z	e
d	���Zd
Zd�Z
dS)�HyperParserc����	|�_|jx�_}tj|j|j��}d�}||�|����}|js�|jD]�}t||z
d��}t|��dz}	d|z}
|�|�|	|
��dz��|�
|�|	����}|�|dkrn��|�|pd��ni|�d|��}|r	|d}	nd}	d|z}
|�|�|	|
��dz��|�d��|jdd	��_|
�_|����_�fd
�t-t/�j����D���_��|��dS)Nc�:�tt|����S)N)�int�float)�indexs r
�
index2linez(HyperParser.__init__.<locals>.index2line"s���u�U�|�|�$�$�$r�z.0z%d.endz 
r�consolez1.0���c�r��g|]3}|dko*�j|d�j|dz
dk��4S)rr)�
bracketing)r�i�selfs  �r
rz(HyperParser.__init__.<locals>.<listcomp>KsX���?�?�?���1��1����!3�A�!6����1��-�a�0�"1�?�?�?r)�editwin�textr�Parser�indentwidth�tabwidthr�prompt_last_line�num_context_lines�max�repr�set_code�get�find_good_parse_start�_build_char_in_string_func�set_lo�
tag_prevrange�code�rawtext�stopatindex�get_last_stmt_bracketingr�range�len�isopener�	set_index)
r!r"rr#�parserr�lno�context�startat�startatindexr3�bod�rs
`            r
�__init__zHyperParser.__init__s ���E����"�<�'��	�D���� 3�W�5E�F�F��	%�	%�	%��j����E�*�*�+�+���'�	�"�4�
�
���c�G�m�Q�/�/��#�G�}�}�t�3��&��n��
�������{� C� C�E� I�J�J�J��2�2�!�<�<�\�J�J�L�L����g��l���E���M�M�#�(��#�#�#�#��"�"�9�e�4�4�A��
%� ��t���$��"�S�.�K�
�O�O�D�H�H�\�;�?�?��E�F�F�F��M�M�!�����{�3�B�3�'���'��� �9�9�;�;���?�?�?�?�"'��D�O�(<�(<�"=�"=�?�?�?��
�	
���u�����rc���	t|j��t|j�||j����z
}|dkrtd|z���||_d|_|jt|j��dz
krx|j|jdzd|jkrT|xjdz
c_|jt|j��dz
kr$|j|jdzd|jk�T|jt|j��dz
krK|j|jdzd|jkr)|j	|jdzs|xjdz
c_dSdSdSdS)Nrz(Index %s precedes the analyzed statementr)
r6r2r#r,r3�
ValueError�indexinrawtext�indexbracketrr7)r!rrCs   r
r8zHyperParser.set_indexQs���	��d�l�+�+��d�i�m�m�E�4�3C�D�D�E�E�F���A��	&��G�$�%�&�&�
&�,������� �3�t��#7�#7��#9�9�	#���t�0��2�3�A�6��9L�L�	#�����"���� �3�t��#7�#7��#9�9�	#���t�0��2�3�A�6��9L�L�	#�
���D�O� 4� 4�Q� 6�6�	#��O�D�-�a�/�0��3�t�7J�J�	#��}�T�.�q�0�1�	#�
����"�����	#�	#�	#�	#�	#�	#rc�r�	|j|jo$|j|j|jddvS)Nr)�"�'�r7rDr2r�r!s r
�is_in_stringzHyperParser.is_in_stringfs?��@��
�d�/�0����T�_�T�->�?��B�C���	rc�t�	|j|jp$|j|j|jddvS)Nr)�#rFrGrHrIs r
�
is_in_codezHyperParser.is_in_codens@��C��M�$�"3�4�4�'���T�_�T�->�?��B�C�&�'�	(r�([{Fc�X�	|j|jd}|j}|j|r7|j|j|d|vs|j|d|krr|dz}|dkrdSt	||j|d��}|j|�;|j|j|d|v�[|j|d|k�r|jdz}|t|j��krK|j|d|kr4|dz
}|t|j��kr|j|d|k�4|j�d|jt|j��|j|dz
fz��}|t|j��ks)|j|dt|j��kr|rdS|j}nM|j�d|jt|j��|j|ddz
z
fz��}||fS)Nrrz%s-%dc)	rrDr7r2�minr6r#rr3)r!�openers�	mustclose�bracketinglevel�before�after�beforeindex�
afterindexs        r
�get_surrounding_bracketsz$HyperParser.get_surrounding_bracketstse��		��/�$�*;�<�Q�?���"���=��(�	O��l�4�?�6�2�1�5�6�g�E�	O��o�f�%�a�(�?�:�	O�
�a�K�F���z�
��t�!�/�4�?�6�3J�1�3M�N�N�O�
�=��(�	O��l�4�?�6�2�1�5�6�g�E�	O��o�f�%�a�(�?�:�	O��!�A�%���s�4�?�+�+�+�	��o�e�$�Q�'�?�:�	��Q�J�E��s�4�?�+�+�+�	��o�e�$�Q�'�?�:�	��i�o�o�h�
�
�s�4�<�0�0����1H��1K�K�L�'M�N�N���S���)�)�)�
	C��?�5�!�!�$�s�4�<�'8�'8�8�
	C��
��t��)�J�J������D�,��T�\�"�"�D�O�E�$:�1�$=�a�$?�@�B�B�C�C�J��J�&�&r>�None�True�Falsec���	t}|}||krt||dz
��dkrc|t||dz
��rE|dz}||kr:t||dz
��dkr|t||dz
���E||kr�t||dz
��dkr�|dz
|krRd||dz
|�z���r0|dz}|dz
|kr"d||dz
|�z����0|dz
|kr'd||dz
|�z���r|dz}|dz
|kr'd||dz
|�z���r|dz}|||����sdSn(||kr"tt||��sdS||kr*t	|||���r|||�|jvrdS||z
S)Nrr��a�r)�_IS_ASCII_ID_CHAR�ord�isidentifier�_IS_ASCII_ID_FIRST_CHARr�_ID_KEYWORDS)�cls�str�limit�pos�is_ascii_id_charr s      r
�_eat_identifierzHyperParser._eat_identifier�s^��	�
-��
���%�i�	��C��A��J���#�%�	� ��S��Q��Z���1�	�
��F�A�	�%�i�	��C��A��J���#�%�	� ��S��Q��Z���1�	�
�u�9�	��S��Q��Z���C�/�	��a�%�5�.�
�c�C��A��c�	�N�&:�%H�%H�%J�%J�
��Q����a�%�5�.�
�c�C��A��c�	�N�&:�%H�%H�%J�%J�
��1�u��~�
�3��Q��U�3�Y��#7�"E�"E�"G�"G�
��Q����1�u��~�
�3��Q��U�3�Y��#7�"E�"E�"G�"G�
��Q����q��u�:�*�*�,�,�
��q�
�
��W�	�+�3�s�1�v�;�;�7�
��q�
�s�7�	��#�a��e�*�%�%�	��A�c�E�
�#�"2�2�	��1��Q�w�rz 	
\c��	|���std���|j}|j}|j}||d}|j}|}d}		||kr||dz
|jvr|dz}nl|s||kr||dz
dkr|dz}d}nM||krF|dkr@|||dz
ddkr%|dz}||d}||dzd}nn��|sn�|�|||��}|r
||z
}|}d}n�||kr�||d}	|dkr5||dz
d|	kr |dz}|dkr||dz
d|	k� ||d|krni||d}|dz}||d}|}||d	vrn9||d
vr-|dkr%||dz
dvr|dz}|dkr
||dz
dv�|}nn��}|||j�S)Nz?get_expression should only be called if index is inside a code.rTr�.rLr_Fz([z'"�rRbBuU)rMrBr2rrDrC�_whitespace_charsrj)
r!r2r�
brck_index�
brck_limitrh�last_identifier_pos�
postdot_phase�ret�levels
          r
�get_expressionzHyperParser.get_expression�s���	���� � �	;��:�;�;�
;��,���_�
��&�
��
�+�A�.�
��!��!���
�A	�
��z�>��g�c�!�e�n��8N�&N���1�H�C�C�'���J�&��+2�3�q�5�>�S�+@���1�H�C�$(�M�M��Z�'��J��N���j��A��6�q�9�:�c�A���!�O�J�!+�J�!7��!:�J�$�Z��\�2�1�5�C�C��'
�*!�
���&�&�w�
�C�@�@�C��$
��C�i��&)�#� %�
�
��
�"�
�#�:�.�q�1�� �1�n�$��J�q�L�)A�!�)D�u�)L�$��!�O�J�!�1�n�$��J�q�L�)A�!�)D�u�)L�$��j�)�!�,�
�:��� ��,�Q�/���a��
�'�
�3�A�6�
�&)�#��3�<�4�'����s�|�u�,�2�!�A�g�%�'�#��'�*:�h�*F�%��1�H�C�"�A�g�%�'�#��'�*:�h�*F�%�.1�+���CA	�F�*�4�+>�>�?�?rN)rNF)�__name__�
__module__�__qualname__r@r8rJrMrX�	frozensetrd�classmethodrjrnrurrr
rrs�������5�5�5�n#�#�#�*���(�(�(�('�('�('�('�X�9�6�6�6�7�7�L��6�6��[�6�r"��U@�U@�U@�U@�U@rr�__main__)�mainz"idlelib.idle_test.test_hyperparserr_)�	verbosity)�keywordr�string�idlelibrry�
ascii_letters�digitsr	rr5r`rcrrv�unittestr|rrr
�<module>r�s0���������
�
�
�
��������)�F�0�6�=�@�3�F�G�G��!�	�&�"6��"<�=�=��F�E�%�%��*�*�E�E�E��<�;���c�
�
�;�;�;��Z@�Z@�Z@�Z@�Z@�Z@�Z@�Z@�z�z��<��������D�	-��;�;�;�;�;�;�<�<r