
    EhU                     8    d Z ddlZddlZd Zd Zd Zd ZddZy)	zMethod decorator helpers.    Nc                  .    ddl m}   | dt        d       y )Nr   warnz1returning `None` from `cache(self)` is deprecated   )
stacklevel)warningsr   DeprecationWarningr   s    t/home/developers/rajanand/mypropertyqr-fmb-refixing-v2/venv/lib/python3.12/site-packages/cachetools/_cachedmethod.pywarn_cache_noner      s    ;    c                 h     t        j                          fd}fd}||_        |S )Nc                     |       }|t                 | g|i |S  	| g|i | 
|       5  j                  | t                      |       j                  fd       	 |   cd d d        S # t        $ r j                         Y nw xY w	 d d d        n# 1 sw Y   nxY w	  | g|i |} 
|       5  	 ||<   n# t        $ r Y nw xY w|cd d d         
|       5  |    j                          |       j                          d d d        S # 1 sw Y   S xY w# 1 sw Y   nxY w	  
|       5  |    j                          |       j                          d d d        y # 1 sw Y   y xY w#  
|       5  |    j                          |       j                          d d d        w # 1 sw Y   w xY wxY w)Nc                       vS N )kps   r
   <lambda>z-_condition.<locals>.wrapper.<locals>.<lambda>   s    
 r   )	r   
setdefaultsetwait_forKeyErroradd
ValueErrorremove
notify_all)selfargskwargscvr   r   cachecondkeylockmethodpendings        @@r
   wrapperz_condition.<locals>.wrapper   s   $K9$0000&t&v&$Z 	""4/AJ 23t		 	
  a	 	 		(t-d-f-Ad AaD!   d ($$Q'T
%%'( ( (   d ($$Q'T
%%'( ( (d ($$Q'T
%%'( ( (s   6B'/A==BB'BB''B04F D1
CD1	CD1CD1 	F 1+D%%D.	1D:6F +E::F	G+G:	GGGc                 v     |       }|" |       5  |j                          d d d        y y # 1 sw Y   y xY wr   clearr   r    r"   r%   s     r
   cache_clearz_condition.<locals>.cache_clear.   @    $K=d 	      /8)weakrefWeakKeyDictionaryr-   )r&   r"   r$   r%   r#   r(   r-   r'   s   `````  @r
   
_conditionr2      s/    '')G( (4 &GNr   c                 8      fd}fd}||_         |S )Nc                     |       }|t                 	| g|i |S  | g|i |} |       5  	 ||   cd d d        S # t        $ r Y nw xY w	 d d d        n# 1 sw Y   nxY w 	| g|i |} |       5  	 |j                  ||      cd d d        S # t        $ r |cY cd d d        S w xY w# 1 sw Y   y xY wr   )r   r   r   r   )
r   r   r   r    r   r!   r"   r$   r%   r&   s
         r
   r(   z_locked.<locals>.wrapper9   s    $K9$0000&t&v&$Z 	t	 	  		 	 	
 4)$)&)$Z 	||Aq)	 	  		 		 	sR   AA	AAAAA(?B6BB3'B62B33B66B?c                 v     |       }|" |       5  |j                          d d d        y y # 1 sw Y   y xY wr   r*   r,   s     r
   r-   z_locked.<locals>.cache_clearL   r.   r/   r-   )r&   r"   r$   r%   r(   r-   s   ````  r
   _lockedr7   8   s    & &GNr   c                 2      fd}fd}||_         |S )Nc                      |       }|t                 | g|i |S  | g|i |}	 ||   S # t        $ r Y nw xY w | g|i |}	 |||<   |S # t        $ r Y |S w xY wr   )r   r   r   )	r   r   r   r    r   r!   r"   r$   r&   s	         r
   r(   z_unlocked.<locals>.wrapperW   s    $K9$0000&t&v&	Q4K 		4)$)&)	AaD   		s    4 	A A A 	A$#A$c                 <     |       }||j                          y y r   r*   )r   r    r"   s     r
   r-   z_unlocked.<locals>.cache_clearh   s    $K=GGI r   r6   )r&   r"   r$   r(   r-   s   ```  r
   	_unlockedr;   V   s    "
 &GNr   c                     ||t        | ||||      }n0|t        | ||||      }n|t        | |||      }nt        | ||      }||_        ||_        ||n||_        ||_        t        j                  ||       S r   )	r2   r7   r;   r"   	cache_key
cache_lockcache_condition	functoolsupdate_wrapper)r&   r"   r$   r%   r#   r(   s         r
   _wrapperrB   q   s    D,VUCt<		VUCt<		&%d3FE3/GMG!%!1tG"G##GV44r   )NN)__doc__r@   r0   r   r2   r7   r;   rB   r   r   r
   <module>rD      s(      $N<65r   