}9SM d Z ddlmZ ddlmZ ddlZn # e$ rZej dk r dZY dZ[ndZ[ww xY w ddlZn # e$ r eZY nw xY wddl m Z ddlZddlZddl mZmZmZ g d Zd Z G d dej Z G d dej Z eeej ej ej ej G d dej Z eeej G d de Z G d de Z eeej ej ej G d de Z eeej G d dej! ee Z! ee!ej" ej# G d dej$ ee Z$ ee$ej" dS )z(Abstract base classes related to import. )_bootstrap_external) machinery N_frozen_importlib)Loader)ResourceReaderTraversableTraversableResources)r FinderMetaPathFinderPathEntryFinderResourceLoader InspectLoaderExecutionLoader FileLoaderSourceLoaderr r r c |D ]y}| | t [ t t |j }n*# t $ r t t |j }Y nw xY w| | zd S N)registerr getattr__name__AttributeError_frozen_importlib_external)abstract_clsclassescls frozen_clss :/opt/alt/python-internal/lib64/python3.11/importlib/abc.py _registerr s . .c"""( O$%6EE ! O O O$%?NN O!!*---. .s =$A$#A$c : e Zd ZdZd Zej dd ZdS )r a< Legacy abstract base class for import finders. It may be subclassed for compatibility with legacy third party reimplementations of the import system. Otherwise, finder implementations should derive from the more specific MetaPathFinder or PathEntryFinder ABCs. Deprecated since Python 3.3 c : t j dt d S )Nzqthe Finder ABC is deprecated and slated for removal in Python 3.12; use MetaPathFinder or PathEntryFinder insteadwarningswarnDeprecationWarningselfs r __init__zFinder.__init__7 s* 4 * + + + + + Nc : t j dt dS )zAn abstract method that should find a module. The fullname is a str and the optional path is a str or None. Returns a Loader object or None. zimportlib.abc.Finder along with its find_module() method are deprecated and slated for removal in Python 3.12; use MetaPathFinder.find_spec() or PathEntryFinder.find_spec() insteadNr" )r' fullnamepaths r find_modulezFinder.find_module= s, = * + + + + +r) r )r __module____qualname____doc__r( abcabstractmethodr- r) r r r + sQ + + + + + + + + +r) r ) metaclassc e Zd ZdZd Zd ZdS )r z8Abstract base class for import finders on sys.meta_path.c t j dt d t | d sdS | || }||j ndS )a_ Return a loader for the module. If no module is found, return None. The fullname is a str and the path is a list of strings or None. This method is deprecated since Python 3.4 in favor of finder.find_spec(). If find_spec() exists then backwards-compatible functionality is provided for this method. zMetaPathFinder.find_module() is deprecated since Python 3.4 in favor of MetaPathFinder.find_spec() and is slated for removal in Python 3.12 stacklevel find_specN)r# r$ r% hasattrr: loader)r' r+ r, founds r r- zMetaPathFinder.find_moduleR sg : )!" $ $ $ $ t[)) 4x..$0u||d:r) c dS )zAn optional method for clearing the finder's cache, if any. This method is used by importlib.invalidate_caches(). Nr3 r&