PATH:
opt
/
imunify360
/
venv
/
lib
/
python3.11
/
site-packages
/
setuptools
""" Re-implementation of find_module and get_frozen_object from the deprecated imp module. """ import os import importlib.util import importlib.machinery from importlib.util import module_from_spec PY_SOURCE = 1 PY_COMPILED = 2 C_EXTENSION = 3 C_BUILTIN = 6 PY_FROZEN = 7 def find_spec(module, paths): finder = ( importlib.machinery.PathFinder().find_spec if isinstance(paths, list) else importlib.util.find_spec ) return finder(module, paths) def find_module(module, paths=None): """Just like 'imp.find_module()', but with package support""" spec = find_spec(module, paths) if spec is None: raise ImportError("Can't find %s" % module) if not spec.has_location and hasattr(spec, 'submodule_search_locations'): spec = importlib.util.spec_from_loader('__init__.py', spec.loader) kind = -1 file = None static = isinstance(spec.loader, type) if ( spec.origin == 'frozen' or static and issubclass(spec.loader, importlib.machinery.FrozenImporter) ): kind = PY_FROZEN path = None # imp compabilty suffix = mode = '' # imp compatibility elif ( spec.origin == 'built-in' or static and issubclass(spec.loader, importlib.machinery.BuiltinImporter) ): kind = C_BUILTIN path = None # imp compabilty suffix = mode = '' # imp compatibility elif spec.has_location: path = spec.origin suffix = os.path.splitext(path)[1] mode = 'r' if suffix in importlib.machinery.SOURCE_SUFFIXES else 'rb' if suffix in importlib.machinery.SOURCE_SUFFIXES: kind = PY_SOURCE elif suffix in importlib.machinery.BYTECODE_SUFFIXES: kind = PY_COMPILED elif suffix in importlib.machinery.EXTENSION_SUFFIXES: kind = C_EXTENSION if kind in {PY_SOURCE, PY_COMPILED}: file = open(path, mode) else: path = None suffix = mode = '' return file, path, (suffix, mode, kind) def get_frozen_object(module, paths=None): spec = find_spec(module, paths) if not spec: raise ImportError("Can't find %s" % module) return spec.loader.get_code(module) def get_module(module, paths, info): spec = find_spec(module, paths) if not spec: raise ImportError("Can't find %s" % module) return module_from_spec(spec)
[-] errors.py
[edit]
[-] sandbox.py
[edit]
[-] _path.py
[edit]
[-] depends.py
[edit]
[-] _reqs.py
[edit]
[-] cli.exe
[edit]
[-] cli-64.exe
[edit]
[+]
..
[-] gui-arm64.exe
[edit]
[-] warnings.py
[edit]
[-] gui.exe
[edit]
[+]
extern
[-] gui-64.exe
[edit]
[-] script.tmpl
[edit]
[-] package_index.py
[edit]
[+]
_distutils
[-] windows_support.py
[edit]
[-] modified.py
[edit]
[-] glob.py
[edit]
[-] _imp.py
[edit]
[-] wheel.py
[edit]
[-] launch.py
[edit]
[-] dist.py
[edit]
[+]
_vendor
[-] cli-32.exe
[edit]
[+]
__pycache__
[-] py312compat.py
[edit]
[-] installer.py
[edit]
[-] msvc.py
[edit]
[-] archive_util.py
[edit]
[-] _normalization.py
[edit]
[-] discovery.py
[edit]
[-] monkey.py
[edit]
[+]
config
[-] _entry_points.py
[edit]
[-] version.py
[edit]
[-] _core_metadata.py
[edit]
[-] _itertools.py
[edit]
[-] logging.py
[edit]
[-] gui-32.exe
[edit]
[-] unicode_utils.py
[edit]
[-] namespaces.py
[edit]
[-] build_meta.py
[edit]
[-] __init__.py
[edit]
[-] cli-arm64.exe
[edit]
[+]
command
[-] script (dev).tmpl
[edit]
[-] _importlib.py
[edit]
[-] dep_util.py
[edit]
[-] extension.py
[edit]