MCPcopy Index your code
hub / github.com/RustPython/RustPython / spec_from_loader

Function spec_from_loader

Lib/importlib/_bootstrap.py:665–691  ·  view source on GitHub ↗

Return a module spec based on various loader methods.

(name, loader, *, origin=None, is_package=None)

Source from the content-addressed store, hash-verified

663
664
665def spec_from_loader(name, loader, *, origin=None, is_package=None):
666 """Return a module spec based on various loader methods."""
667 if origin is None:
668 origin = getattr(loader, '_ORIGIN', None)
669
670 if not origin and hasattr(loader, 'get_filename'):
671 if _bootstrap_external is None:
672 raise NotImplementedError
673 spec_from_file_location = _bootstrap_external.spec_from_file_location
674
675 if is_package is None:
676 return spec_from_file_location(name, loader=loader)
677 search = [] if is_package else None
678 return spec_from_file_location(name, loader=loader,
679 submodule_search_locations=search)
680
681 if is_package is None:
682 if hasattr(loader, 'is_package'):
683 try:
684 is_package = loader.is_package(name)
685 except ImportError:
686 is_package = None # aka, undefined
687 else:
688 # the default
689 is_package = False
690
691 return ModuleSpec(name, loader, origin=origin, is_package=is_package)
692
693
694def _spec_from_module(module, loader=None, origin=None):

Callers 3

_load_module_shimFunction · 0.70
find_specMethod · 0.70
find_specMethod · 0.70

Calls 5

getattrFunction · 0.85
hasattrFunction · 0.85
spec_from_file_locationFunction · 0.70
ModuleSpecClass · 0.70
is_packageMethod · 0.45

Tested by

no test coverage detected