Ë
    êÿæiË  ã                   ó@   — d dl Z d dlZd dlmZ dgZ G d„ d«      Zd„ Zy)é    N)Ú	signatureÚ
deprecatedc                   ó0   — e Zd ZdZdd„Zd„ Zd„ Zd„ Zd„ Zy)	r   a¥  Decorator to mark a function or class as deprecated.

    Issue a warning when the function is called/the class is instantiated and
    adds a warning to the docstring.

    The optional extra argument will be appended to the deprecation message
    and the docstring. Note: to use this with the default value for extra, put
    in an empty of parentheses:

    Examples
    --------
    >>> from sklearn.utils import deprecated
    >>> deprecated()
    <sklearn.utils.deprecation.deprecated object at ...>
    >>> @deprecated()
    ... def some_function(): pass

    Parameters
    ----------
    extra : str, default=''
          To be added to the deprecation messages.
    c                 ó   — || _         y )N)Úextra)Úselfr   s     ún/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/sklearn/utils/deprecation.pyÚ__init__zdeprecated.__init__&   s	   € Øˆ�
ó    c                 ó¨   — t        |t        «      r| j                  |«      S t        |t        «      r| j	                  |«      S | j                  |«      S )zPCall method

        Parameters
        ----------
        obj : object
        )Ú
isinstanceÚtypeÚ_decorate_classÚpropertyÚ_decorate_propertyÚ_decorate_fun)r   Úobjs     r	   Ú__call__zdeprecated.__call__)   sM   € ô �cœ4Ô Ø×'Ñ'¨Ó,Ð,Ü˜œXÔ&ð ×*Ñ*¨3Ó/Ð/à×%Ñ% cÓ*Ð*r   c                 óÖ   ‡‡— d|j                   z  Š| j                  r‰d| j                  z  z  Š|j                  Št        |«      }ˆˆfd„}||_        d|_         ‰|_        ||_        |S )NzClass %s is deprecatedú; %sc                 ó    •— t        j                  ‰t        ¬«       ‰t        j                  u rt        j	                  | «      S  ‰| g|¢­i |¤ŽS ©N)Úcategory)ÚwarningsÚwarnÚFutureWarningÚobjectÚ__new__)ÚclsÚargsÚkwargsÚmsgÚnews      €€r	   Úwrappedz+deprecated._decorate_class.<locals>.wrappedF   sA   ø€ Ü�M‰M˜#¬Õ6Ø”f—n‘nÑ$Ü—~‘~ cÓ*Ð*á�sÐ,˜TÒ, VÑ,Ð,r   r   )Ú__name__r   r   r   Údeprecated_originalÚ__signature__)r   r   Úsigr$   r"   r#   s       @@r	   r   zdeprecated._decorate_class>   sh   ù€ Ø&¨¯©Ñ5ˆØ�:Š:Ø�6˜DŸJ™JÑ&Ñ&ˆCà�k‰kˆÜ˜‹nˆõ	-ð ˆŒà$ˆÔØ&)ˆÔ#àˆÔàˆ
r   c                 ó®   ‡‡— d‰j                   z  Š| j                  r‰d| j                  z  z  Št        j                  ‰«      ˆˆfd„«       }‰|_        |S )zDecorate function funzFunction %s is deprecatedr   c                  óJ   •— t        j                  ‰t        ¬«        ‰| i |¤ŽS r   )r   r   r   )r    r!   Úfunr"   s     €€r	   r$   z)deprecated._decorate_fun.<locals>.wrapped]   s!   ø€ ä�M‰M˜#¬Õ6Ù˜Ð' Ñ'Ð'r   )r%   r   Ú	functoolsÚwrapsÚ__wrapped__)r   r+   r$   r"   s    ` @r	   r   zdeprecated._decorate_funV   sW   ù€ ð *¨C¯L©LÑ8ˆØ�:Š:Ø�6˜DŸJ™JÑ&Ñ&ˆCä	�‰˜Ó	ô	(ó 
ð	(ð "ˆÔàˆr   c                 ó„   ‡‡— | j                   Št        t        j                  ‰j                  «      ˆˆfd„«       «       }|S )Nc                  ó^   •— t        j                  ‰t        ¬«        ‰j                  | i |¤ŽS r   )r   r   r   Úfget)r    r!   r"   Úprops     €€r	   r$   z.deprecated._decorate_property.<locals>.wrappedk   s)   ø€ ô �M‰M˜#¬Õ6Ø�4—9‘9˜dÐ- fÑ-Ð-r   )r   r   r,   r-   r1   )r   r2   r$   r"   s    ` @r	   r   zdeprecated._decorate_propertyh   s:   ù€ Ø�j‰jˆä	Ü	�‰˜Ÿ™Ó	#ô	.ó 
$ó 
ð	.ð ˆr   N)Ú )	r%   Ú
__module__Ú__qualname__Ú__doc__r
   r   r   r   r   © r   r	   r   r      s    „ ñó4ò+ò*ò0ó$	r   c           
      ó¾   — t        | dg «      }|€g }ddj                  |D �cg c])  }t        |j                  t        «      sŒ|j                  ‘Œ+ c}«      v }|S c c}w )z>Helper to check if func is wrapped by our deprecated decoratorÚ__closure__r   r3   )ÚgetattrÚjoinr   Úcell_contentsÚstr)ÚfuncÚclosuresÚcÚis_deprecateds       r	   Ú_is_deprecatedrB   t   sa   € ä�t˜]¨BÓ/€HØÐØˆØ  B§G¡GÙ"*ÓO¡(˜Q¬j¸¿¹Ì#Õ.Nˆ�‹ (ÑOó%ð €Mð Ðùò 	Ps   ¢A
ÁA
)r,   r   Úinspectr   Ú__all__r   rB   r7   r   r	   Ú<module>rE      s)   ðó Û Ý àˆ.€÷fñ fóRr   