コード例 #1
0
ファイル: loader.py プロジェクト: lewtonstein/pyqt-fit
 def create_loader(pack_name, filepath):
     ext = filepath.ext
     if ext in ilm.SOURCE_SUFFIXES:
         return ilm.SourceFileLoader(pack_name, str(filepath))
     if ext in ilm.BYTECODE_SUFFIXES:
         return ilm.SourcelessFileLoader(pack_name, str(filepath))
     if ext in ilm.EXTENSION_SUFFIXES:
         return ilm.ExtensionFileLoader(pack_name, str(filepath))
コード例 #2
0
 def w_load_from_name(self, name, origin=None, use_prefix=True):
     from importlib import machinery, util
     if not origin:
         module = self.import_module(name=self.name, use_imp=True)
         origin = module.__loader__.path
     if use_prefix:
         name = '_testmultiphase_' + name
     loader = machinery.ExtensionFileLoader(name, origin)
     spec = util.spec_from_loader(name, loader)
     module = util.module_from_spec(spec)
     loader.exec_module(module)
     return module
コード例 #3
0
def _import_module(module_name, extension_name=None):
    if extension_name is None:
        sub_mod_name = module_name.split(".")[-1]
        extension_name = f"sstcam_{sub_mod_name}"
    mod_path = _os.path.join(_get_extension_dir(), extension_name)
    loader = machinery.ExtensionFileLoader(extension_name, mod_path)
    spec = importlib.util.spec_from_loader(extension_name, loader)
    mod = loader.create_module(spec)
    loader.exec_module(mod)
    for name, attr in mod.__dict__.items():
        if name[0] == "_":
            continue
        setattr(sys.modules[module_name], name, attr)
    return mod
コード例 #4
0
ファイル: pex_main.py プロジェクト: rozuur/please
    def load_module(self, fullname):
        """Actually load a module that we said we'd handle in find_module."""
        import tempfile

        filename = self.modules[fullname]
        prefix, ext = self.splitext(filename)
        with tempfile.NamedTemporaryFile(suffix=ext, prefix=os.path.basename(prefix)) as f:
            f.write(self.zf.read(filename))
            f.flush()
            if PY_VERSION < 3:
                suffix = self.suffixes[ext]
                mod = imp.load_module(fullname, None, f.name, suffix)
            else:
                mod = machinery.ExtensionFileLoader(fullname, f.name).load_module()
        # Make it look like module came from the original location for nicer tracebacks.
        mod.__file__ = filename
        return mod
コード例 #5
0
 def setUp(self):
     self.loader = machinery.ExtensionFileLoader(ext_util.NAME,
                                                 ext_util.FILEPATH)
コード例 #6
0
ファイル: test_loader.py プロジェクト: Ds110/mee-python
 def test_is_package(self):
     self.assertFalse(self.loader.is_package(ext_util.NAME))
     for suffix in machinery.EXTENSION_SUFFIXES:
         path = os.path.join('some', 'path', 'pkg', '__init__' + suffix)
         loader = machinery.ExtensionFileLoader('pkg', path)
         self.assertTrue(loader.is_package('pkg'))