Your IP : 216.73.216.196


Current Path : /opt/alt/python37/lib/python3.7/site-packages/py/__pycache__/
Upload File :
Current File : //opt/alt/python37/lib/python3.7/site-packages/py/__pycache__/_apipkg.cpython-37.pyc

B

���]��@s`dZddlZddlZddlmZdZdd�Ze�fdd�Zd	d
�Z	Gdd�de�Z
dd
d�ZdS)z�
apipkg: control the exported namespace of a python package.

see http://pypi.python.org/pypi/apipkg

(c) holger krekel, 2009 - MIT license
�N)�
ModuleTypez1.3.devcCs|�d�r|Stj�|�SdS)zU
    special version of abspath
    that will leave paths from jython jars alone
    Z__pyclasspath__N)�
startswith�os�path�abspath)r�r�;/opt/alt/python37/lib/python3.7/site-packages/py/_apipkg.py�_py_abspaths
r	cCs�tj�|�}i}t|dd�}|r(t|�}||d<t|d�rD|j|d<t|d�rX|j|d<t|d�rvdd�|jD�|d<d|kr�t|dd�r�|j	|d<|�
|�t|d	�r�|j�
|�t||||d
�}|tj|<dS)z7 initialize given package from the export definitions. �__file__N�__version__�
__loader__�__path__cSsg|]}t|��qSr)r	)�.0�prrr�
<listcomp>&szinitpkg.<locals>.<listcomp>�__doc__�__dict__)�
implprefix�attr)
�sys�modules�get�getattrr	�hasattrrrr
r�updater�	ApiModule)�pkgnameZ
exportdefsrZoldmod�d�f�modrrr�initpkgs&







r cCsBt|dddg�}|s|S|}|�d�}x|D]}t||�}q,W|S)Nr�.)�
__import__�splitr)�modpath�attrname�module�retval�names�xrrr�	importobj/s

r*c@sTeZdZdd�Zdd�Zeee�Zddd�Zdd	�Zd
d�Z	e	Z
dd
�Zee�ZdS)rcCs4y|jStk
r.d|jkr*|�d�SYnXdS)Nr)�_ApiModule__doc�AttributeError�__map__�_ApiModule__makeattr)�selfrrrZ__docget;s

zApiModule.__docgetcCs
||_dS)N)r+)r/�valuerrrZ__docsetAszApiModule.__docsetNcCs(||_dd�|D�|_i|_|p"||_|rLx |��D]\}}t|||�q4Wx�|��D]�\}}t|t�r�d|j|f}t|||�}|t	j
|<t|||�qV|�d�}|�d�}	|r�|dp�d}
|	ddkr�||	}	|
�sd|j|f}t
||	�}|t	j
|<d|k�r t|||�qV|	|
f|j|<qVWdS)NcSsg|]}|dkr|�qS)�__onfirstaccess__r)rr)rrrrGsz&ApiModule.__init__.<locals>.<listcomp>z%s.%s�:r�r!)�__name__�__all__r-Z__implprefix__�items�setattr�
isinstance�dictrrrr#�pop�AliasModule)r/�nameZ
importspecrr�val�subnameZapimod�partsr$r%rrr�__init__Es2







zApiModule.__init__cCsdg}t|d�r"|�dt|j��t|d�r@|�dt|j��|rXd|jd�|�fSd|jfS)Nrzversion=r
zfrom z<ApiModule %r %s>� z<ApiModule %r>)r�append�reprrr
r4�join)r/�lrrr�__repr__ds

zApiModule.__repr__cCs�d}d|jkr$|j�d�}t|��y|j|\}}Wn6tk
rl|dk	r`|dkr`t||�St|��Yn>Xt||�}t|||�y|j|=Wntk
r�YnX|SdS)zAlazily compute value for name or raise AttributeError if unknown.Nr1)r-r:r*�KeyErrorrr,r7)r/r<�targetr$r%�resultrrrZ
__makeattrns"



zApiModule.__makeattrc	Cs^tjd}|�|�}|dk	rZt|d�x2|jD](}y|�|�Wq.tk
rTYq.Xq.W|S)NrZsome)rr�__get__rr5r.r,)r/Z	dictdescrr9r<rrrr�s



zApiModule.__dict__)NN)r4�
__module__�__qualname__Z_ApiModule__docgetZ_ApiModule__docset�propertyrr@rFr.�__getattr__rrrrrr:s


rcs:g����fdd��G����fdd�dt�}|t���S)Ncs2�s*t�d�}�dk	r t|��}��|��dS)Nr)r*rrB)r))r%rr$rr�getmod�s


zAliasModule.<locals>.getmodcs@eZdZ���fdd�Z�fdd�Z�fdd�Z�fdd�Zd	S)
z AliasModule.<locals>.AliasModulecs �}�r|d�7}d�|fS)Nr!z<AliasModule %r for %r>r)r/r))r%�modnamer$rrrF�sz)AliasModule.<locals>.AliasModule.__repr__cs&yt��|�Stk
r dSXdS)N)r�ImportError)r/r<)rOrr�__getattribute__�sz1AliasModule.<locals>.AliasModule.__getattribute__cst��||�dS)N)r7)r/r<r0)rOrr�__setattr__�sz,AliasModule.<locals>.AliasModule.__setattr__cst��|�dS)N)�delattr)r/r<)rOrr�__delattr__�sz,AliasModule.<locals>.AliasModule.__delattr__N)r4rKrLrFrRrSrUr)r%rOrPr$rrr;�sr;)r�str)rPr$r%r;r)r%rOrrPr$rr;�sr;)N)rrr�typesrrr	r9r r*rr;rrrr�<module>s\