ó
Ð²Ebc           @   sF   d  Z  d d l m Z d e f d „  ƒ  YZ d e f d „  ƒ  YZ d S(   sb   
The cache object API for implementing caches. The default is a thread
safe in-memory dictionary.
iÿÿÿÿ(   t   Lockt	   BaseCachec           B   s,   e  Z d  „  Z d „  Z d „  Z d „  Z RS(   c         C   s   t  ƒ  ‚ d  S(   N(   t   NotImplementedError(   t   selft   key(    (    s;   /tmp/pip-build-UPPWic/pip/pip/_vendor/cachecontrol/cache.pyt   get
   s    c         C   s   t  ƒ  ‚ d  S(   N(   R   (   R   R   t   value(    (    s;   /tmp/pip-build-UPPWic/pip/pip/_vendor/cachecontrol/cache.pyt   set   s    c         C   s   t  ƒ  ‚ d  S(   N(   R   (   R   R   (    (    s;   /tmp/pip-build-UPPWic/pip/pip/_vendor/cachecontrol/cache.pyt   delete   s    c         C   s   d  S(   N(    (   R   (    (    s;   /tmp/pip-build-UPPWic/pip/pip/_vendor/cachecontrol/cache.pyt   close   s    (   t   __name__t
   __module__R   R   R   R	   (    (    (    s;   /tmp/pip-build-UPPWic/pip/pip/_vendor/cachecontrol/cache.pyR      s   			t	   DictCachec           B   s/   e  Z d d  „ Z d „  Z d „  Z d „  Z RS(   c         C   s   t  ƒ  |  _ | p i  |  _ d  S(   N(   R    t   lockt   data(   R   t	   init_dict(    (    s;   /tmp/pip-build-UPPWic/pip/pip/_vendor/cachecontrol/cache.pyt   __init__   s    c         C   s   |  j  j | d  ƒ S(   N(   R   R   t   None(   R   R   (    (    s;   /tmp/pip-build-UPPWic/pip/pip/_vendor/cachecontrol/cache.pyR      s    c         C   s+   |  j   |  j j i | | 6ƒ Wd  QXd  S(   N(   R   R   t   update(   R   R   R   (    (    s;   /tmp/pip-build-UPPWic/pip/pip/_vendor/cachecontrol/cache.pyR       s    
c         C   s6   |  j  ' | |  j k r, |  j j | ƒ n  Wd  QXd  S(   N(   R   R   t   pop(   R   R   (    (    s;   /tmp/pip-build-UPPWic/pip/pip/_vendor/cachecontrol/cache.pyR   $   s    
N(   R
   R   R   R   R   R   R   (    (    (    s;   /tmp/pip-build-UPPWic/pip/pip/_vendor/cachecontrol/cache.pyR      s   		N(   t   __doc__t	   threadingR    t   objectR   R   (    (    (    s;   /tmp/pip-build-UPPWic/pip/pip/_vendor/cachecontrol/cache.pyt   <module>   s   