o
    Ri                     @  s   d dl mZ d dlmZ G dd deZG dd deZG dd deZG d	d
 d
eZ	G dd deZ
G dd deZG dd deZG dd deZG dd deZdS )    )annotations)ClassVarc                   @  s$   e Zd ZU dZdZegZded< dS )FrozenErrorz
    A frozen/immutable instance or attribute have been attempted to be
    modified.

    It mirrors the behavior of ``namedtuples`` by using the same error message
    and subclassing `AttributeError`.

    .. versionadded:: 20.1.0
    zcan't set attributezClassVar[tuple[str]]argsN)__name__
__module____qualname____doc__msgr   __annotations__ r   r   F/home/air/SG/back/venv/lib/python3.10/site-packages/attr/exceptions.pyr      s   
 
r   c                   @     e Zd ZdZdS )FrozenInstanceErrorz\
    A frozen instance has been attempted to be modified.

    .. versionadded:: 16.1.0
    Nr   r   r   r	   r   r   r   r   r          r   c                   @  r   )FrozenAttributeErrorz]
    A frozen attribute has been attempted to be modified.

    .. versionadded:: 20.1.0
    Nr   r   r   r   r   r      r   r   c                   @  r   )AttrsAttributeNotFoundErrorzo
    An *attrs* function couldn't find an attribute that the user asked for.

    .. versionadded:: 16.2.0
    Nr   r   r   r   r   r   '   r   r   c                   @  r   )NotAnAttrsClassErrorze
    A non-*attrs* class has been passed into an *attrs* function.

    .. versionadded:: 16.2.0
    Nr   r   r   r   r   r   /   r   r   c                   @  r   )DefaultAlreadySetErrorz
    A default has been set when defining the field and is attempted to be reset
    using the decorator.

    .. versionadded:: 17.1.0
    Nr   r   r   r   r   r   7   r   r   c                   @  r   )UnannotatedAttributeErrorzq
    A class with ``auto_attribs=True`` has a field without a type annotation.

    .. versionadded:: 17.3.0
    Nr   r   r   r   r   r   @   r   r   c                   @  r   )PythonTooOldErrorz|
    It was attempted to use an *attrs* feature that requires a newer Python
    version.

    .. versionadded:: 18.2.0
    Nr   r   r   r   r   r   H   r   r   c                      s(   e Zd ZdZ fddZdd Z  ZS )NotCallableErrorzx
    A field requiring a callable has been set with a value that is not
    callable.

    .. versionadded:: 19.2.0
    c                   s"   t t| || || _|| _d S N)super	TypeError__init__r
   value)selfr
   r   	__class__r   r   r   Y   s   
zNotCallableError.__init__c                 C  s
   t | jS r   )strr
   )r   r   r   r   __str__^   s   
zNotCallableError.__str__)r   r   r   r	   r   r"   __classcell__r   r   r   r   r   Q   s    r   N)
__future__r   typingr   AttributeErrorr   r   r   
ValueErrorr   r   RuntimeErrorr   r   r   r   r   r   r   r   r   <module>   s   		