관리-도구
편집 파일: requirements.cpython-311.pyc
� �ReD � � � d dl Z d dlZd dlZd dlmZmZmZ d dl m Z mZmZm Z mZmZmZmZmZmZ ddlmZmZ ddlmZmZmZ G d� de� � Z eej ej z � � Z ed � � � � � Z! ed � � � � � Z" ed� � � � � Z# ed� � � � � Z$ ed � � � � � Z% ed� � � � � Z& ed� � � � � Z' ed� � Z(e ee(� � ez z Z) e e ee)� � z � � Z* e*d� � Z+e*Z, ed� � d� � Z-e'e-z Z.e, ee%e,z � � z Z/ e! ee/� � z e"z d� � Z0 eej1 e j2 e j3 z � � Z4 eej1 e j2 e j3 z � � Z5e4e5z Z6 e e6 ee%e6z � � z d d�� � d� � Z7 ee#e7z e$z e7z � � Z8e8�9 d� � � ee8� � d� � Z:e:�9 d� � � e e� � � � d� � Z ej9 d� � � e&Z;e;ez Z<e: ee<� � z Z=e. ee<� � z Z>e+ ee0� � z e>e=z z Z?ee?z ez Z@e@�A d� � G d� d� � ZBdS ) � N)�List�Optional�Set) �Combine�Literalr �ParseException�Regex�Word� ZeroOrMore�originalTextFor� stringEnd�stringStart� )�MARKER_EXPR�Marker)�LegacySpecifier� Specifier�SpecifierSetc � � e Zd ZdZdS )�InvalidRequirementzJ An invalid requirement was found, users should refer to PEP 508. N)�__name__� __module__�__qualname__�__doc__� � ��/builddir/build/BUILDROOT/alt-python311-pip-21.3.1-3.el8.x86_64/opt/alt/python311/lib/python3.11/site-packages/pip/_vendor/packaging/requirements.pyr r s � � � � � �� � � r r �[�]�(�)�,�;�@z-_.�namez[^ ]+�url�extrasF)� joinString�adjacent� _raw_specc � � |j pdS )N� )r* ��s�l�ts r �<lambda>r1 @ s � �Q�[�->�B� r � specifierc � � |d S )Nr r r- s r r1 r1 C s � �A�a�D� r �markerc �D � t | |j |j � � � S )N)r �_original_start� _original_endr- s r r1 r1 G s � �F�1�Q�.���@�A�B�B� r zx[]c �: � e Zd ZdZdeddfd�Zdefd�Zdefd�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 � |� � }nA# t $ r4}t d||j |j dz � �d|j � �� � �d }~ww xY w|j | _ |j r�t j � |j � � }|j dk r8t j � |� � |j k rt d� � �n3|j r|j r|j s|j st d|j � �� � �|j | _ nd | _ t |j r|j � � � ng � � | _ t# |j � � | _ |j r|j nd | _ d S )NzParse error at "� z": �filezInvalid URL givenz Invalid URL: )�REQUIREMENT�parseStringr r �loc�msgr% r&