
    h<                     N    d Z ddlmZ ddlZddlZ G d dej                  ZdS )z>Subset of importlib.abc used to reduce importlib.util imports.   )
_bootstrap    Nc                   $    e Zd ZdZd Zd Zd ZdS )Loaderz'Abstract base class for import loaders.c                     dS )zReturn a module to initialize and into which to load.

        This method should raise ImportError if anything prevents it
        from creating a new module.  It may return None to indicate
        that the spec should create the new module.
        N )selfspecs     %/usr/lib/python3.11/importlib/_abc.pycreate_modulezLoader.create_module   s	     t    c                 Z    t          | d          st          t          j        | |          S )a  Return the loaded module.

        The module must be added to sys.modules and have import-related
        attributes set properly.  The fullname is a str.

        ImportError is raised on failure.

        This method is deprecated in favor of loader.exec_module(). If
        exec_module() exists then it is used to provide a backwards-compatible
        functionality for this method.

        exec_module)hasattrImportErrorr   _load_module_shim)r	   fullnames     r   load_modulezLoader.load_module   s/     t]++ 	+D(;;;r   c                 D    t          j        dt                     t          )zReturn a module's repr.

        Used by the module type when the method does not raise
        NotImplementedError.

        This method is deprecated.

        zVimportlib.abc.Loader.module_repr() is deprecated and slated for removal in Python 3.12)warningswarnDeprecationWarningNotImplementedError)r	   modules     r   module_reprzLoader.module_repr*   s+     	 :;M	O 	O 	O "!r   N)__name__
__module____qualname____doc__r   r   r   r   r   r   r   r      sG        11  < < <$" " " " "r   r   )	metaclass)r    r   abcr   ABCMetar   r   r   r   <module>r$      sj    D D       



 /" /" /" /" /"s{ /" /" /" /" /" /"r   