HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/attr/__pycache__/_compat.cpython-312.pyc
�

��`���t�ddlmZmZmZddlZddlZddlZddlZejddk(Z	ej�dk(Zesejdddk\reZ
nddlmZeZ
e	r+ddlmZmZddlmZd	�Zd
�ZdZd�ZGd
�de�Zd�Zd�Zn"ddlmZmZd�Zd�ZdZd�Zej*Zd�Zd�Ze�Zy)�)�absolute_import�division�print_functionN��PyPy)��)�OrderedDict)�Mapping�Sequence)�IterableUserDictc�B�t|ttjf�S�N)�
isinstance�type�types�	ClassType��klasss �./usr/lib/python3/dist-packages/attr/_compat.py�isclassrs���%�$����!8�9�9�c�0�i}||�t|||�S)zP
        A minimal stub of types.new_class that we need for make_class.
        )r)�name�bases�kwds�	exec_body�nss     r�	new_classrs�����"�
��D�%��$�$rrc�"�|j�Sr)�	iteritems��ds rr!r!+s���{�{�}�rc�D�eZdZdZd�Zd�Zd�Zd�Zdd�Zd�Z	dd	�Z
d
�Zy)�ReadOnlyDictz5
        Best-effort read-only dict wrapper.
        c��td��)Nz6'mappingproxy' object does not support item assignment��	TypeError)�self�key�vals   r�__setitem__zReadOnlyDict.__setitem__4s���H��
rc��td��)Nz/'mappingproxy' object has no attribute 'update'��AttributeError�r)�_s  r�updatezReadOnlyDict.update:s�� �A��
rc��td��)Nz4'mappingproxy' object does not support item deletionr'r0s  r�__delitem__zReadOnlyDict.__delitem__@s���F��
rc��td��)Nz.'mappingproxy' object has no attribute 'clear'r.�r)s r�clearzReadOnlyDict.clearFs�� �@��
rNc��td��)Nz,'mappingproxy' object has no attribute 'pop'r.�r)r*�defaults   r�popzReadOnlyDict.popLs�� �>��
rc��td��)Nz0'mappingproxy' object has no attribute 'popitem'r.r6s r�popitemzReadOnlyDict.popitemRs�� �B��
rc��td��)Nz3'mappingproxy' object has no attribute 'setdefault'r.r9s   r�
setdefaultzReadOnlyDict.setdefaultXs�� �E��
rc�8�dt|j�zdzS)Nz
mappingproxy(�))�repr�datar6s r�__repr__zReadOnlyDict.__repr__^s��"�T�$�)�)�_�4�s�:�:rr)�__name__�
__module__�__qualname__�__doc__r,r2r4r7r;r=r?rD�rrr%r%/s/��	�	�	�	�	�	�	�	�	;rr%c�P�t�}|jj|�|Sr)r%rCr2)r#�ress  r�metadata_proxyrLbs���n����������
rc��y)��
        We only warn on Python 3 because we are not aware of any concrete
        consequences of not setting the cell on Python 2.
        NrI��args�kws  r�	just_warnrRgs�rc�<�tjdtd��y)rNz�Running interpreter doesn't sufficiently support code object introspection.  Some features like bare super() or accessing __class__ will not work with slotted classes.r)�
stacklevelN)�warnings�warn�RuntimeWarningrOs  rrRrRqs��
	�
�
�
<�
��	
rc�"�t|t�Sr)rrrs rrr~s���%��&�&r�classc�"�|j�Sr)�itemsr"s rr!r!�s���w�w�y�rc�>�tjt|��Sr)r�MappingProxyType�dictr"s rrLrL�s���%�%�d�1�g�.�.rc���trd�}|Sd�}	tr
|j}n|j}|jdk7s|j
dk7rt�tjdk\r(|j|j
|j���n�|jg}ts|j|j�|j|j|j|j |j"|j$|j&|j(|j*|j,|j.|j0|j|j
g
�t3j4|���fd�}d�}tr|�j6d	}n|�j8d	}||d
�|j:d
k7rt�	|S#t<$r	t>cYSwxYw)z|Return a function of two arguments (cell, value) which sets
    the value stored in the closure cell `cell` to `value`.
    c�(�|j|f�yr)�__setstate__)�cell�values  r�set_closure_cellz/make_set_closure_cell.<locals>.set_closure_cell�s�����u�h�'rc�
��|�yrrI)rc�force_x_to_be_a_cell�xs  @r�set_first_cellvar_toz3make_set_closure_cell.<locals>.set_first_cellvar_to�s�����r�rgrI)r�)�co_cellvars�co_freevarsc�J��tj�idd|f�}||�y)N�setterrI)r�FunctionType)rbrcrn�set_first_freevar_codes   �rrdz/make_set_closure_cell.<locals>.set_closure_cell�s+����'�'�&��H�b�4�'��F�
�5�Mrc���d��fd�}|S)Nc����SrrIris�r�funcz@make_set_closure_cell.<locals>.make_func_with_cell.<locals>.func�s����rrI)rsrgs @r�make_func_with_cellz2make_set_closure_cell.<locals>.make_func_with_cell�s����A�
��Krr�d) �PYPY�PY2�	func_code�__code__rkrl�AssertionError�sys�version_info�replace�co_argcount�append�co_kwonlyargcount�extend�
co_nlocals�co_stacksize�co_flags�co_code�	co_consts�co_names�co_varnames�co_filename�co_name�co_firstlineno�	co_lnotabr�CodeType�func_closure�__closure__�
cell_contents�	ExceptionrR)rdrh�corPrtrbrps      @r�make_set_closure_cellr��s�����	(� ��
�I ��%�/�/�B�%�.�.�B�
�>�>�V�#�r�~�~��';� � ����v�%�&(�Z�Z��N�N����&0�&�"��N�N�#�D�����B�0�0�1��K�K��M�M��O�O��K�K��J�J��L�L��K�K��N�N��N�N��J�J��%�%��L�L��N�N��N�N��
�$&+�^�^�T�%:�"�	�	��&�(�5�5�a�8�D�&�(�4�4�Q�7�D���s�#�����$� � �%� ��������s�F3G�G�G)�
__future__rrr�platformr{rrUr|rw�python_implementationrvr^�ordered_dict�collectionsr
rr�UserDictr
rr�TYPEr!r%rLrR�collections.abcr�rdrIrr�<module>r�s���@�@��
���
���q��Q���%�x�%�%�'�6�1���3���B�Q��6�)��L�'��L��-�)�:�%��D��1;�'�1;�f�
�2�
�'��D�����I�/�c �L)�*�r