MCPcopy Index your code
hub / github.com/python/cpython / load_module

Method load_module

Lib/modulefinder.py:334–361  ·  view source on GitHub ↗
(self, fqname, fp, pathname, file_info)

Source from the content-addressed store, hash-verified

332 return m
333
334 def load_module(self, fqname, fp, pathname, file_info):
335 suffix, mode, type = file_info
336 self.msgin(2, "load_module", fqname, fp and "fp", pathname)
337 if type == _PKG_DIRECTORY:
338 m = self.load_package(fqname, pathname)
339 self.msgout(2, "load_module ->", m)
340 return m
341 if type == _PY_SOURCE:
342 co = compile(fp.read(), pathname, 'exec', module=fqname)
343 elif type == _PY_COMPILED:
344 try:
345 data = fp.read()
346 importlib._bootstrap_external._classify_pyc(data, fqname, {})
347 except ImportError as exc:
348 self.msgout(2, "raise ImportError: " + str(exc), pathname)
349 raise
350 co = marshal.loads(memoryview(data)[16:])
351 else:
352 co = None
353 m = self.add_module(fqname)
354 m.__file__ = pathname
355 if co:
356 if self.replace_paths:
357 co = self.replace_paths_in_code(co)
358 m.__code__ = co
359 self.scan_code(co, m)
360 self.msgout(2, "load_module ->", m)
361 return m
362
363 def _add_badmodule(self, name, caller):
364 if name not in self.badmodules:

Callers 4

run_scriptMethod · 0.95
load_fileMethod · 0.95
import_moduleMethod · 0.95
load_packageMethod · 0.95

Calls 10

msginMethod · 0.95
load_packageMethod · 0.95
msgoutMethod · 0.95
add_moduleMethod · 0.95
replace_paths_in_codeMethod · 0.95
scan_codeMethod · 0.95
strFunction · 0.85
compileFunction · 0.70
readMethod · 0.45
loadsMethod · 0.45

Tested by

no test coverage detected