[all-commits] [llvm/llvm-project] 392520: [lldb/Plugins] Introduce Scripted Interface Factory

Med Ismail Bennani via All-commits all-commits at lists.llvm.org
Fri Sep 3 10:37:42 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 3925204c1f5880f491e08d8481e88342bbeb7bc4
      https://github.com/llvm/llvm-project/commit/3925204c1f5880f491e08d8481e88342bbeb7bc4
  Author: Med Ismail Bennani <medismail.bennani at gmail.com>
  Date:   2021-09-03 (Fri, 03 Sep 2021)

  Changed paths:
    M lldb/bindings/python/python-wrapper.swig
    A lldb/include/lldb/Interpreter/ScriptedInterface.h
    M lldb/include/lldb/Interpreter/ScriptedProcessInterface.h
    M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptedProcessPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptedProcessPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/ScriptedPythonInterface.h
    M lldb/unittests/ScriptInterpreter/Python/PythonTestSuite.cpp

  Log Message:
  -----------
  [lldb/Plugins] Introduce Scripted Interface Factory

This patch splits the previous `ScriptedProcessPythonInterface` into
multiple specific classes:

1. The `ScriptedInterface` abstract class that carries the interface
   instance object and its virtual pure abstract creation method.

2. The `ScriptedPythonInterface` that holds a generic `Dispatch` method that
   can be used by various interfaces to call python methods and also keeps a
   reference to the Python Script Interpreter instance.

3. The `ScriptedProcessInterface` that describes the base Scripted
   Process model with all the methods used in the underlying script.

All these components are used to refactor the `ScriptedProcessPythonInterface`
class, making it more modular.

This patch is also a requirement for the upcoming work on `ScriptedThread`.

Differential Revision: https://reviews.llvm.org/D107521

Signed-off-by: Med Ismail Bennani <medismail.bennani at gmail.com>




More information about the All-commits mailing list