HEX
Server: Apache/2.4.65 (Debian)
System: Linux kubikelcreative 5.10.0-35-amd64 #1 SMP Debian 5.10.237-1 (2025-05-19) x86_64
User: www-data (33)
PHP: 8.4.13
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/setuptools/__pycache__/namespaces.cpython-39.pyc
a

��`�@sFddlZddlmZddlZejjZGdd�d�ZGdd�de�ZdS)�N)�logc@sTeZdZdZdd�Zdd�Zdd�ZdZd	Zd
d�Z	dd
�Z
dd�Zedd��Z
dS)�	Installerz
-nspkg.pthcCs�|��}|sdStj�|���\}}||j7}|j�|�t�	d|�t
|j|�}|jrdt
|�dSt|d��}|�|�Wd�n1s�0YdS)Nz
Installing %sZwt)�_get_all_ns_packages�os�path�splitext�_get_target�	nspkg_extZoutputs�appendr�info�map�_gen_nspkg_lineZdry_run�list�open�
writelines)�selfZnsp�filename�ext�lines�f�r�7/usr/lib/python3/dist-packages/setuptools/namespaces.py�install_namespaces
s
zInstaller.install_namespacescCsHtj�|���\}}||j7}tj�|�s.dSt�d|�t�|�dS)NzRemoving %s)	rrrrr	�existsrr�remove)rrrrrr�uninstall_namespacess
zInstaller.uninstall_namespacescCs|jS�N)�target�rrrrr'szInstaller._get_target)	zimport sys, types, osz#has_mfs = sys.version_info > (3, 5)z$p = os.path.join(%(root)s, *%(pth)r)z4importlib = has_mfs and __import__('importlib.util')z-has_mfs and __import__('importlib.machinery')z�m = has_mfs and sys.modules.setdefault(%(pkg)r, importlib.util.module_from_spec(importlib.machinery.PathFinder.find_spec(%(pkg)r, [os.path.dirname(p)])))zCm = m or sys.modules.setdefault(%(pkg)r, types.ModuleType(%(pkg)r))z7mp = (m or []) and m.__dict__.setdefault('__path__',[])z(p not in mp) and mp.append(p))z4m and setattr(sys.modules[%(parent)r], %(child)r, m)cCsdS)Nz$sys._getframe(1).f_locals['sitedir']rrrrr�	_get_rootEszInstaller._get_rootcCsNt|�d��}|��}|j}|�d�\}}}|r:||j7}d�|�t�dS)N�.�;�
)�tuple�splitr�_nspkg_tmpl�
rpartition�_nspkg_tmpl_multi�join�locals)r�pkgZpth�rootZ
tmpl_lines�parent�sep�childrrrr
Hs
zInstaller._gen_nspkg_linecCs |jjp
g}ttt|j|���S)z,Return sorted list of all package namespaces)ZdistributionZnamespace_packages�sorted�flattenr�
_pkg_names)rZpkgsrrrrQszInstaller._get_all_ns_packagesccs(|�d�}|r$d�|�V|��q
dS)z�
        Given a namespace package, yield the components of that
        package.

        >>> names = Installer._pkg_names('a.b.c')
        >>> set(names) == set(['a', 'a.b', 'a.b.c'])
        True
        r N)r$r(�pop)r*�partsrrrr1Vs

zInstaller._pkg_namesN)�__name__�
__module__�__qualname__r	rrrr%r'rr
r�staticmethodr1rrrrr	s	rc@seZdZdd�Zdd�ZdS)�DevelopInstallercCstt|j��Sr)�repr�strZegg_pathrrrrrgszDevelopInstaller._get_rootcCs|jSr)Zegg_linkrrrrrjszDevelopInstaller._get_targetN)r4r5r6rrrrrrr8fsr8)	rZ	distutilsr�	itertools�chain�
from_iterabler0rr8rrrr�<module>s
]