Your IP : 3.145.78.203


Current Path : /opt/alt/python310/lib64/python3.10/__pycache__/
Upload File :
Current File : //opt/alt/python310/lib64/python3.10/__pycache__/pyclbr.cpython-310.opt-2.pyc

o

6��f�,�@s�	ddlZddlZddlZgd�ZiZGdd�d�ZGdd�de�ZGdd�de�Zdd
d�Z	ddd
�Z
ddd�Zddd�Zddd�Z
Gdd�dej�Zdd�Zdd�Zedkr]e�dSdS)�N)�
readmodule�
readmodule_ex�Class�Functionc@seZdZ	dd�ZdS)�_ObjectcCsD||_||_||_||_||_||_i|_|dur ||j|<dSdS�N)�module�name�file�lineno�
end_lineno�parent�children)�selfrr	r
rrr
�r�-/opt/alt/python310/lib64/python3.10/pyclbr.py�__init__7s�z_Object.__init__N)�__name__�
__module__�__qualname__rrrrrr5srcs(eZdZ		ddd��fdd�Z�ZS)rNF�rcs8t��||||||�||_t|t�r||j|<dSdSr)�superr�is_async�
isinstancer�methods)rrr	r
rr
rr��	__class__rrrFs

�zFunction.__init__)NF�rrrr�
__classcell__rrrrrD���rcs(eZdZ		ddd��fdd�Z�ZS)rNrcs*t��||||||�|pg|_i|_dSr)rrr)rrr	Zsuper_r
rr
rrrrrPs

zClass.__init__rrrrrrrNrrFc	Cs	t|j||j||||d�S)N)r
rr)rrr
)�obZ	func_namerrrrrr�_nest_functionYs�r!c	Cs	t|j|||j|||d�S)N�r
r)rrr
)r �
class_namerrrrrr�_nest_class^s�r$cCs8	i}t||pg���D]
\}}t|t�r|||<q|Sr)�_readmodule�itemsrr)r�path�res�key�valuerrrrds
�rcCs	t||pg�Sr)r%)rr'rrrrpsrc	Csx	|durd||f}n|}|tvrt|Si}|tjvr'|dur'|t|<|S|�d�}|dkra|d|�}||dd�}t|||�}|durNd||f}d|vrYtd�|���t||d|�Sd}	|durj|}
n|tj}
tj	�
||
�}|dur�td|��|d��|t|<|jdur�|j|d<z|j
�|�}Wn
ttfy�|YSw|dur�|S|j
�|�}
t|||
|||�S)	Nz%s.%s�.r��__path__zNo package named {}zno module named )r	)�_modules�sys�builtin_module_names�rfindr%�ImportError�formatr'�	importlib�util�_find_spec_from_path�ModuleNotFoundError�submodule_search_locations�loader�
get_source�AttributeError�get_filename�_create_tree)rr'�	inpackage�
fullmodule�tree�i�packageZ	submoduler
�fZsearch_path�spec�source�fnamerrrr%zsN



�r%c@sBeZdZdd�Zdd�Zdd�dd�Zd	d
�Zdd�Zd
d�ZdS)�_ModuleBrowsercCs(||_||_||_||_||_g|_dSr)r'r@r
rr>�stack)rrr'r
r@r>rrrr�s
z_ModuleBrowser.__init__c
	Cs�g}|jD];}t�|�}||jvr|�|j|�qt|�d�}�dkr;|�^}}}|tvr:|�t|�||��q|�|�q|j	rI|j	dnd}	t
|j|j||j
|j|	|jd�}|	dure||j|j<|j	�|�|�|�|j	��dS)Nr+r,���r")�bases�astZunparser@�append�len�splitr.�getrHrrr	r
rr�
generic_visit�pop)
r�noderJ�baser	�names�_rZclass_r
rrr�visit_ClassDef�s(


��
z_ModuleBrowser.visit_ClassDefF�rc	Csl|jr|jdnd}t|j|j|j|j|||jd�}|dur$||j|j<|j�|�|�	|�|j�
�dS)NrIr)rHrrr	r
rrr@rLrPrQ)rrRrr
Zfunctionrrr�visit_FunctionDef�s�
z _ModuleBrowser.visit_FunctionDefcCs|j|dd�dS)NTrW)rX)rrRrrr�visit_AsyncFunctionDef�sz%_ModuleBrowser.visit_AsyncFunctionDefc
Csn|jdkrdS|jD]*}zzt|j|j|j�Wnty't|jg�YnwWq
ttfy4Yq
wdS)Nr)�
col_offsetrTr%r	r'r>r2�SyntaxError)rrRrrrr�visit_Import�s

����z_ModuleBrowser.visit_Importc	Cs�|jdkrdSzd|j}|jr||j7}t||j|j�}Wnttfy*YdSw|jD]-}|j	|vrB||j	|j
|jp@|j	<q.|j	dkr[|��D]\}}|�
d�rUqK||j
|<qKq.dS)Nrr+�*rU)rZ�levelrr%r'r>r2r[rTr	r@�asnamer&�
startswith)rrRrr	Zimport_nameZimport_valuerrr�visit_ImportFrom�s(


�



��z_ModuleBrowser.visit_ImportFromN)	rrrrrVrXrYr\rarrrrrG�s
rGcCs&t|||||�}|�t�|��|jSr)rGZvisitrK�parser@)r?r'rFrEr@r>Zmbrowserrrrr=
sr=c
CsX	ddl}ztjd}Wnt}Y|j�|�r4|j�|�g}|j�|�}|���	d�r3|dd�}ng}t
||�}dd�}t|��|dd�}d	}|r�|�
�}t|t�rVqJt|d
�s^d|_t|t�r}t|j��|dd�}|D]}	|j||	_qo|�|�t|t�r�td�d|j|j|j|j��nt|t�r�td
�d|j|j|j��|sLdSdS)Nrr,z.py���cSst|dd�S)Nrr)�getattr)�arrr�<lambda>"sz_main.<locals>.<lambda>T)r)�reverse��indentz{}class {} {} {}� z{}def {} {})�osr/�argv�__file__r'�exists�dirname�basename�lower�endswithr�sorted�valuesrQr�list�hasattrrirr�extendr�printr3r	rrr)
rk�modr'r@Z
lineno_keyZobjsZindent_level�objZnew_objsr rrr�_mainsJ�




�

�
�r{�__main__)Fr)rKr/�importlib.utilr4�__all__r.rrrr!r$rrr%ZNodeVisitorrGr=r{rrrrr�<module>s(+






@S&
�

?>