U
    •Ê¹j»  ã                   @   s@   d dl Z d dlZdZdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ ZdS )é    N))z/__init__.pyT)z.pyFc                 C   s   |   dd¡} |   dd¡} | S )Ns   
ó   
ó   )Úreplace)Úsource© r   úW/var/www/html/bwave/python/venv/lib/python3.8/site-packages/torch/package/_importlib.pyÚ_normalize_line_endings   s    r   c                 C   sB   |  d|d ¡}t|ƒ|k r$tdƒ‚|d }| r>|› d| › �S |S )z2Resolve a relative module name to an absolute one.Ú.é   z2attempted relative import beyond top-level packager   )ÚrsplitÚlenÚ
ValueError)ÚnameÚpackageÚlevelÚbitsÚbaser   r   r   Ú_resolve_name   s
    r   c                 C   sl   t | tƒstdt| ƒ› �ƒ‚|dk r,tdƒ‚|dkrTt |tƒsHtdƒ‚n|sTtdƒ‚| sh|dkrhtdƒ‚dS )zVerify arguments are "sane".zmodule name must be str, not r   zlevel must be >= 0z__package__ not set to a stringz6attempted relative import with no known parent packagezEmpty module nameN)Ú
isinstanceÚstrÚ	TypeErrorÚtyper   ÚImportError)r   r   r   r   r   r   Ú_sanity_check%   s    


ÿr   c                 C   s’   |   d¡}|   d¡}|dk	rR|dk	rN||jkrNtjd|›d|j›d�tdd� |S |dk	r`|jS tjd	tdd� | d
 }d| krŽ| d¡d }|S )z§Calculate what __package__ should be.

    __package__ is not guaranteed to be defined or could be set to None
    to represent that its proper value is unknown.

    Ú__package__Ú__spec__Nz __package__ != __spec__.parent (z != ú)é   )Ú
stacklevelzYcan't resolve package from __spec__ or __package__, falling back on __name__ and __path__Ú__name__Ú__path__r	   r   )ÚgetÚparentÚ	_warningsÚwarnÚImportWarningÚ
rpartition)Úglobalsr   Úspecr   r   r   Ú_calc___package__6   s*    

ýür)   c                 C   s,   t j | ¡\}}|r$t| ›d�ƒ‚n|S dS )z€Normalize a path by ensuring it is a string.

    If the resulting string contains path separators, an exception is raised.
    z must be only a file nameN)ÚosÚpathÚsplitr   )r+   r"   Ú	file_namer   r   r   Ú_normalize_pathV   s    r.   )	r#   Úos.pathr*   Ú_zip_searchorderr   r   r   r)   r.   r   r   r   r   Ú<module>   s   	 