o
    n~b                     @   s   d dl mZmZmZmZmZ dd Zdd Zdd Zdd	 Z	d
d Z
dd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd ZdS )    )	ItemsViewIterableKeysViewSet
ValuesViewc                 C      t |  d S N)r   registerZview_cls r   D/usr/local/lib/python3.10/dist-packages/multidict/_multidict_base.py_abc_itemsview_register      r   c                 C   r   r   )r   r	   r
   r   r   r   _abc_keysview_register   r   r   c                 C   r   r   )r   r	   r
   r   r   r   _abc_valuesview_register   r   r   c                 C   s,  |dkrt |tstS t| t|k o| |kS |dkr:t |ts"tS t| t|kr,dS | D ]	}||vr7 dS q.dS |dkrQt |tsEtS t| t|koP| |kS |dkrZ| |k S |dkrqt |tsetS t| t|kop| |kS |dkrt |ts|tS t| t|k rdS |D ]	}|| vr dS qdS d S )	Nr      FT            )
isinstancer   NotImplementedlen)viewotheropelemr   r   r   _viewbaseset_richcmp   sF   





r   c                 C   sX   t |tstS t | trtt| } t |trtt|}t |ts(tt|}| |@ S r   r   r   r   r   setiterr   r   r   r   r   _viewbaseset_and3      



r"   c                 C   sX   t |tstS t | trtt| } t |trtt|}t |ts(tt|}| |B S r   r   r!   r   r   r   _viewbaseset_or?   r#   r$   c                 C   sX   t |tstS t | trtt| } t |trtt|}t |ts(tt|}| | S r   r   r!   r   r   r   _viewbaseset_subK   r#   r%   c                 C   sX   t |tstS t | trtt| } t |trtt|}t |ts(tt|}| |A S r   r   r!   r   r   r   _viewbaseset_xorW   r#   r&   c                 C      |D ]	}|| v r dS qdS z1Return True if two sets have a null intersection.FTr   )r   r   vr   r   r   _itemsview_isdisjointc   
   r*   c                 C   s>   g }| D ]\}}| d|| qd|}d| jj|S )Nz
{!r}: {!r}, {}({})appendformatjoin	__class____name__)r   lstkr)   bodyr   r   r   _itemsview_reprk   s
   
r7   c                 C   r'   r(   r   )r   r   r5   r   r   r   _keysview_isdisjoints   r+   r8   c                 C   8   g }| D ]
}| d| qd|}d| jj|S Nz{!r}r,   r-   r.   )r   r4   r5   r6   r   r   r   _keysview_repr{   
   
r;   c                 C   r9   r:   r.   )r   r4   r)   r6   r   r   r   _valuesview_repr   r<   r=   c                 C   sB   g }|   D ]\}}|d|| qd|}d| jj|S )Nz
'{}': {!r}r,   z<{}({})>)itemsr/   r0   r1   r2   r3   )mdr4   r5   r)   r6   r   r   r   _mdrepr   s
   
r@   N)collections.abcr   r   r   r   r   r   r   r   r   r"   r$   r%   r&   r*   r7   r8   r;   r=   r@   r   r   r   r   <module>   s    #