
    O&i                        d Z ddlZddlZddlmZ ddlmZmZmZ  G d de	          Z
 G d de          Ze
Zi fd	ed
eeef         dee         deeef         ddf
dZ G d d          Z G d deeef                   ZdS )z)Sphinx deprecation classes and utilities.    N)import_module)AnyDictTypec                       e Zd ZdS )RemovedInSphinx60WarningN__name__
__module____qualname__     _/home/geonatureadmin/si_en_reseau/tutos/venv/lib/python3.11/site-packages/sphinx/deprecation.pyr   r   	           Dr   r   c                       e Zd ZdS )RemovedInSphinx70WarningNr	   r   r   r   r   r      r   r   r   modnameobjectswarningnamesreturnc                 d    t          |           }t          || |||          t          j        | <   d S N)r   _ModuleWrappersysmodules)r   r   r   r   modules        r   deprecated_aliasr      s6    7##F)'52 2CKr   c                   j    e Zd Zdededeeef         dee         deeef         ddfdZ	d	edefd
Z
dS )r   r   r   r   r   r   r   Nc                 L    || _         || _        || _        || _        || _        d S r   )_module_modname_objects_warning_names)selfr   r   r   r   r   s         r   __init__z_ModuleWrapper.__init__   s+     r   namec                 j   || j         vrt          | j        |          S | j                            |d           }|7t          j        d                    | j        ||          | j	        d           n5t          j        d                    | j        |          | j	        d           | j         |         S )Nz^The alias '{}.{}' is deprecated, use '{}' instead. Check CHANGES for Sphinx API modifications.   
stacklevelz@{}.{} is deprecated. Check CHANGES for Sphinx API modifications.)
r#   getattrr!   r%   getwarningswarnformatr"   r$   )r&   r(   canonical_names      r   __getattr__z_ModuleWrapper.__getattr__&   s    t}$$4<...t44%M,,2F4=$,W,W!- - - - -
 M //5vdmT/J/J-A7 7 7 7 }T""r   )r
   r   r   r   strr   objectr   Warningr'   r3   r   r   r   r   r      s        s S sF{+w- S#X ,0   # # # # # # # #r   r   c                        e Zd ZdZdeeef         dedee         ddf fdZ	ded	eddf fd
Z
ddededef fdZdedef fdZddededef fdZdeeef         ddf fdZ xZS )DeprecatedDictz-A deprecated dict which warns on each access.datamessager   r   Nc                 f    || _         || _        t                                          |           d S r   )r:   r   superr'   )r&   r9   r:   r   	__class__s       r   r'   zDeprecatedDict.__init__:   s/    r   keyvaluec                     t          j        | j        | j        d           t	                                          ||           d S N   r+   )r/   r0   r:   r   r<   __setitem__)r&   r>   r?   r=   s      r   rC   zDeprecatedDict.__setitem__?   s>    dlDLQ????C'''''r   defaultc                     t          j        | j        | j        d           t	                                          ||          S rA   )r/   r0   r:   r   r<   
setdefaultr&   r>   rD   r=   s      r   rF   zDeprecatedDict.setdefaultC   s8    dlDLQ????ww!!#w///r   c                     t          j        | j        | j        d           t	                                          |          S rA   )r/   r0   r:   r   r<   __getitem__)r&   r>   r=   s     r   rI   zDeprecatedDict.__getitem__G   s6    dlDLQ????ww""3'''r   c                     t          j        | j        | j        d           t	                                          ||          S rA   )r/   r0   r:   r   r<   r.   rG   s      r   r.   zDeprecatedDict.getK   s6    dlDLQ????ww{{3(((r   otherc                     t          j        | j        | j        d           t	                                          |           d S rA   )r/   r0   r:   r   r<   update)r&   rK   r=   s     r   rM   zDeprecatedDict.updateO   s:    dlDLQ????ur   r   )r
   r   r   __doc__r   r4   r   r   r6   r'   rC   rF   rI   r.   rM   __classcell__)r=   s   @r   r8   r8   7   so       77T#s(^ c DM VZ      
(s (3 (4 ( ( ( ( ( (0 0c 0C 03 0 0 0 0 0 0(s (s ( ( ( ( ( () )s )S )C ) ) ) ) ) )DcN t          r   r8   )rN   r   r/   	importlibr   typingr   r   r   DeprecationWarningr   PendingDeprecationWarningr   RemovedInNextVersionWarningr4   r5   r6   r   r   r8   r   r   r   <module>rU      sj   / / 



  # # # # # # " " " " " " " " " "	 	 	 	 	1 	 	 		 	 	 	 	8 	 	 	 7  FH2 2c 2Df,= 2"7m248cN2LP2 2 2 2# # # # # # # #8    T#s(^     r   