U
    å7ÚcÉ  ã                   @   sh   d dl Z d dlZd dlmZ d dlmZ d dlmZ erLd dl	m
Z
mZmZ dd„ Zdd	„ Zd
d„ ZdS )é    N)Úparse)Úrequest)ÚMYPY_CHECK_RUNNING)ÚOptionalÚTextÚUnionc                 C   s    d| krd S |   dd¡d  ¡ S )Nú:é   r   )ÚsplitÚlower)Úurl© r   ú</tmp/pip-unpacked-wheel-xvghy_sv/pip/_internal/utils/urls.pyÚget_url_scheme   s    r   c                 C   s*   t j t j | ¡¡} t dt | ¡¡}|S )zh
    Convert a path to a file: URL.  The path will be made absolute and have
    quoted path parts.
    úfile:)ÚosÚpathÚnormpathÚabspathÚurllib_parseÚurljoinÚurllib_requestÚpathname2url)r   r   r   r   r   Úpath_to_url   s    r   c                 C   sn   |   d¡std|  ƒ‚t | ¡\}}}}}|r6|dkr<d}n tjdkrPd| }ntd|  ƒ‚t || ¡}|S )z(
    Convert a file: URL to a path.
    r   z4You can only turn file: urls into filenames (not %r)Ú	localhostÚ Úwin32z\\z:non-local file URIs are not supported on this platform: %r)	Ú
startswithÚAssertionErrorr   ÚurlsplitÚsysÚplatformÚ
ValueErrorr   Úurl2pathname)r   Ú_Únetlocr   r   r   r   Úurl_to_path   s    ÿ

ÿÿr&   )r   r    Zpip._vendor.six.moves.urllibr   r   r   r   Úpip._internal.utils.typingr   Útypingr   r   r   r   r   r&   r   r   r   r   Ú<module>   s   