CasperSecurity

Current Path : /lib/python3.10/lib2to3/fixes/__pycache__/
Upload File :
Current File : //lib/python3.10/lib2to3/fixes/__pycache__/fix_import.cpython-310.pyc

o

��bc��@sZdZddlmZddlmZmZmZmZddlm	Z	m
Z
mZdd�ZGdd	�d	ej
�Zd
S)z�Fixer for import statements.
If spam is being imported from the local directory, this import:
    from spam import eggs
Becomes:
    from .spam import eggs

And this import:
    import spam
Becomes:
    from . import spam
�)�
fixer_base�)�dirname�join�exists�sep)�
FromImport�syms�tokenccs��|g}|rQ|��}|jtjkr|jVn8|jtjkr(d�dd�|jD��Vn%|jtj	kr7|�
|jd�n|jtjkrI|�|jddd��nt
d��|sdSdS)zF
    Walks over all the names imported in a dotted_as_names node.
    �cSsg|]}|j�qS�)�value)�.0�chrr�//usr/lib/python3.10/lib2to3/fixes/fix_import.py�
<listcomp>sz$traverse_imports.<locals>.<listcomp>rN���zunknown node type)�pop�typer
�NAMEr
r	�dotted_namer�children�dotted_as_name�append�dotted_as_names�extend�AssertionError)�names�pending�noderrr�traverse_importss�
�r cs4eZdZdZdZ�fdd�Zdd�Zdd�Z�ZS)	�	FixImportTzj
    import_from< 'from' imp=any 'import' ['('] any [')'] >
    |
    import_name< 'import' imp=any >
    cs"tt|��||�d|jv|_dS)N�absolute_import)�superr!�
start_tree�future_features�skip)�self�tree�name��	__class__rrr$/szFixImport.start_treecCs�|jrdS|d}|jtjkr2t|d�s|jd}t|d�r|�|j�r0d|j|_|��dSdSd}d}t	|�D]}|�|�rDd}q:d}q:|rS|rQ|�
|d�dStd|g�}|j|_|S)N�impr
r�.FTz#absolute and local imports together)
r&rr	�import_from�hasattrr�probably_a_local_importr
�changedr �warningr�prefix)r'r�resultsr,�
have_local�
have_absolute�mod_name�newrrr�	transform3s0


��
zFixImport.transformcCst|�d�rdS|�dd�d}t|j�}t||�}ttt|�d��s$dSdtddd	d
fD]}t||�r7dSq,dS)Nr-F�rz__init__.pyz.pyz.pycz.soz.slz.pydT)�
startswith�splitr�filenamerrr)r'�imp_name�	base_path�extrrrr0Us


�z!FixImport.probably_a_local_import)	�__name__�
__module__�__qualname__�
BM_compatible�PATTERNr$r9r0�
__classcell__rrr*rr!&s"r!N)�__doc__rr�os.pathrrrr�
fixer_utilrr	r
r �BaseFixr!rrrr�<module>s

Hacker Blog, Shell İndir, Sql İnjection, XSS Attacks, LFI Attacks, Social Hacking, Exploit Bot, Proxy Tools, Web Shell, PHP Shell, Alfa Shell İndir, Hacking Training Set, DDoS Script, Denial Of Service, Botnet, RFI Attacks, Encryption
Telegram @BIBIL_0DAY