HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/packaging/__pycache__/markers.cpython-310.pyc
o

N�&`!�	@s�UddlZddlZddlZddlZddlmZmZmZmZm	Z	m
Z
mZddlm
Z
mZmZmZmZmZmZmZmZddlmZmZgd�ZeeegefZGdd�de�ZGd	d
�d
e�Z Gdd�de�Z!Gd
d�d�Z"Gdd�de"�Z#Gdd�de"�Z$Gdd�de"�Z%ed�ed�Bed�Bed�Bed�Bed�Bed�Bed�Bed�Bed�Bed�Bed �Bed!�Bed"�Bed#�Bed$�Bed%�Bed&�BZ&ddddddd'�Z'e&�(d(d)��ed*�ed+�Bed,�Bed-�Bed.�Bed/�Bed0�Bed1�BZ)e)ed2�Bed3�BZ*e*�(d4d)��ed5�ed6�BZ+e+�(d7d)��ed8�ed9�BZ,e&e+BZ-ee-e*e-�Z.e.�(d:d)��ed;��/�Z0ed<��/�Z1e
�Z2e.ee0e2e1�BZ3e2e3ee,e2�>ee2eZ4d=eeeefd>eefd?d@�Z5	AdadBeeee
e"dCfefdDe	ed>efdEdF�Z6dGd)�dHd)�ej7ej8ej9ej:ej;ej<dI�Z=eeefe>dJ<dKedLe%dMed>efdNdO�Z?GdPdQ�dQ�Z@e@�ZAdReeefdSed>efdTdU�ZBdVeedReeefd>efdWdX�ZCdYdZd>efd[d\�ZDd>eeeffd]d^�ZEGd_d`�d`�ZFdS)b�N)�Any�Callable�Dict�List�Optional�Tuple�Union)	�Forward�Group�Literal�ParseException�ParseResults�QuotedString�
ZeroOrMore�	stringEnd�stringStart�)�InvalidSpecifier�	Specifier)�
InvalidMarker�UndefinedComparison�UndefinedEnvironmentName�Marker�default_environmentc@�eZdZdZdS)rzE
    An invalid marker was found, users should refer to PEP 508.
    N��__name__�
__module__�__qualname__�__doc__�r r �3/usr/lib/python3/dist-packages/packaging/markers.pyr$�rc@r)rzP
    An invalid operation was attempted on a value that doesn't support it.
    Nrr r r r!r*r"rc@r)rz\
    A name was attempted to be used that does not exist inside of the
    environment.
    Nrr r r r!r0r"rc@sHeZdZdeddfdd�Zdefdd�Zdefdd	�Zdefd
d�ZdS)�Node�value�returnNcCs
||_dS�N)r$)�selfr$r r r!�__init__8�
z
Node.__init__cC�
t|j�Sr&)�strr$�r'r r r!�__str__;r)zNode.__str__cCsd|jj�d|�d�S)N�<z('�')>)�	__class__rr,r r r!�__repr__>sz
Node.__repr__cCst�r&)�NotImplementedErrorr,r r r!�	serializeAszNode.serialize)	rrrrr(r+r-r1r3r r r r!r#7s
r#c@�eZdZdefdd�ZdS)�Variabler%cC�t|�Sr&�r+r,r r r!r3F�zVariable.serializeN�rrrr+r3r r r r!r5E�r5c@r4)�Valuer%cCsd|�d�S)N�"r r,r r r!r3K�zValue.serializeNr9r r r r!r;Jr:r;c@r4)�Opr%cCr6r&r7r,r r r!r3Pr8zOp.serializeNr9r r r r!r>Or:r>�implementation_version�platform_python_implementation�implementation_name�python_full_version�platform_release�platform_version�platform_machine�platform_system�python_version�sys_platform�os_name�os.name�sys.platform�platform.version�platform.machine�platform.python_implementation�python_implementation�extra)rJrKrLrMrNrOcCstt�|d|d��S�Nr)r5�ALIASES�get��s�l�tr r r!�<lambda>psrXz===�==�>=�<=�!=z~=�>r.�not in�incC�t|d�SrQ)r>rTr r r!rXw��'r<cCr`rQ)r;rTr r r!rXzra�and�orcCr`rQ)�tuplerTr r r!rX�ra�(�)�resultsr%cCst|t�rdd�|D�S|S)NcSsg|]}t|��qSr )�_coerce_parse_result)�.0�ir r r!�
<listcomp>��z(_coerce_parse_result.<locals>.<listcomp>)�
isinstancer
)rhr r r!ri�s
riT�marker.�firstcCs�t|tttf�s
J�t|t�r$t|�dkr$t|dttf�r$t|d�St|t�r@dd�|D�}|r7d�|�Sdd�|�dSt|t�rOd�dd	�|D��S|S)
Nrrcss�|]	}t|dd�VqdS)F)rpN)�_format_marker�rj�mr r r!�	<genexpr>�s�z!_format_marker.<locals>.<genexpr>� rfrgcSsg|]}|���qSr )r3rrr r r!rl�rmz"_format_marker.<locals>.<listcomp>)rn�listrer+�lenrq�join)rorp�innerr r r!rq�s��


rqcCs||vSr&r ��lhs�rhsr r r!rX��cCs||vSr&r rzr r r!rX�r})r_r^r.r[rYr\rZr]�
_operatorsr{�opr|cCstz
td�|��|g��}Wn	tyYnw|�|�St�|���}|dur5td|�d|�d|�d���|||�S)N�z
Undefined z on z and �.)rrxr3r�containsr~rSr)r{rr|�spec�operr r r!�_eval_op�s�

r�c@seZdZdS)�	UndefinedN)rrrr r r r!r��sr��environment�namecCs(|�|t�}t|t�rt|�d���|S)Nz* does not exist in evaluation environment.)rS�
_undefinedrnr�r)r�r�r$r r r!�_get_env�s
�r��markersc	Cs�gg}|D]Y}t|tttf�sJ�t|t�r!|d�t||��qt|t�rO|\}}}t|t�r:t||j�}|j}n	|j}t||j�}|d�t	|||��q|dvsUJ�|dkr^|�g�qt
dd�|D��S)N���)rcrdrdcss�|]}t|�VqdSr&)�all)rj�itemr r r!rt�s�z$_evaluate_markers.<locals>.<genexpr>)rnrvrer+�append�_evaluate_markersr5r�r$r��any)	r�r��groupsror{rr|�	lhs_value�	rhs_valuer r r!r��s$




�r��infozsys._version_infocCs2d�|�}|j}|dkr||dt|j�7}|S)Nz{0.major}.{0.minor}.{0.micro}�finalr)�format�releaselevelr+�serial)r��version�kindr r r!�format_full_version�s

r�cCs^ttjj�}tjj}||tjt��t��t�	�t��t�
�t��d�t�
�dd��tjd�S)Nr��)rAr?rIrErCrFrDrBr@rGrH)r��sys�implementationr�r��os�platform�machine�release�systemrGrOrx�python_version_tuple)�iverrAr r r!rs�rc@sZeZdZdeddfdd�Zdefdd�Zdefdd	�Zd
d
eeeefde	fdd�Z
dS)rror%NcCsTztt�|��|_WdSty)}ztd|�d||j|jd�����d}~ww)NzInvalid marker: z, parse error at �)ri�MARKER�parseString�_markersrr�loc)r'ro�er r r!r(s����zMarker.__init__cCr*r&)rqr�r,r r r!r-r)zMarker.__str__cCsd|�d�S)Nz	<Marker('r/r r,r r r!r1 r=zMarker.__repr__r�cCs$t�}|dur|�|�t|j|�S)a$Evaluate a marker.

        Return the boolean from evaluating the given marker against the
        environment. environment is an optional argument to override all or
        part of the determined environment.

        The environment is determined from the current Python process.
        N)r�updater�r�)r'r��current_environmentr r r!�evaluate#s	
zMarker.evaluater&)rrrr+r(r-r1rr�boolr�r r r r!rs
	$r)T)G�operatorr�r�r��typingrrrrrrr�	pyparsingr	r
r�Lrr
rrrr�
specifiersrr�__all__r+r��Operator�
ValueErrorrrrr#r5r;r>�VARIABLErR�setParseAction�VERSION_CMP�	MARKER_OP�MARKER_VALUE�BOOLOP�
MARKER_VAR�MARKER_ITEM�suppress�LPAREN�RPAREN�MARKER_EXPR�MARKER_ATOMr�rirq�lt�le�eq�ne�ge�gtr~�__annotations__r�r�r�r�r�r�rrr r r r!�<module>s�
$,��������	�
���
�������>�"���
��"