� L�g� ���ddlmZmZmZmZddlmZddlm Z ddl m Z m Z ddl mZddlmZGd�d e��ZGd �d ��Zd S) �)�Any�Iterator�Optional�Set�)�parse_requirement)�ParserSyntaxError)�Marker�_normalize_extra_values)� SpecifierSet)�canonicalize_namec��eZdZdZdS)�InvalidRequirementzJ An invalid requirement was found, users should refer to PEP 508. N)�__name__� __module__� __qualname__�__doc__���f/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/packaging/requirements.pyrrs���������rrc�r�eZdZdZdeddfd�Zdedeefd�Zdefd�Zdefd �Z de fd �Z d e de fd �ZdS) � Requirementz�Parse a requirement. Parse a given requirement string into its parts, such as name, specifier, URL, and extras. Raises InvalidRequirement on a badly-formed requirement string. �requirement_string�returnNc��� t|��}n/#t$r"}tt|����|�d}~wwxYw|j|_|jpd|_t |jr|jng��|_t|j ��|_ d|_ |j �>tj t��|_ t|j ��|j _dSdS�N)�_parse_requirementr r�str�name�url�set�extrasr � specifier�markerr �__new__r �_markers)�selfr�parsed�es r�__init__zRequirement.__init__!s��� 4�'�(:�;�;�F�F�� � 4� 4� 4�$�S��V�V�,�,�!� 3����� 4���� ��� �"(�*�"4���� #�V�]�$J�F�M�M�� K� K�� �'3�F�4D�'E�'E���(,�� � �=� $� �.��0�0�D�K�#:�6�=�#I�#I�D�K� � � � %� $s�� >�9�>rc#�K�|V�|jr/d�t|j����}d|�d�V�|jrt |j��V�|jrd|j��V�|jrdV�|jrd|j��V�dSdS)N�,�[�]z@ � z; )r"�join�sortedr#rr r$)r'r�formatted_extrass r� _iter_partszRequirement._iter_parts0s������ � � � �;� *�"�x�x��t�{�(;�(;�<�<� �)�&�)�)�)� )� )� )� �>� &��d�n�%�%� %� %� %� �8� �!�t�x�/�/� !� !� !��{� �� � � � �;� %�$�t�{�$�$� $� $� $� $� $� %� %rc�\�d�|�|j����S)N�)r0r3r�r's r�__str__zRequirement.__str__Bs$���w�w�t�'�'�� �2�2�3�3�3rc��d|�d�S)Nz<Requirement('z')>rr6s r�__repr__zRequirement.__repr__Es��)��)�)�)�)rc��t|jjg|�t |j�����R��Sr)�hash� __class__rr3r rr6s r�__hash__zRequirement.__hash__HsG�����'� ��!�!�"3�D�I�">�">�?�?� � � � � r�otherc��t|t��stSt|j��t|j��ko?|j|jko/|j|jko|j|jko|j|jkSr) � isinstancer�NotImplementedr rr"r#r r$)r'r>s r�__eq__zRequirement.__eq__Ps����%��-�-� "�!� !� �d�i� (� (�,=�e�j�,I�,I� I� ,�� �u�|�+� ,���%�/�1� ,���E�I�%� ,�� �u�|�+�  r)rrrrrr*rr3r7r9�intr=r�boolrBrrrrrs��������� J�3� J�4� J� J� J� J�%��%��� �%�%�%�%�$4��4�4�4�4�*�#�*�*�*�*� �#� � � � �  �C�  �D�  �  �  �  �  �  rrN)�typingrrrr�_parserrr� _tokenizerr �markersr r � specifiersr �utilsr � ValueErrorrrrrr�<module>rLs��� 0�/�/�/�/�/�/�/�/�/�/�/�<�<�<�<�<�<�)�)�)�)�)�)�4�4�4�4�4�4�4�4�$�$�$�$�$�$�$�$�$�$�$�$���������� F �F �F �F �F �F �F �F �F �F r
Memory