CoolFace
Apppublic

Aluode/PerceptionLabPortable

sourceHugging Faceupdated 9mo agoView on Hugging Face
0likes
_parser.cpython-310.pyc129 linesDownload Raw Back to __pycache__
1o

2��Yi�'�@sxdZddlmZddlZddlmZmZmZmZddl	m3Z4mZGdd�d�ZGd	d5�d6e�Z
Gdd�de�ZGd
d�de�Zee
efZeeeefZeeedfZeedeefZGdd�de�ZdCdd�ZdDdd�ZdEdd�ZdFd"d#�ZdGd%d&�ZdGd'd(�ZdHd)d*�ZdHd+d,�ZdId-d.�ZdJd/d0�ZdJd1d2�Z dKd3d4�Z!dLd6d7�Z"dMd9d:�Z#dNd<d=�Z$dOd?d@�Z%dPdAdB�Z&dS)Qz�Handwritten parser of dependency specifiers.7 8The docstring for each __parse_* function contains EBNF-inspired grammar representing9the implementation.10�)�annotationsN)�11NamedTuple�Sequence�Tuple�Union�)�
DEFAULT_RULES�	Tokenizerc@s4eZdZddd�Zddd�Zdd	d12�Zddd�Zd
S)�Node�value�str�return�NonecCs13||_dS�N�r)�selfr�r�{E:\DocsHouse\542 percep lab latest\PerceptionLab\PerceptionLab_Portable\python_embed\Lib\site-packages\packaging/_parser.py�__init__s14z
Node.__init__cCs|jSrr�rrrr�__str__szNode.__str__cCsd|jj�d|�d�S)N�<z('z')>)�	__class__�__name__rrrr�__repr__sz
Node.__repr__cCst�r)�NotImplementedErrorrrrr�	serializeszNode.serializeN)rrr
r�r
r)r�15__module__�__qualname__rrrrrrrrr16s17181920r21c@�eZdZddd�ZdS)�Variabler
rcC�t|�Sr�rrrrrr�zVariable.serializeNr�rrrrrrrrr!�r!c@r )�Valuer
rcCsd|�d�S)N�"rrrrrr#szValue.serializeNrr%rrrrr'"r&r'c@r )�Opr
rcCr"rr#rrrrr(r$zOp.serializeNrr%rrrrr)'r&r)�22MarkerAtom�23MarkerListc@s6eZdZUded<ded<ded<ded<ded<d	S)24�ParsedRequirementr�name�url�	list[str]�extras�	specifierzMarkerList | None�markerN)rrr�__annotations__rrrrr,2s25r,�sourcerr
cC�tt|td��S�N)�rules)�_parse_requirementr	r�r4rrr�parse_requirement=�r:�	tokenizerr	cCsf|�d�|jddd�}|j}|�d�t|�}|�d�t|�\}}}|jddd�t|||||�S)zI26    requirement = WS? IDENTIFIER WS? extras WS? requirement_details27    �WS�28IDENTIFIERz1package name at the start of dependency specifier��expected�ENDzend of dependency specifier)�consume�expect�text�
_parse_extras�_parse_requirement_detailsr,)r<�29name_tokenr-r0r.r1r2rrrr8As30�3132r8�"tuple[str, str, MarkerList | None]cCs�d}d}d}|�d�rF|��|�d�|j}|jddd�j}|jdd	d33�r+|||fS|jddd�|jdd	d34�r>|||fSt||dd
�}n#|j}t|�}|�d�|jdd	d35�r^|||fSt|||redndd
�}|||fS)z~36    requirement_details = AT URL (WS requirement_marker?)?37                        | specifier WS? (requirement_marker)?38    �N�ATr=�URLzURL after @r?rAT��peekzwhitespace after URLzURL and whitespace)�39span_start�after�version specifierz#name and no valid version specifier)�check�readrB�positionrCrD�_parse_requirement_marker�_parse_specifier)r<r1r.r2�	url_start�specifier_startrrrrFVs:40414243�4445��46 47rFrN�intrOcCs>|�d�s|jd|�d�|d�|��t|�}|�d�|S)z348    requirement_marker = SEMICOLON marker WS?49    �	SEMICOLONz!Expected end or semicolon (after �))rNr=)rQ�raise_syntax_errorrR�
_parse_markerrB)r<rNrOr2rrrrT�s5051�52rTr/cCsd|jddd�s	gS|jdddd��|�d�t|�}|�d�Wd�|S1s+wY|S)	zG53    extras = (LEFT_BRACKET wsp* extras_list? wsp* RIGHT_BRACKET)?54    �LEFT_BRACKETTrL�
RIGHT_BRACKETr0��aroundr=N)rQ�enclosing_tokensrB�_parse_extras_list)r<r0rrrrE�s�5556�	�	rEcCs�g}|�d�s	|S|�|��j�	|�d�|jddd�r$|�d�n|�d�s,	|S|��|�d�|jddd�}|�|j�q)	z>57    extras_list = identifier (wsp* ',' wsp* identifier)*58    r>Tr=rLz"Expected comma between extra names�COMMAzextra name after commar?)rQ�appendrRrDrBr[rC)r<r0�extra_tokenrrrrb�s 596061�62�rbcCsR|jdddd��|�d�t|�}|�d�Wd�|S1s"wY|S)zr63    specifier = LEFT_PARENTHESIS WS? version_many WS? RIGHT_PARENTHESIS64              | WS? version_many WS?65    �LEFT_PARENTHESIS�RIGHT_PARENTHESISrPr_r=N)rarB�_parse_version_many)r<�parsed_specifiersrrrrU�s�6667�	�	rUcCs�d}|�d�rQ|j}||��j7}|jddd�r#|jd||jdd�|jd	dd�r3|jd68||jd�|�d�|�d�s@	|S||��j7}|�d�|�d�s|S)
z@69    version_many = (SPECIFIER (WS? COMMA WS? SPECIFIER)*)?70    rI�	SPECIFIER�VERSION_PREFIX_TRAILTrLz6.* suffix can only be used with `==` or `!=` operatorsr)rN�span_end�VERSION_LOCAL_LABEL_TRAILz@Local version label can only be used with `==` or `!=` operatorsr=rc)rQrSrRrDr[rB)r<rirNrrrrh�s071��7273�7475�rhcCr5r6)�_parse_full_markerr	rr9rrr�parse_marker�r;rocCst|�}|jddd�|S)NrAzend of marker expressionr?)r\rC)r<�retvalrrrrnsrncCsBt|�g}|�d�r|��}t|�}|�|j|f�|�d�s76|S)z477    marker = marker_atom (BOOLOP marker_atom)+78    �BOOLOP)�_parse_marker_atomrQrR�extendrD)r<�79expression�token�80expr_rightrrrr\s818283�r\cCs||�d�|jddd�r3|jdddd��|�d�t|�}|�d�Wd�n1s-wYnt|�}|�d�|S)	zw84    marker_atom = WS? LEFT_PARENTHESIS WS? marker WS? RIGHT_PARENTHESIS WS?85                | WS? marker_item WS?86    r=rfTrLrgzmarker expressionr_N)rBrQrar\�_parse_marker_item)r<r2rrrrrs87�88��	89rr�90MarkerItemcCsJ|�d�t|�}|�d�t|�}|�d�t|�}|�d�|||fS)zG91    marker_item = WS? marker_var WS? marker_op WS? marker_var WS?92    r=)rB�_parse_marker_var�_parse_marker_op)r<�marker_var_left�	marker_op�marker_var_rightrrrrw(s9394959697rw�	MarkerVarcCsH|�d�rt|��j�dd��S|�d�rt|��j�S|jdd�dS)z/98    marker_var = VARIABLE | QUOTED_STRING99    �VARIABLE�.�_�
QUOTED_STRINGz+Expected a marker variable or quoted string)�messageN)rQ�process_env_varrRrD�replace�process_python_strr[�r<rrrry6s100101102�ry�env_varcCs|dvrtd�St|�S)N)�platform_python_implementation�python_implementationr�)r!)r�rrrr�Dsr��103python_strcCst�|�}tt|��Sr)�ast�literal_evalr'r)r�rrrrr�Ks104r�cCsr|�d�r
|��td�S|�d�r(|��|jddd�|jddd�td�S|�d	�r4t|��j�S|�d105�S)z&106    marker_op = IN | NOT IN | OP107    �IN�in�NOTr=zwhitespace after 'not'r?z'in' after 'not'znot in�OPzJExpected marker operator, one of <=, <, !=, ==, >=, >, ~=, ===, in, not in)rQrRr)rCrDr[r�rrrrzPs108109110�rz)r4rr
r,)r<r	r
r,)r<r	r
rH)r<r	rNrXrOrr
r+)r<r	r
r/)r<r	r
r)r4rr
r+)r<r	r
r+)r<r	r
r*)r<r	r
rx)r<r	r
r~)r�rr
r!)r�rr
r')r<r	r
r))'�__doc__�111__future__rr��typingrrrr�112_tokenizerrr	r113r!r'r)r~rxr*rr+r,r:r8rFrTrErbrUrhrornr\rrrwryr�r�rzrrrr�<module>s>1141151161173118119120121122 123124125126127128129
Aluode/PerceptionLabPortable · CoolFace