/opt/imh-python/lib/python3.9/site-packages/astroid/brain
NameSizeModeActions
__pycache__/-0755rm
brain_argparse.py18130644editdlrm
brain_attrs.py33520644editdlrm
brain_boto3.py10720644editdlrm
brain_builtin_inference.py374330644editdlrm
brain_collections.py47870644editdlrm
brain_crypt.py9150644editdlrm
brain_ctypes.py27200644editdlrm
brain_curses.py35290644editdlrm
brain_dataclasses.py223630644editdlrm
brain_datetime.py7710644editdlrm
brain_dateutil.py8190644editdlrm
brain_functools.py63900644editdlrm
brain_gi.py75980644editdlrm
brain_hashlib.py27570644editdlrm
brain_http.py106870644editdlrm
brain_hypothesis.py18000644editdlrm
brain_io.py15890644editdlrm
brain_mechanize.py26980644editdlrm
brain_multiprocessing.py32600644editdlrm
brain_namedtuple_enum.py239120644editdlrm
brain_nose.py24020644editdlrm
brain_numpy_core_einsumfunc.py8850644editdlrm
brain_numpy_core_fromnumeric.py7920644editdlrm
brain_numpy_core_function_base.py14080644editdlrm
brain_numpy_core_multiarray.py44000644editdlrm
brain_numpy_core_numeric.py17400644editdlrm
brain_numpy_core_numerictypes.py86060644editdlrm
brain_numpy_core_umath.py49390644editdlrm
brain_numpy_ma.py9480644editdlrm
brain_numpy_ndarray.py90660644editdlrm
brain_numpy_random_mtrand.py34960644editdlrm
brain_numpy_utils.py25530644editdlrm
brain_pathlib.py17050644editdlrm
brain_pkg_resources.py22520644editdlrm
brain_pytest.py22700644editdlrm
brain_qt.py28740644editdlrm
brain_random.py31700644editdlrm
brain_re.py29660644editdlrm
brain_regex.py34330644editdlrm
brain_responses.py19200644editdlrm
brain_scipy_signal.py23280644editdlrm
brain_signal.py39320644editdlrm
brain_six.py76660644editdlrm
brain_sqlalchemy.py10610644editdlrm
brain_ssl.py67160644editdlrm
brain_subprocess.py29710644editdlrm
brain_threading.py9220644editdlrm
brain_type.py24810644editdlrm
brain_typing.py167170644editdlrm
brain_unittest.py11360644editdlrm
brain_uuid.py7270644editdlrm
helpers.py43030644editdlrm
__init__.py00644editdlrm
Edit: /opt/imh-python/lib/python3.9/site-packages/astroid/brain/brain_multiprocessing.py (3260B)
# Licensed under the LGPL: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html # For details: https://github.com/pylint-dev/astroid/blob/main/LICENSE # Copyright (c) https://github.com/pylint-dev/astroid/blob/main/CONTRIBUTORS.txt from astroid.bases import BoundMethod from astroid.brain.helpers import register_module_extender from astroid.builder import parse from astroid.exceptions import InferenceError from astroid.manager import AstroidManager from astroid.nodes.scoped_nodes import FunctionDef def _multiprocessing_transform(): module = parse( """ from multiprocessing.managers import SyncManager def Manager(): return SyncManager() """ ) # Multiprocessing uses a getattr lookup inside contexts, # in order to get the attributes they need. Since it's extremely # dynamic, we use this approach to fake it. node = parse( """ from multiprocessing.context import DefaultContext, BaseContext default = DefaultContext() base = BaseContext() """ ) try: context = next(node["default"].infer()) base = next(node["base"].infer()) except (InferenceError, StopIteration): return module for node in (context, base): for key, value in node.locals.items(): if key.startswith("_"): continue value = value[0] if isinstance(value, FunctionDef): # We need to rebound this, since otherwise # it will have an extra argument (self). value = BoundMethod(value, node) module[key] = value return module def _multiprocessing_managers_transform(): return parse( """ import array import threading import multiprocessing.pool as pool import queue class Namespace(object): pass class Value(object): def __init__(self, typecode, value, lock=True): self._typecode = typecode self._value = value def get(self): return self._value def set(self, value): self._value = value def __repr__(self): return '%s(%r, %r)'%(type(self).__name__, self._typecode, self._value) value = property(get, set) def Array(typecode, sequence, lock=True): return array.array(typecode, sequence) class SyncManager(object): Queue = JoinableQueue = queue.Queue Event = threading.Event RLock = threading.RLock Lock = threading.Lock BoundedSemaphore = threading.BoundedSemaphore Condition = threading.Condition Barrier = threading.Barrier Pool = pool.Pool list = list dict = dict Value = Value Array = Array Namespace = Namespace __enter__ = lambda self: self __exit__ = lambda *args: args def start(self, initializer=None, initargs=None): pass def shutdown(self): pass """ ) def register(manager: AstroidManager) -> None: register_module_extender( manager, "multiprocessing.managers", _multiprocessing_managers_transform ) register_module_extender(manager, "multiprocessing", _multiprocessing_transform)