File: //usr/local/CyberCP/lib/python3.10/site-packages/cachetools/__pycache__/func.cpython-310.pyc
o
�h� � @ s� d Z dZddlZddlZddlZzddlmZ W n ey' ddlmZ Y nw ddl m
Z
mZmZm
Z
mZmZ ddl mZ ddl mZ G d d
� d
e�Zdd� Zddd�Zddd�Zddd�Zddd�Zd
ejdfdd�Zd
dejdfdd�ZdS )z?`functools.lru_cache` compatible memoizing function decorators.)�
fifo_cache� lfu_cache� lru_cache� mru_cache�rr_cache� ttl_cache� N)�RLock� )� FIFOCache�LFUCache�LRUCache�MRUCache�RRCache�TTLCache)�cached)�keysc @ s e Zd Zdd� Zedd� �ZdS )�_UnboundTTLCachec C s t �| tj||� d S �N)r �__init__�math�inf)�self�ttl�timer� r �B/usr/local/CyberCP/lib/python3.10/site-packages/cachetools/func.pyr s z_UnboundTTLCache.__init__c C s d S r r )r r r r �maxsize s z_UnboundTTLCache.maxsizeN)�__name__�
__module__�__qualname__r �propertyr r r r r r s r c s � ��fdd�}|S )Nc s: �rt jnt j}t� |t� dd�| �}��fdd�|_|S )NT)�cache�key�lock�infoc s
� �d�S )N�r �typedr r r% r r �<lambda> s
z+_cache.<locals>.decorator.<locals>.<lambda>)r �typedkey�hashkeyr r �cache_parameters)�funcr"