
    d                     <   d Z ddlmZ ddlmZ ddlmZmZmZm	Z	m
Z
 ddlmZ ddlmZmZ ddlmZmZmZmZmZmZ dd	lmZmZmZmZmZmZmZmZm Z  dd
l!m"Z"m#Z#m$Z$m%Z% ddl&m'Z' exZ(Z)exZ*Z+ eed          Z, G d d          Z-g dZ.de/defdZ0 e0e1          Z2dS )z
Classes Without Boilerplate
    )partial)Callable   )
converters
exceptionsfilterssetters
validators)	cmp_using)get_run_validatorsset_run_validators)asdictassocastupleevolvehasresolve_types)	NOTHING	AttributeFactoryattribattrsfieldsfields_dict
make_classvalidate)definefieldfrozenmutable)VersionInfoT)auto_attribsc                       e Zd ZdS )AttrsInstanceN)__name__
__module____qualname__     Q/home/feoh/.local/pipx/venvs/poetry/lib/python3.11/site-packages/attr/__init__.pyr$   r$   "   s        Dr)   r$   ) r   r$   r   r   r   r   r   attrr   
attributesr   r   r   r   r   r   r   r   r   r   r   r   r   ibr   r    r   sr   r	   r   r
   mod_namereturnc                 0     dt           dt           f fd}|S )zp
    Create a metadata proxy for packaging information that uses *mod_name* in
    its warnings and errors.
    namer0   c                    ddddddddddd
}| |                                 vrt          d d|            d	d l}d	d l}|j        d
k     rd	dlm} nd	dlm} | dk    r$|                    d d|  dt          d            |d          }| dk    rdS | dk    rdS | dv r"|d         
                    dd          d         S | dk    rt          j        |d                   S | dk    r"|d                             dd          d	         S | dk    r*|d                             dd          d         d d         S |||                   S ) NName versionsummarylicense)
	__title____copyright____version____version_info____description____uri____url__
__author__	__email____license__zmodule z has no attribute r   )      )metadatar<   z
Accessing .z is deprecated and will be removed in a future release. Use importlib.metadata directly to query for attrs's packaging metadata.   )
stacklevelr   rB   MITr:   z"Copyright (c) 2015 Hynek Schlawack)r>   r?   zProject-URL r   r@   zAuthor-emailrA   <)keysAttributeErrorsyswarningsversion_infoimportlib_metadatarE   importlib.metadatawarnDeprecationWarningsplitr!   _from_version_stringrsplit)r2   dunder_to_metadatarO   rP   rE   metar/   s         r*   __getattr__z"_make_getattr.<locals>.__getattr__P   s   $ )($
 
 )..0000 !M8!M!Mt!M!MNNN


f$$3333333333333%%%MM;X ; ; ; ; ; #     x  =  5_$$77+++&,,S!44R88'''3DODDD\!!'..sA66q99[  '..sA66q9#2#>>&t,--r)   )str)r/   r[   s   ` r*   _make_getattrr]   J   s8    /.# /.# /. /. /. /. /. /.b r)   N)3__doc__	functoolsr   typingr   r5   r   r   r   r	   r
   _cmpr   _configr   r   _funcsr   r   r   r   r   r   _maker   r   r   r   r   r   r   r   r   	_next_genr   r   r   r    _version_infor!   r.   r,   r-   r+   	dataclassr$   __all__r\   r]   r%   r[   r(   r)   r*   <module>ri      s                B B B B B B B B B B B B B B       ; ; ; ; ; ; ; ; F F F F F F F F F F F F F F F F
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 6 5 5 5 5 5 5 5 5 5 5 5 & & & & & &  J TGE---		 	 	 	 	 	 	 	! ! !H7C 7H 7 7 7 7t mH%%r)   