Edit File: requirements.cpython-36.pyc
3 U('d�������������������@���sr��d�dl�mZmZmZ�d�dlZd�dlZd�dlmZmZm Z m Z �d�dlmZmZm Z mZmZ�d�dlmZ�d�dlmZ�ddlmZmZ�dd lmZmZmZ�G�d d��de�Zeejej��Z ed�j!��Z"ed �j!��Z#ed�j!��Z$ed�j!��Z%ed�j!��Z&ed�j!��Z'ed�j!��Z(ed�Z)e ee)�e �B�Z*ee ee*���Z+e+d�Z,e+Z-ed�d�Z.e(e.�Z/e-ee&e-���Z0e"e e0��e#�d�Z1eej2ej3ej4B��Z5eej2ej3ej4B��Z6e5e6A�Z7ee7ee&e7���ddd�d�Z8e e$e8�e%�e8B��Z9e9j:dd����e e9�d�Z;e;j:dd����e e���d�Zej:d d����e'Z<e<e�Z=e;e e=��Z>e/e e=��Z?e,e e1��e?e>B��Z@ee@�e�ZAG�d!d"��d"eB�ZCdS�)#�����)�absolute_import�division�print_functionN)�stringStart� stringEnd�originalTextFor�ParseException)� ZeroOrMore�Word�Optional�Regex�Combine)�Literal)�parse����)�MARKER_EXPR�Marker)�LegacySpecifier� Specifier�SpecifierSetc���������������@���s���e�Zd�ZdZdS�)�InvalidRequirementzJ An invalid requirement was found, users should refer to PEP 508. N)�__name__� __module__�__qualname__�__doc__��r���r����"/usr/lib/python3.6/requirements.pyr������s���r����[�]�(�)�,�;�@z-_.�namez[^ ]+�url�extrasF)Z joinStringZadjacent� _raw_specc�������������C���s ���|j�pdS�)N��)r'���)�s�l�tr���r���r����<lambda>6���s����r,���� specifierc�������������C���s���|d�S�)Nr���r���)r)���r*���r+���r���r���r���r,���9���s�����markerc�������������C���s���t�|�|j|j���S�)N)r���Z_original_startZ _original_end)r)���r*���r+���r���r���r���r,���=���s����c���������������@���s(���e�Zd�ZdZdd��Zdd��Zdd��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. c�������������C���s����yt�j|�}W�n@�tk rN�}�z$tdj||j|jd������W�Y�d�d�}~X�nX�|j|�_|jr�tj|j�}|j ot|j �s�|j �r�|j �r�td��|j|�_nd�|�_t|jr�|jj ��ng��|�_t|j�|�_|jr�|jnd�|�_d�S�)Nz+Invalid requirement, parse error at "{0!r}"����zInvalid URL given)�REQUIREMENTZparseStringr���r����format�locr$���r%����urlparse�schemeZnetloc�setr&���ZasListr���r-���r.���)�selfZrequirement_stringZreq�eZ parsed_urlr���r���r����__init__X���s"����* zRequirement.__init__c�������������C���sz���|�j�g}|�jr*|jdjdjt|�j�����|�jr@|jt|�j���|�jrX|jdj|�j���|�j rp|jdj|�j ���dj|�S�)Nz[{0}]r!���z@ {0}z; {0}r(���) r$���r&����appendr2����join�sortedr-����strr%���r.���)r7����partsr���r���r����__str__m���s����zRequirement.__str__c�������������C���s���dj�t|���S�)Nz<Requirement({0!r})>)r2���r=���)r7���r���r���r����__repr__~���s����zRequirement.__repr__N)r���r���r���r���r9���r?���r@���r���r���r���r���r/���K���s���r/���)DZ __future__r���r���r����string�reZsetuptools.extern.pyparsingr���r���r���r���r ���r ���r���r���r ���r����LZ"setuptools.extern.six.moves.urllibr���r4���Zmarkersr���r���Z specifiersr���r���r���� ValueErrorr���Z ascii_lettersZdigitsZALPHANUM�suppressZLBRACKETZRBRACKETZLPARENZRPAREN�COMMAZ SEMICOLON�ATZPUNCTUATIONZIDENTIFIER_ENDZ IDENTIFIER�NAMEZEXTRAZURIZURLZEXTRAS_LISTZEXTRASZ _regex_str�VERBOSE� IGNORECASEZVERSION_PEP440ZVERSION_LEGACYZVERSION_ONEZVERSION_MANYZ _VERSION_SPECZsetParseActionZVERSION_SPECZMARKER_SEPERATORZMARKERZVERSION_AND_MARKERZURL_AND_MARKERZNAMED_REQUIREMENTr1����objectr/���r���r���r���r����<module>���sZ���