ok

Mini Shell

Direktori : /opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/
Upload File :
Current File : //opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyo

�
Bu�_c@s�dZddlZddlZddlZddlZddlmZmZmZddl	m
Z
mZdgZd�Z
defd	��YZd
�Ze�Z[e�Zdd�ZdS(sG
Parser for the environment markers micro-language defined in PEP 508.
i����Ni(tpython_implementationturlparsetstring_types(tin_venvtparse_markert	interpretcCs)t|t�s|rtS|ddkS(Nis'"(t
isinstanceRtFalse(to((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyt_is_literalst	EvaluatorcBs�eZdZid�d6d�d6d�d6d�d6d	�d
6d�d6d
�d6d�d6d�d6d�d6d�d6d�d6Zd�ZRS(s;
    This class is used to evaluate marker expessions.
    cCs
||kS(N((txty((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyt<lambda>$ss==cCs
||kS(N((RR((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyR
%ss===cCs||kp||kS(N((RR((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyR
&ss~=cCs
||kS(N((RR((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyR
'ss!=cCs
||kS(N((RR((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyR
(st<cCs||kp||kS(N((RR((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyR
)ss<=cCs
||kS(N((RR((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyR
*st>cCs||kp||kS(N((RR((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyR
+ss>=cCs
|o	|S(N((RR((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyR
,standcCs
|p	|S(N((RR((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyR
-storcCs
||kS(N((RR((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyR
.stincCs
||kS(N((RR((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyR
/ssnot inc	Cst|t�r[|ddkr/|dd!}q||krNtd|��n||}n�|d}||jkr�td|��n|d}|d	}t|d�r�t|d	�r�td
|||f��n|j||�}|j||�}|j|||�}|S(s�
        Evaluate a marker expression returned by the :func:`parse_requirement`
        function in the specified context.
        is'"ii����sunknown variable: %stopsop not implemented: %stlhstrhssinvalid comparison: %s %s %s(RRtSyntaxErrort
operationstNotImplementedErrorR	tevaluate(	tselftexprtcontexttresultRtelhsterhsRR((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyR2s"



 (t__name__t
__module__t__doc__RR(((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyR
s











cCs�d�}ttd�r9|tjj�}tjj}nd}d}i|d6|d6tjd6tj�d6tj�d	6tj	�d
6tj
�d6tj�d6tt��d
6tj
�d6tj
�d d6tjd6}|S(NcSsSd|j|j|jf}|j}|dkrO||dt|j�7}n|S(Ns%s.%s.%stfinali(tmajortminortmicrotreleaseleveltstrtserial(tinfotversiontkind((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pytformat_full_versionNs
	timplementationt0ttimplementation_nametimplementation_versiontos_nametplatform_machinetplatform_python_implementationtplatform_releasetplatform_systemtplatform_versiontplatform_in_venvtpython_full_versionitpython_versiontsys_platform(thasattrtsysR.R+tnametostplatformtmachineRtreleasetsystemR(RR;(R-R2R1R((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pytdefault_contextMs(	







cCs�yt|�\}}Wn)tk
rA}td||f��nX|rq|ddkrqtd||f��ntt�}|r�|j|�ntj||�S(s�
    Interpret a marker and return a result depending on environment.

    :param marker: The marker to interpret.
    :type marker: str
    :param execution_context: The context used for name lookup.
    :type execution_context: mapping
    s)Unable to interpret marker syntax: %s: %sit#s*unexpected trailing data in marker: %s: %s(Rt	ExceptionRtdicttDEFAULT_CONTEXTtupdatet	evaluatorR(tmarkertexecution_contextRtrestteR((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyRqs	(R"R@R>RAtretcompatRRRtutilRRt__all__R	tobjectR
RERIRKtNoneR(((sL/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/distlib/markers.pyt<module>	s		/			

Zerion Mini Shell 1.0