� !A?h����ddlmZddlmZddlmZGd�d��ZGd�d��Zdd �ZGd �d ��Z d �Z dS)�)�suppress)� TextIOWrapper�)�abcc�"�eZdZ d�fd�Zd�ZdS)�SpecLoaderAdapterc��|jS�N)�loader��specs �J/opt/alt/python-internal/lib64/python3.11/importlib/resources/_adapters.py�zSpecLoaderAdapter. s��$�+��c�4�||_||��|_dSr )r r )�selfr �adapters r�__init__zSpecLoaderAdapter.__init__ s���� ��g�d�m�m�� � � rc�,�t|j|��Sr )�getattrr �r�names r� __getattr__zSpecLoaderAdapter.__getattr__s���t�y�$�'�'�'rN)�__name__� __module__� __qualname__rr�rrrrsD�������&>�%=�$�$�$�$�(�(�(�(�(rrc��eZdZ d�Zd�ZdS)�TraversableResourcesLoaderc��||_dSr r �rr s rrz#TraversableResourcesLoader.__init__� ���� � � rc�N�t|j�����Sr )�CompatibilityFilesr �_nativers r�get_resource_readerz.TraversableResourcesLoader.get_resource_readers��!�$�)�,�,�4�4�6�6�6rN)rrrrr&rrrrrs7����������7�7�7�7�7rr�rc��|dkrt|g|�Ri|��S|dkr|Std�|�����)Nr'�rbz8Invalid mode value '{}', only 'r' and 'rb' are supported)r� ValueError�format)�file�mode�args�kwargss r� _io_wrapperr0 sZ�� �s�{�{��T�3�D�3�3�3�F�3�3�3� ����� � �B�I�I�$�O�O� � �rc��eZdZ Gd�dej��ZGd�dej��ZGd�dej��Zd�Ze d���Z d �Z d �Z d �Z d S) r$c�J�eZdZ d�Zd�Zd�ZeZd�Zed���Z d d�Z dS) �CompatibilityFiles.SpecPathc�"�||_||_dSr )�_spec�_reader)rr �readers rrz$CompatibilityFiles.SpecPath.__init__6s���D�J�!�D�L�L�Lrc����jstd��St�fd��j���D����S)Nrc3�X�K�|]$}t��j|��V��%dSr )r$� ChildPathr6)�.0�pathrs �r� z6CompatibilityFiles.SpecPath.iterdir..=sI��������#�,�,�T�\�4�@�@������r)r6�iter�contents�rs`r�iterdirz#CompatibilityFiles.SpecPath.iterdir:s^����<� ��B�x�x������� �L�1�1�3�3������ rc��dS�NFrr@s r�is_filez#CompatibilityFiles.SpecPath.is_fileB����5rc��|jst�|��St�|j|��Sr )r6r$� OrphanPathr:�r�others r�joinpathz$CompatibilityFiles.SpecPath.joinpathGs8���<� <�)�4�4�U�;�;�;�%�/�/�� �e�D�D� Drc��|jjSr )r5rr@s rrz CompatibilityFiles.SpecPath.nameLs ���:�?� "rr'c�T�t|j�d��|g|�Ri|��Sr )r0r6� open_resource�rr-r.r/s r�openz CompatibilityFiles.SpecPath.openPs3���t�|�9�9�$�?�?��W��W�W�W�PV�W�W� WrN�r'� rrrrrArD�is_dirrJ�propertyrrOrrr�SpecPathr30s������� �  "� "� "� � � � � � ��� E� E� E� � #� #� �� #� X� X� X� X� X� XrrTc�L�eZdZ d�Zd�Zd�Zd�Zd�Zed���Z d d�Z d S) �CompatibilityFiles.ChildPathc�"�||_||_dSr )r6�_name)rr7rs rrz%CompatibilityFiles.ChildPath.__init__Ys��!�D�L��D�J�J�Jrc� �td��S�Nr�r>r@s rrAz$CompatibilityFiles.ChildPath.iterdir]� ����8�8�Orc�@�|j�|j��Sr )r6� is_resourcerr@s rrDz$CompatibilityFiles.ChildPath.is_file`s���<�+�+�D�I�6�6� 6rc�,�|��� Sr )rDr@s rrRz#CompatibilityFiles.ChildPath.is_dircs���|�|�~�~�%� %rc�B�t�|j|��Sr )r$rGrrHs rrJz%CompatibilityFiles.ChildPath.joinpathfs��%�0�0���E�B�B� Brc��|jSr )rXr@s rrz!CompatibilityFiles.ChildPath.nameis ���:� rr'c�^�t|j�|j��|g|�Ri|��Sr )r0r6rMrrNs rrOz!CompatibilityFiles.ChildPath.openmsE���� �*�*�4�9�5�5�t��>B����FL��� rNrPrQrrrr:rVSs������� �  � � � � � � 7� 7� 7� &� &� &� C� C� C� � � � �� � � � � � � rr:c�J�eZdZ d�Zd�Zd�ZeZd�Zed���Z d d�Z dS) �CompatibilityFiles.OrphanPathc�X�t|��dkrtd���||_dS)Nrz/Need at least one path part to construct a path)�lenr*�_path)r� path_partss rrz&CompatibilityFiles.OrphanPath.__init__xs-���:����"�"� �!R�S�S�S�#�D�J�J�Jrc� �td��SrZr[r@s rrAz%CompatibilityFiles.OrphanPath.iterdir}r\rc��dSrCrr@s rrDz%CompatibilityFiles.OrphanPath.is_file�rErc�2�tjg|j�|�R�Sr )r$rGrgrHs rrJz&CompatibilityFiles.OrphanPath.joinpath�s ��%�0�D�$�*�D�e�D�D�D� Drc��|jdS)N�����)rgr@s rrz"CompatibilityFiles.OrphanPath.name�s���:�b�>� !rr'c� �td���)NzCan't open orphan path)�FileNotFoundErrorrNs rrOz"CompatibilityFiles.OrphanPath.open�s��#�$<�=�=� =rNrPrQrrrrGrdrs������� �  $� $� $�  � � � � � ��� E� E� E� � "� "� �� "� >� >� >� >� >� >rrGc��||_dSr r r!s rrzCompatibilityFiles.__init__�r"rc��tt��5|jj�|jj��cddd��S#1swxYwYdSr )r�AttributeErrorr r r&rr@s rr6zCompatibilityFiles._reader�s��� �n� %� %� H� H��9�#�7�7�� ��G�G� H� H� H� H� H� H� H� H� H� H� H� H���� H� H� H� H� H� Hs�)A � A�Ac�:� |j}t|d��r|n|S)N�files)r6�hasattr)rr7s rr%zCompatibilityFiles._native�s)�� ���� ���1�1�;�v�v�t�;rc�,�t|j|��Sr )rr6)r�attrs rrzCompatibilityFiles.__getattr__�s���t�|�T�*�*�*rc�L�t�|j|j��Sr )r$rTr r6r@s rrtzCompatibilityFiles.files�s��!�*�*�4�9�d�l�C�C�CrN)rrrr� TraversablerTr:rGrrSr6r%rrtrrrr$r$*s������� !X�!X�!X�!X�!X�3�?�!X�!X�!X�F�����C�O����>>�>�>�>�>�S�_�>�>�>�:����H�H��X�H�<�<�<�+�+�+�D�D�D�D�Drr$c�8� t|jt��Sr )r�__spec__r)�packages r� wrap_specr}�s��� �W�-�/I� J� J�JrNrP) � contextlibr�ior�rrrr0r$r}rrr�r�s��������������������� (� (� (� (� (� (� (� (� 7� 7� 7� 7� 7� 7� 7� 7�����xD�xD�xD�xD�xD�xD�xD�xD�vK�K�K�K�Kr