diff options
| author | David Spickett <david.spickett@linaro.org> | 2024-09-20 09:52:32 +0000 |
|---|---|---|
| committer | David Spickett <david.spickett@linaro.org> | 2024-09-20 09:57:07 +0000 |
| commit | 801046e3303eed43bffebb84e9e505cc19cad5c0 (patch) | |
| tree | cdec65aa41de8e852ba5b01c020fc47a396ec746 /lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStopHookPythonInterface.cpp | |
| parent | 413b12a5aba09f136c51923fe568c7269ef93c35 (diff) | |
Revert "[lldb] Fix SWIG wrapper compilation error"
...and "[lldb/Interpreter] Introduce `ScriptedStopHook{,Python}Interface` & make use of it (#105449)"
This reverts commit 76b827bb4d5b4cc4d3229c4c6de2529e8b156810, and commit 1e131ddfa8f1d7b18c85c6e4079458be8b419421
because the first commit caused the test command-stop-hook-output.test to fail.
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStopHookPythonInterface.cpp')
| -rw-r--r-- | lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStopHookPythonInterface.cpp | 75 |
1 files changed, 0 insertions, 75 deletions
diff --git a/lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStopHookPythonInterface.cpp b/lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStopHookPythonInterface.cpp deleted file mode 100644 index 6cec7d6e7553..000000000000 --- a/lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStopHookPythonInterface.cpp +++ /dev/null @@ -1,75 +0,0 @@ -//===-- ScriptedStopHookPythonInterface.cpp -------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#include "lldb/Core/PluginManager.h" -#include "lldb/Host/Config.h" -#include "lldb/Target/ExecutionContext.h" -#include "lldb/Utility/Log.h" -#include "lldb/lldb-enumerations.h" - -#if LLDB_ENABLE_PYTHON - -// clang-format off -// LLDB Python header must be included first -#include "../lldb-python.h" -//clang-format on - -#include "../SWIGPythonBridge.h" -#include "../ScriptInterpreterPythonImpl.h" -#include "ScriptedStopHookPythonInterface.h" - -using namespace lldb; -using namespace lldb_private; -using namespace lldb_private::python; - -ScriptedStopHookPythonInterface::ScriptedStopHookPythonInterface( - ScriptInterpreterPythonImpl &interpreter) - : ScriptedStopHookInterface(), ScriptedPythonInterface(interpreter) {} - -llvm::Expected<StructuredData::GenericSP> -ScriptedStopHookPythonInterface::CreatePluginObject(llvm::StringRef class_name, - lldb::TargetSP target_sp, - const StructuredDataImpl &args_sp) { - return ScriptedPythonInterface::CreatePluginObject(class_name, nullptr, - target_sp, args_sp); -} - -llvm::Expected<bool> -ScriptedStopHookPythonInterface::HandleStop(ExecutionContext &exe_ctx, - lldb::StreamSP output_sp) { - ExecutionContextRefSP exe_ctx_ref_sp = - std::make_shared<ExecutionContextRef>(exe_ctx); - Status error; - StructuredData::ObjectSP obj = Dispatch("handle_stop", error, exe_ctx_ref_sp, output_sp); - - if (!ScriptedInterface::CheckStructuredDataObject(LLVM_PRETTY_FUNCTION, obj, - error)) { - if (!obj) - return true; - return error.ToError(); - } - - return obj->GetBooleanValue(); -} - - -void ScriptedStopHookPythonInterface::Initialize() { - const std::vector<llvm::StringRef> ci_usages = { - "target stop-hook add -P <script-name> [-k key -v value ...]"}; - const std::vector<llvm::StringRef> api_usages = {}; - PluginManager::RegisterPlugin( - GetPluginNameStatic(), - llvm::StringRef("Perform actions whenever the process stops, before control is returned to the user."), - CreateInstance, eScriptLanguagePython, {ci_usages, api_usages}); -} - -void ScriptedStopHookPythonInterface::Terminate() { - PluginManager::UnregisterPlugin(CreateInstance); -} - -#endif |
