%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /opt/alt/python37/lib64/python3.7/site-packages/guppy/etc/__pycache__/
Upload File :
Create Path :
Current File : //opt/alt/python37/lib64/python3.7/site-packages/guppy/etc/__pycache__/Glue.cpython-37.pyc

B

�]Z5�@s�ddlZddlZddlZGdd�de�ZGdd�de�ZGdd�de�Zdd	�Zd
d�ZGdd
�d
e	�Z
Gdd�d�ZGdd�d�ZGdd�d�Z
Gdd�d�Zdd�ZdS)�Nc@seZdZdS)�	GlueErrorN)�__name__�
__module__�__qualname__�rr�A/opt/alt/python37/lib64/python3.7/site-packages/guppy/etc/Glue.pyrsrc@seZdZdS)�RecursionErrorN)rrrrrrrr
src@seZdZdS)�NoSuchAttributeErrorN)rrrrrrrr	sr	cCs,y
|j}Wntk
rdSXt�d|�S)z� Determine if a module is a package - that means, sub-modules can be imported
    Currently uses that it has a file name that matches '.*__init__.py[co]?$'
    xxx is this portable/future-safe?

    rz.*__init__.py[co]?$)�__file__�AttributeError�re�match)�m�namerrr�	ispackages

rcCs |r|rd||fS||SdS)Nz%s.%sr)�firstZlastrrr�dotnamesrc@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�	InterfacecCs<||jd<||jd<||jd<x|jD]}t||�q&WdS)N�_share�_owner�_name)�__dict__�preload�getattr)�self�share�ownerrrrr�__init__'s



zInterface.__init__cGs"d�|�dd�dd�|D��S)N�,�=cSsg|]}d|�qS)z
self._root.%sr)�.0rrrr�
<listcomp>/sz%Interface._import.<locals>.<listcomp>)�join)r�namesrrr�_import.szInterface._importcCs|j�||�S)N)rr)rrrrr�__getattr__1szInterface.__getattr__cCs|j�|||�S)N)r�setattr)rr�valuerrr�__setattr__4szInterface.__setattr__N)rrrrr$r%r(rrrrr&src@s6eZdZdd�Zdd�Zdd�Zdd�Zd
dd�Zd	S)�OwnercCs||_i|_i|_i|_dS)N)r�galog�salog�inters)rrrrrr9szOwner.__init__cCst|d|�}d|j|<dS)Nr�)rr*)r�cacherrrr�log_getattr?szOwner.log_getattrcCsd|j|<dS)Nr-)r+)rrrrr�log_setattrCszOwner.log_setattrcCsVt|d|�}||jkrL|j}|dk	r6t|t�r6|}nt}||||�|j|<|j|S)Nr)rr,�Clamp�
issubclassr)rr.rrr1ZNewInterfacerrr�
makeInterfaceFs
zOwner.makeInterfaceNrcCs�|dkrtj}|sFtd|j|d�t|jd|j�d�d�|d�g}x<|jD]2}x,|jD]}||kr^|�|�r^Pq^W|�|�qRW|��x|D]}td|�q�WdS)NzAttributes used by %s:)�file�.r-z    )	�sys�stdout�printr�rindexr*�
startswith�append�sort)r�out�shortZcomplete�a�brrr�ppQs"
zOwner.pp)Nr)rrrrr/r0r3rArrrrr)8s
r)c@s�eZdZdZdZdd�Zdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dd�Zdd�Zdd�Z
dd�Zejfdd�Zejfdd�Zdd�ZdS)�ShareFNcCsR|dkr|}|}n
|jd}||_||_||_|dk	r<||_t|dd�|_t|jt�sdt	|�
d���t|dd�|_t|jt�s�t	|�
d���t|dd�}t|t�s�t	|�
d���i|_i}d}}	�xn|D�]d}
|
�
d	�}t|�d
k�rt|�d
kr�d}nd}td
||
f��|\}
}|
��}
|�|
�}|dk�r�|
�
dd�}|d}|dk�rv|dk�rptd��ddi|d�}|}n8|dk�r�|	dk�r�td��ddi|d�}	|	}ntd��t|�d
k�r�||ddg}n
|d|g}|||
<|�
d�}xF|D]>}|��}t|d|d�}|dk	�r td|��||j|<�q�Wq�Wt|dd�|_t|jt��s^t	|�
d���t|dd�}t|tj��s�|dk	�r�t	|�
d���||_d|_i|_i|_|dk�p�t|�|_||jd<||jd<||jd<d|_t|dd�}|�r(d|_td��ddi|d�}x|D]}t||��qWx|D]}||jk�s.t��q.W||_dS)N�_rootZ	_setable_rz'the _setable_ attribute must be a tupleZ	_chgable_z'the _chgable_ attribute must be a tupleZ	_imports_z'the _imports_ attribute must be a tuple�:�zToo manyZNoz%s ':' in import directive %r.r5r-r�_parent�rz'Module must begin with _parent or _rootrz_get_%sz6Cant have both name (=%r) in boht importfrom  and _getZ_nowrap_z&the _nowrap_ attribute must be a tupleZ
_wrapattr_z)the _wrapattr_ attribute must be a method�_moduleZ	_preload_)�data�module�parentrr1r�setable�
isinstance�tuple�	TypeError�message�chgable�importedfrom�split�len�SyntaxError�strip�getr)r3�
ValueError�nowrap�types�FunctionType�wrapattr�wrapping�ownersr�	recursionr�AssertionError)rrJrKrr1�rootZimportsZpresZparent_interZ
root_interZfiZpresuf�sZpreZsuf�prepaZhdtaZhd�hdoZsufsZsu�imr\r�interrrrrgs�


















zShare.__init__cCsd|j|j|fS)Nz
%s: in %r: %s)�	__class__r)r�msgrrrrP�sz
Share.messagecCs2|j}|j}|�||||�}||jkr.|||<|S)N)rr�getattr2rQ)rrfrrr.�drrrr�s
z
Share.getattrcsd�jr|�||�y�j|}W�n"tk
�rDz��jd7_yJ�jr�y���|�}Wq�tk
r|���|�}Yq�Xn���|�}WnJtk
r�|dkr��fdd�S|dkrȇ�fdd�S��	�|�}YnX�j
}|dk	�r"|�jk�r"�j�rt
�zd�_|�||�}Wdd�_X|�j|<Wd�jd8_XYnXt|t��r`|�|||�}|S)Nr-�__repr__cst��S)N)�strr)rfrr�<lambda>��z Share.getattr2.<locals>.<lambda>�__str__csd�jtt���fS)Nz<%s interface at %s>)r�hex�idr)rfrrrrm�sr)�has_getattr_logging_enabledr/rI�KeyErrorr_r�getattr3r	�getattr_package�getattr_moduler\rYr]r`rMrBr3)rrfr.rr�xr\r)rfrrri�s@zShare.getattr2cCs:yt|j|�Stk
r4td|jj|f��YnXdS)Nz0Module %r or its _GLUECLAMP_ has no attribute %r)rrJrr)rrfrrrrrv�s
zShare.getattr_modulec
Cs�yt|�|��}WnVtk
rh}z8|jdd|�|�ksJ|jsL|dkrL�|�||�}Wdd}~XYnX|jr||�||�}t|tj	�r�|�
||�}|S)NrzNo module named '%s')rkro)�
__import__�makeName�ImportError�argsrJrtrvrMrZ�
ModuleType�
makeModule)rrfrrw�excrrrruszShare.getattr_packagecCs�|jdkrt|��|j}|dkr(t|��yt||�}W�n�tk
�r�yt|d|�}W�n(tk
�r�||jkr�|j|}|\}}}	|	dkr�|}	|�d�}
x|
D]}t|	|�}	q�W|	|d<t|	|�}|St|dd�}|dkr�t|��t|d��r|�d�}xt|D]l}
|
�	�}
|
�d�}|}x |D]}|�	�}t||�}�q*Wyt||�}Wntk
�rn�w
YnX|S�q
Wt|��Yn@X|�
|�}t||d�}t�
||�}|�}t|t��r�|jd	}YnXt|tj��r�t�
||�}|S)
N�
z_get_%sr5rEZ
_GLUEPATH_rSrrGr)r_rr1r	rrrRrS�hasattrrV�	makeOwnerrrZ�
MethodTyperMrr[)rrfrr1rwrercrdZtaZpaZtasZatZgpr?ZbsZiir@r�frrrrtsb













zShare.getattr3cCst|dd�}t|||j|�S)N�_GLUECLAMP_)rrBr)rrJrr1rrrr}KszShare.makeModulecCs|jrd|j|f}|S)Nz%s.%s)r)rrrrrryOszShare.makeNamecCs |�|�}t|�}||j|<|S)N)ryr)r^)rrZ
owner_namerrrrr�Ts

zShare.makeOwnercCs�|js
dStd|j|d�tddt|j�|d�t|j���}|��x@|D]8}||�d�dd�}t||d�|j|jdd�qRWt|d�dS)NzDependencies found for %s)r4z-----------------------�-r5r-)r>)	r^r8rrT�list�keysr<r9rA)rr=r��keyZlastnamerrrrAZs
zShare.ppcCsD|�|�x4t|j���D]"\}}|dkrt|t�r|��qWdS)N)rCrF)rAr�rI�itemsrMrB�rpp)rr=�krjrrrr�gs


z	Share.rppcCs�|j}|dkrtd|��|j}|j}||krZ||krZ||jkrN|j||ksZtd|��||jkr�|j||k	r�||kr�td|��t|d|d�}|dk	r�|||�||j|<||kr�||j|<dS)Nz;Can not change attribute %r because no _GLUECLAMP_ defined.zICan not change attribute %r,
because it is not in _setable_ or _chgable_.zLCan not change attribute %r,
because it is already set and not in _chgable_.z_set_%s)r1rXrLrQrIrr)rrfrr'r1rLrQrerrrr&ns&

 


z
Share.setattr)rrrrrr1rrPrrirvrurtr}ryr�r6r7rAr�r&rrrrrBcsd'7
rBc@seZdZdd�ZdS)�TestcCs
||_dS)N)ra)rrarrrr�sz
Test.__init__N)rrrrrrrrr��sr�c@seZdZdS)r�N)rrrrrrrr��sr�cCs.tdddd�}td��ddi|d�}||_|S)z�Create a new guppy Root object.

All functionality in the system may be accessed from this object.
Modules are imported on demand when accessed. Other objects may be
created or imported on demand using Guppy Glue+ directives.
NrGr)rBr)r3Zroot_interface)r�rrrr�Root�sr�)rr6rZ�	Exceptionrrr	rr�objectrr)rBr�r�r�rrrr�<module>s
+&

Zerion Mini Shell 1.0