
    ?wg                     J    	 d dl mZ  G d de      Zy# e$ r	 d dlmZ Y w xY w)    )MutableMappingc                   H    e Zd Zd
dZd Zd Zd Zd Zd Zd Z	e
d	        Zy)LimitedDictNc                     |j                  dg       }|| _        i | _        |r|j                  d |D               |j	                         D ]
  \  }}|| |<    y )Nkeysc              3   *   K   | ]  \  }}||f  y wN ).0keyvals      O/var/www/horilla/myenv/lib/python3.12/site-packages/utils/dicts/limited_dict.py	<genexpr>z'LimitedDict.__init__.<locals>.<genexpr>   s     :c3*:s   )pop_LimitedDict__keys_LimitedDict__dataupdateitems)selfargskwargsr   r   r   s         r   __init__zLimitedDict.__init__   sW    zz&"%MM:T:: 	HCDI	    c                 r    || j                   vrt        dj                  |            || j                  |<   y )NzIllegal key: {})r   KeyErrorformatr   )r   r   r   s      r   __setitem__zLimitedDict.__setitem__   s3    dkk!,33C899Cr   c                      | j                   |   S r	   r   r   r   s     r   __getitem__zLimitedDict.__getitem__   s    {{3r   c                 6    | j                   j                         S r	   )r   __iter__r   s    r   r#   zLimitedDict.__iter__   s    {{##%%r   c                     | j                   |= y r	   r   r    s     r   __delitem__zLimitedDict.__delitem__    s    KKr   c                 ,    t        | j                        S r	   )lenr   r$   s    r   __len__zLimitedDict.__len__#   s    4;;r   c                 x    dj                  | j                  j                  | j                  | j                        S )Nz
{}({}, {}))r   	__class____name__defined_keysr   r$   s    r   __repr__zLimitedDict.__repr__&   s+    ""4>>#:#:D<M<Mt{{[[r   c                     | j                   S r	   )r   r$   s    r   r-   zLimitedDict.defined_keys)   s    {{r   r	   )r,   
__module____qualname__r   r   r!   r#   r&   r)   r.   propertyr-   r
   r   r   r   r      s:    
 & \  r   r   N)collections.abcr   ImportErrorcollectionsr   r
   r   r   <module>r6      s-   +.
$. $	  +*+s    ""