o
    Ee                      @   s^   d dl Z d dlZd dlmZ eee jf Zdd Zdededefdd	Z	d
edefddZ
dS )    N)Unionc                 C   s   t j| }t j|dd dS )z1Ensure that the parent directory of `path` existsT)exist_okN)ospathdirnamemakedirs)r   r    r   Q/var/www/bmteknikk.ddns.net/venv/lib/python3.10/site-packages/setuptools/_path.pyensure_directory   s   r
   p1p2returnc                 C   s   t | t |kS )a  Differs from os.path.samefile because it does not require paths to exist.
    Purely string based (no comparison between i-nodes).
    >>> same_path("a/b", "./a/b")
    True
    >>> same_path("a/b", "a/./b")
    True
    >>> same_path("a/b", "././a/b")
    True
    >>> same_path("a/b", "./a/b/c/..")
    True
    >>> same_path("a/b", "../a/b/c")
    False
    >>> same_path("a", "a/b")
    False
    )normpath)r   r   r   r   r	   	same_path   s   r   filenamec                 C   s6   t jdkrtj| n| }tjtjtj|S )z2Normalize a file/dir name for comparison purposes.cygwin)sysplatformr   r   abspathnormcaserealpathr   )r   filer   r   r	   r   !   s   r   )r   r   typingr   strPathLike_Pathr
   boolr   r   r   r   r   r	   <module>   s    