
    wBf4                    V    d Z ddlmZ ddlZddlZddlmZ er
ddlmZmZm	Z	 d Z
ddZy)	z,Replacements for parts of the toolz library.    )annotationsN)TYPE_CHECKING)Any	GeneratorSequencec                    t        j                  t              }t        j                  ||       D ]  \  }}||   j                  |        t        |      S )zpA `toolz`-style groupby implementation.

    Returns a dictionary of { key: [group] } instead of iterators.
    )collectionsdefaultdictlist	itertoolsgroupbyextenddict)keyfuncsequenceresultkeygroups        6lib/python3.12/site-packages/conda/common/iterators.pygroupby_to_dictr      sP    
 $$T*F''': "
Us5!"<    c              #  L   K   t               fd| D        E d{    y7 w)zlA `toolz` inspired `unique` implementation.

    Returns a generator of unique elements in the sequence
    c              3  P   K   | ]  }|vrj                  |      xs |  y w)N)add).0elementseens     r   	<genexpr>zunique.<locals>.<genexpr>    s4       $ 	$W$s   #&N)set)r   r   s    @r   uniquer       s)     
 UD    s   $"$)r   zSequence[Any]returnzGenerator[Any, None, None])__doc__
__future__r   r	   r   typingr   r   r   r   r   r     r   r   <module>r&      s)    3 "    //r   