
    ^f                        d Z ddlmZ ddlmZ dZ	 ddlmZ n# e	$ r	 ddlm
Z Y nw xY w e            Z G d de          ZdS )	zObject Utilities.    )annotations)RLock)cached_property)threaded_cached_propertyc                  H     e Zd ZdZd	 fd	Zd
 fd	Zd Zd Zd Zd Z	 xZ
S )r   z"Implementation of Cached property.Nc                    t                                          |           || _        || _        t	          | d          s| j        j        | _        t	          | d          st                      | _	        d S d S )Nattrnamelock)
super__init___cached_property__set_cached_property__delhasattrfunc__name__r	   r   r
   )selffgetfsetfdel	__class__s       E/var/www/html/env/lib/python3.11/site-packages/kombu/utils/objects.pyr   zcached_property.__init__   st    

tZ(( 	/ I.DMtV$$ 	  DIII		  	     c                    | j         5  t                                          ||          cd d d            S # 1 swxY w Y   d S N)r
   r   __get__)r   instanceownerr   s      r   r   zcached_property.__get__$   s     Y 	4 	477??8U33	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4s   "8<<c                    || S | j         5  | j        |                     ||          }|j        }||| j        <   d d d            d S # 1 swxY w Y   d S r   )r
   r   __dict__r	   )r   r   valuecaches       r   __set__zcached_property.__set__*   s    KY 	) 	)z%

8U33%E#(E$- 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	)s   /AAAc                    || S | j         5  |j                            | j        t                    }| j        r|t          ur|                     ||           d d d            d S # 1 swxY w Y   d S r   )r
   r   popr	   
_NOT_FOUNDr   )r   r   r    s      r   
__delete__zcached_property.__delete__5   s    KY 	, 	,%))$-DDEz ,e:55

8U+++		, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	,s   AA%%A),A)c                D    |                      | j        || j                  S r   )r   r   r   )r   r   s     r   setterzcached_property.setter?   s    ~~ditz:::r   c                D    |                      | j        | j        |          S r   )r   r   r   )r   r   s     r   deleterzcached_property.deleterB   s    ~~diT:::r   )NNNr   )r   
__module____qualname____doc__r   r   r"   r&   r(   r*   __classcell__)r   s   @r   r   r      s        ,,           4 4 4 4 4 4	) 	) 	), , ,; ; ;; ; ; ; ; ; ;r   r   N)r-   
__future__r   	threadingr   __all__	functoolsr   _cached_propertyImportErrorr   objectr%    r   r   <module>r7      s      " " " " " "      
M======= M M MLLLLLLLLM VXX
1; 1; 1; 1; 1;& 1; 1; 1; 1; 1;s    ''