� !A?h����� ddlZddlZddlZddlZddlZddlZdgZGd�d��Zd�Z ddl Z e j e��j ��ej d���dZ dS#e$rdZ YdSwxYw)�N� Completerc�.�eZdZdd�Zd�Zd�Zd�Zd�ZdS)rNc�� |r$t|t��std���|� d|_dSd|_||_dS)Nznamespace must be a dictionary�r)� isinstance�dict� TypeError� use_main_ns� namespace)�selfr s �8/opt/alt/python-internal/lib64/python3.11/rlcompleter.py�__init__zCompleter.__init__*sZ�� � � >�Z� �4�8�8� >��<�=�=� =� � � �D� � � � �D� �&�D�N�N�N�c�� |jrtj|_|���s:|dkr2t r)t jd��t j��dSdSdS|dkr9d|vr|� |��|_ n|� |��|_ |j |S#t$rYdSwxYw)Nr� ��.) r �__main__�__dict__r �strip�_readline_available�readline� insert_text� redisplay� attr_matches�matches�global_matches� IndexError)r �text�states r �completezCompleter.completeEs��� � � � /�%�.�D�N��z�z�|�|� ���z�z�&� ��(��.�.�.��&�(�(�(��2��4��t� �A�:�:��d�{�{�#�0�0��6�6�� � �#�2�2�4�8�8�� � ��<��&� &��� � � ��4�4� ���s�( B5�5 C�Cc��t|��r5|dz } tj|��js|dz }n#t$rYnwxYw|S)N�(�))�callable�inspect� signature� parameters� ValueError)r �val�words r �_callable_postfixzCompleter._callable_postfixdse�� �C�=�=� � �C�K�D� ��(��-�-�8� ��C�K�D���� � � ��� ����� s�5� A�Ac��� g}dh}t|��}tjtjzD]M}|d|�|kr=|�|��|dvr|dz}n |dvr|dz}|�|���N|jtjfD]l}|� ��D]U\}}|d|�|krB||vr>|�|��|�|� ||�����V�m|S)N� __builtins__>�try�finally�:>�_�None�True�else�pass�False�break�continue� ) �len�keyword�kwlist� softkwlist�add�appendr �builtinsr�itemsr,)r rr�seen�nr+�nspacer*s r rzCompleter.global_matchesos7�� � ����� ��I�I���N�W�%7�7� %� %�D��B�Q�B�x�4�����������-�-�-��#�:�D�D��"/�/�/� �#�:�D����t�$�$�$���~�x�'8�9� F� F�F�#�\�\�^�^� F� F� ��c�����8�t�#�#��D�(8�(8��H�H�T�N�N�N��N�N�4�#9�#9�#�t�#D�#D�E�E�E�� F��rc��� tjd|��}|sgS|�dd��\}} t||j��}n#t $rgcYSwxYwt t|����}|�d��t|d��r<|� d��|� t|j ����g}t|��}|dkrd} n |dkrd} nd} |D]�} | d|�|kr�| r| d|dz�| ks�|�d | ��} tt!t#|��| d��t$��r|�| ���qt!|| d��x} �*|�|�| | ������|�| ����|s| sn | dkrd} nd} ��|���|S) Nz(\w+(\.\w+)*)\.(\w*)r�r.� __class__rr2�__Tr)�re�match�group�evalr � Exception�set�dir�discard�hasattrr?�update�get_class_membersrHr;r�getattr�type�propertyr@r,�sort) r r�m�expr�attr� thisobject�wordsrrD�noprefixr+rK�values r rzCompleter.attr_matches�s?�� � �H�,�d� 3� 3��� ��I��W�W�Q��]�]� ��d� ��d�D�N�3�3�J�J��� � � ��I�I�I� �����C� �O�O�$�$�� � � �n�%�%�%� �:�{� +� +� B� �I�I�k� "� "� "� �L�L�*�:�+?�@�@� A� A� A��� ��I�I�� �2�:�:��H�H� �S�[�[��H�H��H� �� .� .����!��H��$�$�!�%�&*�4�A�a�C�4�j�H�&<�&<�'+�t�t�T�T�2�E�!�'�$�z�*:�*:�D�$�"G�"G�"*�,�,� !� ���u�-�-�-� �!(��T�4�!@�!@�@��M����t�'=�'=�e�U�'K�'K�L�L�L�L����u�-�-�-��� �h� ���3��������1 �2 � � �����s�A � A�A�N)�__name__� __module__� __qualname__rr!r,rr�rr rr)sd������'�'�'�'�6���> � � ����6>�>�>�>�>rc�|�t|��}t|d��r|jD]}|t|��z}�|S)N� __bases__)rPrRrfrT)�klass�ret�bases r rTrT�sJ�� �e�*�*�C��u�[�!�!�0��O� 0� 0�D��)�$�/�/�/�C�C� �Jrc�*�tjd��Sr`)r� set_completerrdrr �rl�s��H�2�4�8�8�rTF)�atexitrAr&r<rJr�__all__rrTrrkr!�registerr� ImportErrorrdrr �rqs���>� � � ������������� � � � ����� �-��_�_�_�_�_�_�_�_�B��� ��O�O�O��H��9�9�;�;�/�0�0�0��F�O�8�8�9�9�9������� � � ������ ���s�A$�$A/�.A/