̝{ü R d dl Z d dlmZ eee j f Zd ZdededefdZdS ) N)Unionc p t j | }t j |d dS )z1Ensure that the parent directory of `path` existsT)exist_okN)ospathdirnamemakedirs)r r s /builddir/build/BUILDROOT/alt-python311-setuptools-65.6.3-2.el9.x86_64/opt/alt/python311/lib/python3.11/site-packages/setuptools/_path.pyensure_directoryr s0 good##GK$'''''' p1p2returnc t j | t j | 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
)r r normpath)r
r s r
same_pathr
s/ 7B27#3#3B#7#777r ) r typingr strPathLike_Pathr boolr r r