
    i                       % S r SSKJr  SSKrSSKJr   " S S\5      r\R                  rS\	S'   \R                  r
S\	S	'   \R                  rS\	S
'    " S S\R                  5      r\" \
\S9rS\	S'   \" \\S9rS\	S'   \" \
\
S9rS\	S'   g)z1Provide :class:`OnDup` and related functionality.    )annotationsN)Enumc                  .    \ rS rSrSrSrSrSrS	S jrSr	g)
OnDupAction   z8An action to take to prevent duplication from occurring.RAISEDROP_OLDDROP_NEWc                L    U R                   R                   SU R                   3$ )N.)	__class____name__name)selfs    H/home/admin/cozy_coffee/venv/lib/python3.13/site-packages/bidict/_dup.py__repr__OnDupAction.__repr__   s"    ..))*!DII;77     N)returnstr)
r   
__module____qualname____firstlineno____doc__r   r	   r
   r   __static_attributes__r   r   r   r   r      s    B EHH8r   r   zt.Final[OnDupAction]r   r	   r
   c                  6    \ rS rSr% Sr\rS\S'   \r	S\S'   Sr
g)OnDup#   a  A combination of :class:`~bidict.OnDupAction`\s specifying how to handle various types of duplication.

The :attr:`~OnDup.key` field specifies what action to take when a duplicate key is encountered.

The :attr:`~OnDup.val` field specifies what action to take when a duplicate value is encountered.

In the case of both key and value duplication across two different items,
only :attr:`~OnDup.val` is used.

*See also* :ref:`basic-usage:Values Must Be Unique`
(https://bidict.rtfd.io/basic-usage.html#values-must-be-unique)
r   keyvalr   N)r   r   r   r   r   r	   r    __annotations__r   r!   r   r   r   r   r   r   #   s      CCr   r   )r    r!   zt.Final[OnDup]ON_DUP_DEFAULTON_DUP_RAISEON_DUP_DROP_OLD)r   
__future__r   typingtenumr   r   r   r"   r	   r
   
NamedTupler   r#   r$   r%   r   r   r   <module>r+      s    8 "  8$ 8 *// /!,!5!5
 5!,!5!5
 5ALL , "'8!? ?$E:n :"'H("C Cr   