2009-01-22 22:43:07 +00:00
|
|
|
"""The machinery of importlib: finders, loaders, hooks, etc."""
|
|
|
|
|
|
2013-11-22 09:05:39 -07:00
|
|
|
from ._bootstrap import ModuleSpec
|
2009-01-22 22:43:07 +00:00
|
|
|
from ._bootstrap import BuiltinImporter
|
|
|
|
|
from ._bootstrap import FrozenImporter
|
2025-01-15 01:48:46 +01:00
|
|
|
from ._bootstrap_external import (
|
|
|
|
|
SOURCE_SUFFIXES, BYTECODE_SUFFIXES, EXTENSION_SUFFIXES,
|
|
|
|
|
DEBUG_BYTECODE_SUFFIXES as _DEBUG_BYTECODE_SUFFIXES,
|
|
|
|
|
OPTIMIZED_BYTECODE_SUFFIXES as _OPTIMIZED_BYTECODE_SUFFIXES
|
|
|
|
|
)
|
2015-05-02 19:15:18 -06:00
|
|
|
from ._bootstrap_external import WindowsRegistryFinder
|
|
|
|
|
from ._bootstrap_external import PathFinder
|
|
|
|
|
from ._bootstrap_external import FileFinder
|
|
|
|
|
from ._bootstrap_external import SourceFileLoader
|
|
|
|
|
from ._bootstrap_external import SourcelessFileLoader
|
|
|
|
|
from ._bootstrap_external import ExtensionFileLoader
|
2024-03-19 20:36:19 +08:00
|
|
|
from ._bootstrap_external import AppleFrameworkLoader
|
2021-10-20 14:05:29 -07:00
|
|
|
from ._bootstrap_external import NamespaceLoader
|
2012-05-11 12:58:42 -04:00
|
|
|
|
2012-07-18 23:14:57 +10:00
|
|
|
|
|
|
|
|
def all_suffixes():
|
|
|
|
|
"""Returns a list of all recognized module suffixes for this process"""
|
|
|
|
|
return SOURCE_SUFFIXES + BYTECODE_SUFFIXES + EXTENSION_SUFFIXES
|
2024-06-14 20:39:50 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
__all__ = ['AppleFrameworkLoader', 'BYTECODE_SUFFIXES', 'BuiltinImporter',
|
|
|
|
|
'DEBUG_BYTECODE_SUFFIXES', 'EXTENSION_SUFFIXES',
|
|
|
|
|
'ExtensionFileLoader', 'FileFinder', 'FrozenImporter', 'ModuleSpec',
|
|
|
|
|
'NamespaceLoader', 'OPTIMIZED_BYTECODE_SUFFIXES', 'PathFinder',
|
|
|
|
|
'SOURCE_SUFFIXES', 'SourceFileLoader', 'SourcelessFileLoader',
|
|
|
|
|
'WindowsRegistryFinder', 'all_suffixes']
|
2025-01-15 01:48:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
def __getattr__(name):
|
|
|
|
|
import warnings
|
|
|
|
|
|
|
|
|
|
if name == 'DEBUG_BYTECODE_SUFFIXES':
|
|
|
|
|
warnings.warn('importlib.machinery.DEBUG_BYTECODE_SUFFIXES is '
|
|
|
|
|
'deprecated; use importlib.machinery.BYTECODE_SUFFIXES '
|
|
|
|
|
'instead.',
|
|
|
|
|
DeprecationWarning, stacklevel=2)
|
|
|
|
|
return _DEBUG_BYTECODE_SUFFIXES
|
|
|
|
|
elif name == 'OPTIMIZED_BYTECODE_SUFFIXES':
|
|
|
|
|
warnings.warn('importlib.machinery.OPTIMIZED_BYTECODE_SUFFIXES is '
|
|
|
|
|
'deprecated; use importlib.machinery.BYTECODE_SUFFIXES '
|
|
|
|
|
'instead.',
|
|
|
|
|
DeprecationWarning, stacklevel=2)
|
|
|
|
|
return _OPTIMIZED_BYTECODE_SUFFIXES
|
|
|
|
|
|
|
|
|
|
raise AttributeError(f'module {__name__!r} has no attribute {name!r}')
|