U
    ƒIÀdß  ã                   @   sp   d dl Z d dlZd dlZd dlZd dlmZ ddlmZ e	ee	 dœdd„Z
e	e	dœd	d
„Ze	e	dœdd„ZdS )é    N)ÚOptionalé   )ÚWINDOWS)ÚurlÚreturnc                 C   s    d| krd S |   dd¡d  ¡ S )Nú:r   r   )ÚsplitÚlower)r   © r
   úQ/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/pip/_internal/utils/urls.pyÚget_url_scheme
   s    r   )Úpathr   c                 C   s.   t j t j | ¡¡} tj dtj | ¡¡}|S )zh
    Convert a path to a file: URL.  The path will be made absolute and have
    quoted path parts.
    úfile:)	Úosr   ÚnormpathÚabspathÚurllibÚparseÚurljoinÚrequestÚpathname2url)r   r   r
   r
   r   Úpath_to_url   s    r   c                 C   s¼   |   d¡std| ›d�ƒ‚tj | ¡\}}}}}|r<|dkrBd}ntrPd| }ntd| ›�ƒ‚tj || ¡}tr¸|s¸t	|ƒdkr¸|d	 d
kr¸|d t
jkr¸|dd… dkr¸|dd… }|S )z(
    Convert a file: URL to a path.
    r   z1You can only turn file: urls into filenames (not ú)Ú	localhostÚ z\\z8non-local file URIs are not supported on this platform: é   r   ú/r   é   é   )r   z:/N)Ú
startswithÚAssertionErrorr   r   Úurlsplitr   Ú
ValueErrorr   Úurl2pathnameÚlenÚstringÚascii_letters)r   Ú_Únetlocr   r
   r
   r   Úurl_to_path   s8    ÿ
þ
ÿÿþ
ý
üûúr)   )r   r%   Úurllib.parser   Úurllib.requestÚtypingr   Úcompatr   Ústrr   r   r)   r
   r
   r
   r   Ú<module>   s   
