Your IP : 18.223.158.29


Current Path : /lib64/python3.8/__pycache__/
Upload File :
Current File : //lib64/python3.8/__pycache__/imp.cpython-38.opt-1.pyc

U

e5d()�@s�dZddlmZmZmZmZmZmZmZm	Z	m
Z
zddlmZWnek
rXdZYnXddl
mZmZmZmZddlmZddlmZddlmZddlZddlZddlZddlZddlZddlZejd	ed
d�dZdZd
Z d
Z!dZ"dZ#dZ$dZ%dZ&dZ'dd�Z(dd�Z)dd�Z*d8dd�Z+dd�Z,dd�Z-Gd d!�d!�Z.Gd"d#�d#�Z/Gd$d%�d%e/ej0�Z1d9d&d'�Z2Gd(d)�d)e/e�Z3d:d*d+�Z4d,d-�Z5d.d/�Z6d;d0d1�Z7d2d3�Z8d4d5�Z9e�r�d<d6d7�Z:ndZ:dS)=z�This module provides the components needed to build your own __import__
function.  Undocumented functions are obsolete.

In most cases it is preferred you consider using the importlib module's
functionality over this module.

�)	�	lock_held�acquire_lock�release_lock�get_frozen_object�is_frozen_package�init_frozen�
is_builtin�	is_frozen�_fix_co_filename)�create_dynamicN)�_ERR_MSG�_exec�_load�_builtin_from_name)�SourcelessFileLoader)�	machinery)�utilzhthe imp module is deprecated in favour of importlib; see the module's documentation for alternative uses�)�
stacklevel��������	cCs
t�|�S)z_**DEPRECATED**

    Create a new module.

    The module is not entered into sys.modules.

    )�types�
ModuleType��name�r!�/usr/lib64/python3.8/imp.py�
new_module0sr#cCstjS)z@**DEPRECATED**

    Return the magic number for .pyc files.
    )r�MAGIC_NUMBERr!r!r!r"�	get_magic;sr%cCstjjS)z$Return the magic tag for .pyc files.)�sys�implementation�	cache_tagr!r!r!r"�get_tagCsr)c
Cs6t���$t�d�t�||�W5QR�SQRXdS)a�**DEPRECATED**

    Given the path to a .py file, return the path to its .pyc file.

    The .py file does not need to exist; this simply returns the path to the
    .pyc file calculated as if the .py file were imported.

    If debug_override is not None, then it must be a boolean and is used in
    place of sys.flags.optimize.

    If sys.implementation.cache_tag is None then NotImplementedError is raised.

    �ignoreN)�warnings�catch_warnings�simplefilterr�cache_from_source)�path�debug_overrider!r!r"r.Hs

r.cCs
t�|�S)a~**DEPRECATED**

    Given the path to a .pyc. file, return the path to its .py file.

    The .pyc file does not need to exist; this simply returns the path to
    the .py file calculated to correspond to the .pyc file.  If path does
    not conform to PEP 3147 format, ValueError will be raised. If
    sys.implementation.cache_tag is None then NotImplementedError is raised.

    )r�source_from_cache�r/r!r!r"r1[sr1cCs<dd�tjD�}dd�tjD�}dd�tjD�}|||S)�**DEPRECATED**cSsg|]}|dtf�qS��rb)�C_EXTENSION��.0�sr!r!r"�
<listcomp>ksz get_suffixes.<locals>.<listcomp>cSsg|]}|dtf�qS)�r)�	PY_SOURCEr7r!r!r"r:lscSsg|]}|dtf�qSr4)�PY_COMPILEDr7r!r!r"r:ms)r�EXTENSION_SUFFIXES�SOURCE_SUFFIXES�BYTECODE_SUFFIXES)�
extensions�source�bytecoder!r!r"�get_suffixesisrDc@s eZdZdZdd�Zdd�ZdS)�NullImporterz-**DEPRECATED**

    Null import object.

    cCs2|dkrtddd��ntj�|�r.td|d��dS)N�zempty pathnamer2zexisting directory)�ImportError�osr/�isdir)�selfr/r!r!r"�__init__zszNullImporter.__init__cCsdS)zAlways returns None.Nr!)rJ�fullnamer!r!r"�find_module�szNullImporter.find_moduleN)�__name__�
__module__�__qualname__�__doc__rKrMr!r!r!r"rErsrEcs.eZdZdZd�fdd�	Z�fdd�Z�ZS)�_HackedGetDatazMCompatibility support for 'file' arguments of various load_*()
    functions.Ncst��||�||_dS)N)�superrK�file)rJrLr/rT��	__class__r!r"rK�sz_HackedGetData.__init__c
s||jrl||jkrl|jjs0|j}d|jkr0|��|jjrJt|jd�|_}|�|��W5QR�SQRXnt��|�SdS)z;Gross hack to contort loader to deal w/ load_*()'s bad API.�br5N)	rTr/�closed�mode�close�open�readrS�get_data)rJr/rTrUr!r"r]�s
z_HackedGetData.get_data)N)rNrOrPrQrKr]�
__classcell__r!r!rUr"rR�srRc@seZdZdZdS)�_LoadSourceCompatibilityz5Compatibility support for implementing load_source().N�rNrOrPrQr!r!r!r"r_�sr_cCs\t|||�}tj|||d�}|tjkr8t|tj|�}nt|�}t�||�|_	|j	|j
_|S)N��loader)r_r�spec_from_file_locationr&�modulesr
rr�SourceFileLoader�
__loader__�__spec__rb�r �pathnamerTrb�spec�moduler!r!r"�load_source�s

rlc@seZdZdZdS)�_LoadCompiledCompatibilityz7Compatibility support for implementing load_compiled().Nr`r!r!r!r"rm�srmcCsZt|||�}tj|||d�}|tjkr8t|tj|�}nt|�}t||�|_|j|j	_
|S)r3ra)rmrrcr&rdr
rrrfrgrbrhr!r!r"�
load_compiled�s

rncCs�tj�|�rftjdd�tjdd�}|D]*}tj�|d|�}tj�|�r,|}qfq,td�	|���t
j||gd�}|tj
kr�t|tj
|�St|�SdS)r3NrKz{!r} is not a package)�submodule_search_locations)rHr/rIrr?r@�join�exists�
ValueError�formatrrcr&rdr
r)r r/rA�	extensionZ	init_pathrjr!r!r"�load_package�s ��
ruc	
Cs$|\}}}|r0|�d�r d|kr0td�|���n�|dkrX|tthkrXd�|�}t|��n�|tkrlt|||�S|tkr�t|||�S|tkr�tdk	r�|dkr�t	|d��}t|||�W5QR�SQRXnt|||�SnN|t
kr�t||�S|tk�r�t
|�S|tk�rt|�Sd�||�}t||d��dS)	z�**DEPRECATED**

    Load a module, given information returned by find_module().

    The module name must include the full package name, if any.

    )r;�U�+zinvalid file open mode {!r}Nz.file object required for import (type code {})r5z*Don't know how to import {} (type code {})r)�
startswithrrrsr<r=rlrnr6�load_dynamicr[�
PKG_DIRECTORYru�	C_BUILTIN�init_builtin�	PY_FROZENrrG)	r rT�filenameZdetails�suffixrY�type_�msgZopened_filer!r!r"�load_module�s.


 


r�c	Cs�t|t�std�t|����n$t|td�tf�sBtd�t|����|dkr�t|�rbddddtffSt	|�rzddddt
ffStj}|D]�}t
j�||�}dtjdfD]>}d|}t
j�||�}t
j�|�r�d|ddtffSq�t�D]2\}}}||}	t
j�||	�}t
j�|�r��q q�q��q:q�tt�|�|d��d}
d	|k�rnt|d
��}t�|j�d}
W5QRXt|||
d�}|||||ffS)a,**DEPRECATED**

    Search for a module.

    If path is omitted or None, search for a built-in, frozen or special
    module and continue search in sys.path. The module name cannot
    contain '.'; to search for a submodule of a package, pass the
    submodule name and the package's __path__.

    z'name' must be a str, not {}Nz%'path' must be None or a list, not {}rFz.pyrrKrrWr5)�encoding)�
isinstance�str�	TypeErrorrs�type�list�RuntimeErrorrr{r	r}r&r/rHrprr@�isfilerzrDrGrr[�tokenize�detect_encoding�readline)r r/�entryZpackage_directoryrZpackage_file_nameZ	file_pathrYr��	file_namer�rTr!r!r"rM�sB
�
rMcCs
t�|�S)zw**DEPRECATED**

    Reload the module and return it.

    The module must have been successfully imported before.

    )�	importlib�reload)rkr!r!r"r�2sr�cCs&z
t|�WStk
r YdSXdS)zl**DEPRECATED**

    Load and return a built-in module by name, or None is such module doesn't
    exist
    N)rrGrr!r!r"r|=s
r|cCs0ddl}|j�||�}|jj|||d�}t|�S)z:**DEPRECATED**

        Load an extension module.
        rN)r rb�origin)�importlib.machineryr�ExtensionFileLoader�
ModuleSpecr)r r/rTr�rbrjr!r!r"ryJs�ry)N)N)N)N)N);rQ�_imprrrrrrrr	r
rrGZimportlib._bootstraprr
rrZimportlib._bootstrap_externalrr�rrrHr&r�rr+�warn�DeprecationWarningZSEARCH_ERRORr<r=r6ZPY_RESOURCErzr{r}ZPY_CODERESOURCEZIMP_HOOKr#r%r)r.r1rDrErRrer_rlrmrnrur�rMr�r|ryr!r!r!r"�<module>sb,
�
	

#
4

?>