o
    AD©i,  ã                   @   s   e ƒ ZG d d„ deƒZdS )c                   @   s,   e Zd ZdZd	dd„Zdd„ Zd
dd„ZdS )Úcached_propertyza

    Import from:
        https://github.com/pallets/werkzeug/blob/master/werkzeug/utils.py
    Nc                 C   s*   |p|j | _ |j| _|p|j| _|| _d S ©N)Ú__name__Ú
__module__Ú__doc__Ú__func__)ÚselfÚfuncÚnameÚdoc© r   úG/var/www/Datamplify/venv/lib/python3.10/site-packages/wirerope/_util.pyÚ__init__   s   
zcached_property.__init__c                 C   s   ||j | j< d S r   )Ú__dict__r   )r   ÚobjÚvaluer   r   r   Ú__set__   s   zcached_property.__set__c                 C   s>   |d u r| S |j  | jt¡}|tu r|  |¡}||j | j< |S r   )r   Úgetr   Ú_missingr   )r   r   Útyper   r   r   r   Ú__get__   s   
zcached_property.__get__)NNr   )r   r   Ú__qualname__r   r   r   r   r   r   r   r   r      s
    
r   N)Úobjectr   Úpropertyr   r   r   r   r   Ú<module>   s   