ó
    Ñ]jË  ã                   ó@   • S SK r S SKrS SKJr  S/r " S S5      rS rg)é    N)Ú	signatureÚ
deprecatedc                   ó:   • \ rS rSrSrS
S jrS rS rS rS r	Sr
g	)r   é   aa  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                 ó   • Xl         g )N©Úextra)Úselfr	   s     ÚV/home/mande/repo/quber/.venv/lib/python3.13/site-packages/sklearn/utils/deprecation.pyÚ__init__Údeprecated.__init__&   s   € Ø�
ó    c                 ó¼   • [        U[        5      (       a  U R                  U5      $ [        U[        5      (       a  U R	                  U5      $ U R                  U5      $ )z0Call method

Parameters
----------
obj : object
)Ú
isinstanceÚtypeÚ_decorate_classÚpropertyÚ_decorate_propertyÚ_decorate_fun)r
   Úobjs     r   Ú__call__Údeprecated.__call__)   sS   € ô �cœ4× Ñ Ø×'Ñ'¨Ó,Ð,Ü˜œX×&Ñ&ð ×*Ñ*¨3Ó/Ð/à×%Ñ% cÓ*Ð*r   c                 óÞ   ^^• SUR                   -  mU R                  (       a  TSU R                  -  -  mUR                  m[        U5      nUU4S jnX1l        SUl         TUl        X!l        U$ )NzClass %s is deprecatedú; %sc                 óž   >• [         R                  " T[        S9  T[        R                  L a  [        R	                  U 5      $ T" U /UQ70 UD6$ ©N)Úcategory)ÚwarningsÚwarnÚFutureWarningÚobjectÚ__new__)ÚclsÚargsÚkwargsÚmsgÚnews      €€r   ÚwrappedÚ+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   Údeprecated._decorate_class>   sd   ù€ Ø&¨¯©Ñ5ˆØ�:�:Ø�6˜DŸJ™JÑ&Ñ&ˆCà�k‰kˆÜ˜‹nˆö	-ð Œà$ˆÔØ&)ˆÔ#àÔàˆ
r   c                 ó¼   ^^• STR                   -  mU R                  (       a  TSU R                  -  -  m[        R                  " T5      UU4S j5       nTUl        U$ )zDecorate function funzFunction %s is deprecatedr   c                  óF   >• [         R                  " T[        S9  T" U 0 UD6$ r   )r   r   r    )r$   r%   Úfunr&   s     €€r   r(   Ú)deprecated._decorate_fun.<locals>.wrapped]   s!   ø€ ä�MŠM˜#¬Ò6Ù˜Ð' Ñ'Ð'r   )r*   r	   Ú	functoolsÚwrapsÚ__wrapped__)r
   r1   r(   r&   s    ` @r   r   Údeprecated._decorate_funV   sW   ù€ ð *¨C¯L©LÑ8ˆØ�:�:Ø�6˜DŸJ™JÑ&Ñ&ˆCä	�Š˜Ó	õ	(ó 
ð	(ð "ˆÔàˆr   c                 óˆ   ^^• U R                   m[        [        R                  " TR                  5      UU4S j5       5       nU$ )Nc                  óZ   >• [         R                  " T[        S9  TR                  " U 0 UD6$ r   )r   r   r    Úfget)r$   r%   r&   Úprops     €€r   r(   Ú.deprecated._decorate_property.<locals>.wrappedk   s'   ø€ ô �MŠM˜#¬Ò6Ø—9’9˜dÐ- fÑ-Ð-r   )r	   r   r3   r4   r9   )r
   r:   r(   r&   s    ` @r   r   Údeprecated._decorate_propertyh   s:   ù€ Ø�j‰jˆä	Ü	�Š˜Ÿ™Ó	#õ	.ó 
$ó 
ð	.ð ˆr   r   N)Ú )r*   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   r   r   r   Ú__static_attributes__© r   r   r   r      s    † ñô4ò+ò*ò0õ$	r   c           
      óÔ   • [        U S/ 5      nUc  / nSSR                  U Vs/ s H0  n[        UR                  [        5      (       d  M$  UR                  PM2     sn5      ;   nU$ s  snf )z>Helper to check if func is wrapped by our deprecated decoratorÚ__closure__r   r=   )ÚgetattrÚjoinr   Úcell_contentsÚstr)ÚfuncÚclosuresÚcÚis_deprecateds       r   Ú_is_deprecatedrN   t   sc   € ä�t˜]¨BÓ/€HØÑØˆØ  B§G¡GÙ"*ÓO¢(˜Q¬j¸¿¹Ì#×.N‹ˆ�Œ¡(ÑOó%ñ €Mð Ðùò 	Ps   £#A%
Á
A%
)r3   r   Úinspectr   Ú__all__r   rN   rC   r   r   Ú<module>rQ      s)   ðó Û Ý àˆ.€÷fñ fóRr   