o
    2h                     @   s:   d dl Z d dlZd dlZdZ				d
ddZdd	 ZdS )    Nz{"""DO NOT EDIT.

This file was autogenerated. Do not edit it by hand,
since your modifications would be overwritten.
"""


srcF c                     s2  |rt d  d  d| d tj std  dtjtj |s4td  d| d fdd|D }g }ttj |D ]B\}}}||v rW|  qI|D ]1}	|	dkrk|d	|	d qY|	
d
r|	
ds|	dd }
|d	|	dd	 |
  qYqItjdt  g }|D ]}tj|d	d}|| q|rt d t }|D ]0}t|D ])}t||}t|dsq|jt|krqt fddt|jD sq|| qqi }|D ]}|rt d|j d t|jD ]u}|	d	}|d  kr|dur|d |g|dd  }|d }tjj|dd  }||vr0g ||< || ||d tdt|dd D ])}tjj|d|  }||vrZg ||< || || d	|d| d qEqq|rxt d | D ]\}}tj|dd g }t }|D ]M}d|v r|d }|d }|d|j d|j d |  qd!|v r|d! |vr|d! }|dd	|	d d| d |  ||d!  qtj|d}|rt d"|  t |}t!|d#}t"d$| d$ }|#| W d   n	1 sw   Y  q|dS )%a  Writes out API export `__init__.py` files.

    Given a codebase structured as such:

    ```
    package/
    ...src/
    ......__init__.py
    ......(Python files that use e.g. `@export_api(package="package", export_path="package.x.y.Z")`)
    ```

    this script generates `__init__.py` files within `package/`
    to export the public API described by the `@api_export` calls.

    Important notes:

    * Any existing `__init__.py` files in `package/` but outside of
        `package/code_directory/` may be overwritten.
    * This script must be run in an environment that includes
        all dependencies used by `package`. Make sure to install
        them before running the script.
    zGenerating files for package 'z' from sources found in '/z'.zNo directory named 'c                    s   g | ]	}t j |qS r   )ospathjoin).0dpackager   I/var/www/html/chatgem/venv/lib/python3.10/site-packages/namex/generate.py
<listcomp>7   s    z&generate_api_files.<locals>.<listcomp>z__init__.py.z.pyz_test.pyNr   r
   z$Compiling list of symbols to export._api_export_pathc                    s   g | ]	}|  d  qS )r   )
startswith)r   r   r
   r   r   r   ^   s    z...processing symbol ''   )symbolexport_name)modulelocationzWriting out API files.T)exist_okr   r   zfrom z import z as r   z...writing w
)$printr   r   exists
ValueErrorr   walkclearappendsplitendswithsysinsertgetcwd	importlibimport_modulesetdirgetattrhasattr_api_export_symbol_ididallto_listr   add__name__rangelenitemsmakedirs
__module__sortedopenINIT_FILE_HEADERwrite) r   code_directoryverbosetarget_directoryexclude_directoriescodebase_walk_entry_pointsrootdirsfilesfnamemodule_namemodulesentry_pointmodall_symbolsr   namer   init_files_contentexport_pathexport_modulesr   parent_pathiintermediate_pathr   contentsinit_file_linesmodules_includedsymbol_metadata	init_pathfr   r
   r   generate_api_files   s   








 rW   c                 C   s*   t | ttfrt| S t | tr| gS g S )N)
isinstancelisttuplestr)xr   r   r   r0      s
   
r0   )r   FNr   )r   r$   r'   r:   rW   r0   r   r   r   r   <module>   s    
 