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: //lib/python3/dist-packages/attr/__pycache__/_next_gen.cpython-312.pyc
�

��`����dZddlmZddlmZddlmZddlmZm	Z	m
Z
mZ	ddddddd	dd	dd	d	ddd	ddddd
�d�ZeZ
eedd��Zedddddddd	dddd
�d�Zy)zr
These are Python 3.6+-only and keyword-only APIs that call `attr.s` and
`attr.ib` with different default values.
�)�partial)�UnannotatedAttributeError�)�setters)�NOTHING�_frozen_setattrs�attrib�attrsNTF)�these�repr�hash�init�slots�frozen�weakref_slot�str�auto_attribs�kw_only�
cache_hash�auto_exc�eq�order�auto_detect�getstate_setstate�
on_setattr�field_transformerc�z���������	�
���
�����������
������
�������fd���	���fd�}|�|S||�S)aD
    The only behavioral differences are the handling of the *auto_attribs*
    option:

    :param Optional[bool] auto_attribs: If set to `True` or `False`, it behaves
       exactly like `attr.s`. If left `None`, `attr.s` will try to guess:

       1. If any attributes are annotated and no unannotated `attr.ib`\ s
          are found, it assumes *auto_attribs=True*.
       2. Otherwise it assumes *auto_attribs=False* and tries to collect
          `attr.ib`\ s.

    and that mutable classes (``frozen=False``) validate on ``__setattr__``.

    .. versionadded:: 20.1.0
    c���tdid|�d��d��d�	�d�
�d��d��d��d	��d
|�d��d��d
��d��d�
�d��dd�d��d��d���S)N�	maybe_clsrrr
rrrrrrrrrrrr�collect_by_mroTrrr�)r
)�clsrrrrrrrrr
rrrrrrrrrs  ������������������0/usr/lib/python3/dist-packages/attr/_next_gen.py�do_itzdefine.<locals>.do_it5s�����
��
��
��
��	
�
�
��

��
�&�
��
�&�
��
�"�
��
��
��
� $�!
�" �#
�$0�%
�&"�'
�(0�)
�	
�c�6���dtjfv}�dur��tj�|jD]3}|jt
us�|rt
d��tj�n��	�|��S	�|d�S#t$r�|d�cYSwxYw)z�
        Making this a wrapper ensures this code runs during class creation.

        We also ensure that frozen-ness of classes is inherited.
        NFz@Frozen classes can't use on_setattr (frozen-ness was inherited).T)r�NO_OP�validate�	__bases__�__setattr__r�
ValueErrorr)r"�had_on_setattr�base_clsrr$rrs   ����r#�wrapzdefine.<locals>.wrapMs����$�D�'�-�-�+@�@���U�?�z�1� �)�)�J��
�
�H��#�#�'7�7�!�$�7���
%�]�]�
��&��#���l�+�+�	%���d�#�#��(�	%���e�$�$�	%�s�:B�B�Br!)rrrr
rrrrrrrrrrrrrrrr.r$s `````````````````` @r#�definer/s2�����N
�
�
�0!%�J�����I��r%)rr��default�	validatorrr
r�metadata�	converter�factoryrrrrc�0�t||||||||||	|
|��S)zx
    Identical to `attr.ib`, except keyword-only and with some arguments
    removed.

    .. versionadded:: 20.1.0
    r0)r	r0s            r#�fieldr7|s5��*���
�
�
�����
���
�
r%)N)�__doc__�	functoolsr�attr.exceptionsr�r�_makerrr	r
r/�mutablerr7r!r%r#�<module>r>s����
�5��;�;��g��	
�	
�	
�
���
����
��
�����)g�T��	����	6��

��	
�	
�	
�
�����
��"r%