%PDF- %PDF-
Direktori : /usr/local/lib/python3.8/__pycache__/ |
Current File : //usr/local/lib/python3.8/__pycache__/pkgutil.cpython-38.pyc |
U naS @ sx d Z ddlmZ ddlmZ ddlZddlZddlZddl Z ddl Z ddlZddlm Z ddlZdddd d ddd ddddgZeddZde_ dd Zdd Zd+dd Zd,ddZed-ddZd.ddZeejje dd ZG d d d ZG d!d dZz.ddlZdd"lmZ d/d#d$Zeee W n e k r@ Y nX d%d Z!d0d&dZ"d'd Z#d(d Z$d)d Z%d*d Z&dS )1zUtilities to support packages. ) namedtuple)singledispatchN) ModuleTypeget_importeriter_importers get_loaderfind_loader walk_packagesiter_modulesget_dataImpImporter ImpLoader read_codeextend_path ModuleInfozmodule_finder name ispkgz.A namedtuple with minimal info about a module.c C sR z | j }W n: tk rD | |}|dkr2Y dS tj|| Y S X ||S dS )z'Return the finder-specific module spec.N) find_specAttributeErrorfind_module importlibutilspec_from_loader)findernamer loader r #/usr/local/lib/python3.8/pkgutil.py _get_spec s r c C s6 dd l }| d}|tjjkr"d S | d || S )Nr )marshalreadr r MAGIC_NUMBERload)streamr magicr r r r ( s c # s i fdd t | |D ]}|V |jrzt|j W nN tk rZ |dk rV||j Y q tk r |dk r|||j n Y qX ttj|j ddpg } fdd| D } t | |jd |E dH qdS )a Yields ModuleInfo for all modules recursively on path, or, if path is None, all accessible modules. 'path' should be either None or a list of paths to look for modules in. 'prefix' is a string to output on the front of every module name on output. Note that this function must import all *packages* (NOT all modules!) on the given path, in order to access the __path__ attribute to find submodules. 'onerror' is a function which gets called with one argument (the name of the package which was being imported) if any exception occurs while trying to import a package. If no onerror function is supplied, ImportErrors are caught and ignored, while all other exceptions are propagated, terminating the search. Examples: # list all modules python can access walk_packages() # list all submodules of ctypes walk_packages(ctypes.__path__, ctypes.__name__+'.') c S s | |krdS d|| <