ó
    EñiQ  ã                   óF   • S r SSKJr  SSKJr  S rS rS rS r\	" 5       r
g)	z%
Commonly used hooks for on_setattr.
é   )Ú_config©ÚFrozenAttributeErrorc                  ó   ^ • U 4S jnU$ )zZ
Run all *setters* and return the return value of the last one.

.. versionadded:: 20.1.0
c                 ó0   >• UnT H  nU" XU5      nM     U$ )N© )ÚinstanceÚattribÚ	new_valueÚrvÚsetterÚsetterss        €ÚI/home/mande/repo/quber/.venv/lib/python3.13/site-packages/attr/setters.pyÚwrapped_pipeÚpipe.<locals>.wrapped_pipe   s%   ø€ ØˆãˆFÙ˜¨"Ó-ŠBñ ð ˆ	ó    r   )r   r   s   ` r   Úpiper      s   ø€ õð Ðr   c                 ó   • [         e)z@
Prevent an attribute to be modified.

.. versionadded:: 20.1.0
r   )Ú_Ú__Ú___s      r   Úfrozenr      s
   € ô Ðr   c                 ól   • [         R                  SL a  U$ UR                  nU(       d  U$ U" XU5        U$ )zR
Run *attrib*'s validator on *new_value* if it has one.

.. versionadded:: 20.1.0
F)r   Ú_run_validatorsÚ	validator)r	   r
   r   Úvs       r   Úvalidater   &   s<   € ô ×Ñ %Ò'ØÐà×Ñ€AÞØÐá€h˜	Ô"àÐr   c                 óz   • UR                   nU(       a'  SSKJn  [        X45      (       d  U" U5      $ U" X U5      $ U$ )zn
Run *attrib*'s converter -- if it has one -- on *new_value* and return the
result.

.. versionadded:: 20.1.0
r   )Ú	Converter)Ú	converterÚ_maker   Ú
isinstance)r	   r
   r   Úcr   s        r   Úconvertr$   8   s=   € ð 	×Ñ€AÞå$ä˜!×'Ñ'Ù�Y“<Ðá� fÓ-Ð-àÐr   N)Ú__doc__Ú r   Ú
exceptionsr   r   r   r   r$   ÚobjectÚNO_OPr   r   r   Ú<module>r*      s/   ðñõ Ý ,òò$òò$ñ. 	‹�r   