o
    LK&h
                     @   sJ   d dl Z d dlZd dlZd dlmZ dd ZdddZd	d
 Zdd ZdS )    N)Pathc                 c   s:    |  d}tt|D ]}d|d |d  V  qd S )N.   )splitrangelenjoin)	namespacepartsi r   N/var/www/html/venv/lib/python3.10/site-packages/setuptools/tests/namespaces.pyiter_namespace_pkgs   s
   
r   1.0pkg_resourcesc                 C   s*  | | }|   |d }|d\}}}tt|}	|||	d}
|dkr+d}|	|
d< n|dkr2d}ntd	|d
tj|
dd}t|sHJ t	
dj|d}|j|dd t||dd}|j dd |	D ]}||dd d }|j|dd qi||d  }djdi t }|j|dd |S )Nzsetup.pyr   )nameversionpackagesr   z7__import__("pkg_resources").declare_namespace(__name__)namespace_packagespkgutilz@__path__ = __import__("pkgutil").extend_path(__path__, __name__)zCannot recognise impl=z when creating namespaces   )indentzY        import setuptools
        args = {args}
        setuptools.setup(**args)
        )argsutf-8encoding/Tparentsz__init__.py.pyzname = {rest!r}r   )mkdir
rpartitionlistr   
ValueErrorjsondumpsastliteral_evaltextwrapdedentformat
write_textr   replacelocals)tmpdirr   r   implsrc_dirsetup_pyr	   _rest
namespaces
setup_argstmplr   script
ns_pkg_dirnspkg_initpkg_modsome_functionalityr   r   r   build_namespace_package   s@   
r=   c                 C   s   | | }|   |d }|d\}}}d| d}|jt|dd t||dd}|j dd	 ||d
  }	d|}
|	j|
dd |S )Nzpyproject.tomlr   z        [build-system]
        requires = ["setuptools"]
        build-backend = "setuptools.build_meta"

        [project]
        name = "z&"
        version = "3.14159"
        r   r   r   Tr   r   zname = )r    r!   r+   r(   r)   r   r,   )r.   r   r0   	pyprojectr	   r2   r3   r7   r8   r;   r<   r   r   r   build_pep420_namespace_package:   s   	
r?   c                 C   s4   | d }t | }d}|j|jdi t dd dS )z
    Add a sitecustomize.py module in target to cause
    target to be added to site dirs such that .pth files
    are processed there.
    zsitecustomize.pyz-__import__("site").addsitedir({target_str!r})r   r   Nr   )strr+   r*   r-   )targetsc
target_strr6   r   r   r   make_site_dirQ   s    rD   )r   r   )	r&   r$   r(   pathlibr   r   r=   r?   rD   r   r   r   r   <module>   s    
-