9#ifndef LLDB_PLUGINS_SCRIPTINTERPRETER_PYTHON_SCRIPTINTERPRETERPYTHON_H
10#define LLDB_PLUGINS_SCRIPTINTERPRETER_PYTHON_SCRIPTINTERPRETERPYTHON_H
12#include "lldb/Host/Config.h"
28class ScriptInterpreterPython :
public ScriptInterpreter,
29 public IOHandlerDelegateMultiline {
31 class CommandDataPython :
public BreakpointOptions::CommandData {
33 CommandDataPython() : BreakpointOptions::CommandData() {
36 CommandDataPython(StructuredData::ObjectSP extra_args_sp)
37 : BreakpointOptions::CommandData(),
38 m_extra_args(std::move(extra_args_sp)) {
41 StructuredDataImpl m_extra_args;
44 ScriptInterpreterPython(Debugger &debugger)
46 IOHandlerDelegateMultiline(
"DONE") {}
48 StructuredData::DictionarySP GetInterpreterInfo()
override;
49 static void Initialize();
50 static void Terminate();
51 static llvm::StringRef GetPluginNameStatic() {
return "script-python"; }
52 static llvm::StringRef GetPluginDescriptionStatic();
53 static FileSpec GetPythonDir();
54 static void SharedLibraryDirectoryHelper(FileSpec &this_file);
A class that represents a running process on the host machine.