o
    `                     @   s   d dl mZmZ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 )    )absolute_importdivisionprint_functionc                   @   s   e Zd ZdZdZegZ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 attributeN)__name__
__module____qualname____doc__msgargs r   r   1/usr/lib/python3/dist-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   )AttrsAttributeNotFoundErrorzq
    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   )NotAnAttrsClassErrorzi
    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 using ``attr.ib()`` and is attempted to be reset
    using the decorator.

    .. versionadded:: 17.1.0
    Nr   r   r   r   r   r   3   r   r   c                   @   r   )UnannotatedAttributeErrorz~
    A class with ``auto_attribs=True`` has an ``attr.ib()`` 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   E   r   r   c                       s(   e Zd ZdZ fddZdd Z  ZS )NotCallableErrorz
    A ``attr.ib()`` 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   V   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   N   s    r   N)
__future__r   r   r   AttributeErrorr   r   r   
ValueErrorr   r   RuntimeErrorr   r   r   r   r   r   r   r   r   <module>   s    			