o
    €Ï#  ã                   @   sf   d dl mZ d dlmZ zd dlmZ W n ey#   d dlmZ Y nw G dd„ deƒZe 	e
¡ dS )é    )Úabsolute_import)Úabstractmethod)ÚMutableMappingc                   @   sN   e Zd ZdZedd„ ƒZedd„ ƒZddd„Zeƒ Z	e	fd	d
„Z
ddd„ZdS )ÚDefaultMapping© c                 C   s   dS )NFr   ©ÚselfÚkeyr   r   ú7/tmp/google-cloud-sdk/lib/third_party/cachetools/abc.pyÚ__contains__   s   zDefaultMapping.__contains__c                 C   s"   t | jdƒr| j | |¡S t|ƒ‚)NÚ__missing__)ÚhasattrÚ	__class__r   ÚKeyErrorr   r   r   r
   Ú__getitem__   s   zDefaultMapping.__getitem__Nc                 C   s   || v r| | S |S ©Nr   )r   r	   Údefaultr   r   r
   Úget   s   zDefaultMapping.getc                 C   s4   || v r| | }| |= |S || j u rt|ƒ‚|}|S r   )Ú_DefaultMapping__markerr   ©r   r	   r   Úvaluer   r   r
   Úpop"   s   
üzDefaultMapping.popc                 C   s$   || v r
| | }|S | | |< }|S r   r   r   r   r   r
   Ú
setdefault,   s
   ÿzDefaultMapping.setdefaultr   )Ú__name__Ú
__module__Ú__qualname__Ú	__slots__r   r   r   r   Úobjectr   r   r   r   r   r   r
   r      s    



r   N)Ú
__future__r   Úabcr   Úcollections.abcr   ÚImportErrorÚcollectionsr   ÚregisterÚdictr   r   r   r
   Ú<module>   s    ÿ)