
    $TXgS                    ^    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	 ddlm
Z
 d Zd	dZy)
z,Replacements for parts of the toolz library.    )annotationsN)TYPE_CHECKING)	GeneratorSequence)Anyc                    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      sK    
 $$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        G$ 	$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   collections.abcr   r   r   r   r     r   r   <module>r'      s)    3 "    3r   