U e5d-x ã @ sR d Z ddlZddlmZmZ ddlZddlZddlZddl Z ddl Z ddlZddgZej Z ejdd… ZG dd„ deƒZi Zee ƒZdZd Zd ZG dd„ dƒZe d d d fe d dd fddfZdd„ Zdd„ Zdd„ Zdd„ ZdZdadd„ Z dd„ Z!dd „ Z"d!d"„ Z#ee#j$ƒZ%d#d$„ Z&d%d&„ Z'd'd(„ Z(d)d*„ Z)d+d,„ Z*d-d.„ Z+G d/d0„ d0ƒZ,dS )1aP zipimport provides support for importing Python modules from Zip archives. This module exports three objects: - zipimporter: a class; its constructor takes a path to a Zip archive. - ZipImportError: exception raised by zipimporter objects. It's a subclass of ImportError, so it can be caught as ImportError, too. - _zip_directory_cache: a dict, mapping archive paths to zip directory info dicts, as used in zipimporter._files. It is usually not needed to use the zipimport module explicitly; it is used by the builtin import mechanism for sys.path items that are paths to Zip archives. é N)Ú_unpack_uint16Ú_unpack_uint32ÚZipImportErrorÚzipimporteré c @ s e Zd ZdS )r N)Ú__name__Ú __module__Ú__qualname__© r r ú!/usr/lib64/python3.8/zipimport.pyr ! s é s PKiÿÿ c @ sl e Zd ZdZdd„ Zddd„Zddd„Zd d „ Zdd„ Zd d„ Z dd„ Z dd„ Zdd„ Zdd„ Z dd„ ZdS )r aÿ zipimporter(archivepath) -> zipimporter object Create a new zipimporter instance. 'archivepath' must be a path to a zipfile, or to a specific path inside a zipfile. For example, it can be '/tmp/myimport.zip', or '/tmp/myimport.zip/mydirectory', if mydirectory is a valid directory inside the archive. 'ZipImportError is raised if 'archivepath' doesn't point to a valid Zip archive. The 'archive' attribute of zipimporter objects contains the name of the zipfile targeted. c C s$ t |tƒsdd l}| |¡}|s,td|d�‚tr<| tt¡}g }zt |¡}W nH t tfk r– t |¡\}}||kr„td|d�‚|}| |¡ Y q@X |jd@ dkr¶td|d�‚q¶q@zt| }W n$ tk ræ t|ƒ}|t|<