� ��gq ��,�dZdgZGd�de��ZdS)zMisc dict tools.�hashdictc�T�eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z d�Z d �Z d �Z d �Z d �Zd S)ra< hashable dict implementation, suitable for use as a key into other dicts. >>> h1 = hashdict({"apples": 1, "bananas":2}) >>> h2 = hashdict({"bananas": 3, "mangoes": 5}) >>> h1+h2 hashdict(apples=1, bananas=3, mangoes=5) >>> d1 = {} >>> d1[h1] = "salad" >>> d1[h1] 'salad' >>> d1[h2] Traceback (most recent call last): ... KeyError: hashdict(bananas=3, mangoes=5) based on answers from http://stackoverflow.com/questions/1151658/python-hashable-dicts c�^�tt|�������S�N)�tuple�sorted�items��selfs �h/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/fontTools/misc/dictTools.py�__keyzhashdict.__keys ���V�D�J�J�L�L�)�)�*�*�*�c��d�|jjd�d�|���D������S)Nz{0}({1})z, c3�K�|]@}d�t|d��t|d����V��AdS)z{0}={1}��N)�format�str�repr)�.0�is r � <genexpr>z$hashdict.__repr__.<locals>.<genexpr>$sF����T�T�!�i�&�&�s�1�Q�4�y�y�$�q��t�*�*�=�=�T�T�T�T�T�Tr )r� __class__�__name__�join�_hashdict__keyr s r �__repr__zhashdict.__repr__!sH��� � � �N� #� �I�I�T�T�t�z�z�|�|�T�T�T� T� T� � � r c�D�t|�����Sr)�hashrr s r �__hash__zhashdict.__hash__'s���D�J�J�L�L�!�!�!r c�Z�td�|jj������Nz${0} does not support item assignment�� TypeErrorrrr)r �key�values r � __setitem__zhashdict.__setitem__*�*��� 2� 9� 9�$�.�:Q� R� R� � � r c�Z�td�|jj�����r!r")r r$s r � __delitem__zhashdict.__delitem__/r'r c�Z�td�|jj�����r!r"r s r �clearzhashdict.clear4r'r c�Z�td�|jj�����r!r"�r �args�kwargss r �popz hashdict.pop9r'r c�Z�td�|jj�����r!r"r-s r �popitemzhashdict.popitem>r'r c�Z�td�|jj�����r!r"r-s r � setdefaultzhashdict.setdefaultCr'r c�Z�td�|jj�����r!r"r-s r �updatezhashdict.updateHr'r c�Z�t|��}t�||��|Sr)r�dictr6)r �right�results r �__add__zhashdict.__add__Ps&���$���� � � �F�E�"�"�"�� r N)r� __module__� __qualname__�__doc__rrrr&r)r+r0r2r4r6r;�r r rrs���������,+�+�+� � � � "�"�"� � � �  � � �  � � �  � � �  � � �  � � �  � � �����r N)r>�__all__r8rr?r r �<module>rAsP���� �,��L�L�L�L�L�t�L�L�L�L�Lr
Memory