File: //lib/python3/dist-packages/urllib3/__pycache__/_collections.cpython-310.pyc
o
    ��YhS,  �                   @   s�   d dl mZ z
d dlmZmZ W n ey!   d dlmZmZ Y nw zd dlmZ W n ey:   G dd� d�ZY nw d dlm	Z	 ddl
mZ d d	lZd d
lm
Z
mZ ddgZe� ZG d
d� de�ZG dd� de�Zd	S )�    )�absolute_import)�Mapping�MutableMapping)�RLockc                   @   s   e Zd Zdd� Zdd� ZdS )r   c                 C   �   d S �N� ��selfr   r   �6/usr/lib/python3/dist-packages/urllib3/_collections.py�	__enter__   �   zRLock.__enter__c                 C   r   r   r   )r
   �exc_type�	exc_value�	tracebackr   r   r   �__exit__   r
   zRLock.__exit__N)�__name__�
__module__�__qualname__r   r   r   r   r   r   r      s    r   )�OrderedDict�   )�
InvalidHeaderN)�iterkeys�
itervalues�RecentlyUsedContainer�HTTPHeaderDictc                   @   sV   e Zd ZdZeZddd�Zdd� Zdd	� Zd
d� Z	dd
� Z
dd� Zdd� Zdd� Z
dS )r   a�  
    Provides a thread-safe dict-like container which maintains up to
    ``maxsize`` keys while throwing away the least-recently-used keys beyond
    ``maxsize``.
    :param maxsize:
        Maximum number of recent elements to retain.
    :param dispose_func:
        Every time an item is evicted from the container,
        ``dispose_func(value)`` is called.  Callback which will get called
    �
   Nc                 C   s"