9#ifndef LLDB_PLUGINS_SCRIPTINTERPRETER_PYTHON_INTERFACES_SCRIPTEDPLATFORMPYTHONINTERFACE_H
10#define LLDB_PLUGINS_SCRIPTINTERPRETER_PYTHON_INTERFACES_SCRIPTEDPLATFORMPYTHONINTERFACE_H
12#include "lldb/Host/Config.h"
20class ScriptedPlatformPythonInterface :
public ScriptedPlatformInterface,
21 public ScriptedPythonInterface {
23 ScriptedPlatformPythonInterface(ScriptInterpreterPythonImpl &interpreter);
25 llvm::Expected<StructuredData::GenericSP>
26 CreatePluginObject(
const llvm::StringRef class_name,
27 ExecutionContext &exe_ctx,
28 StructuredData::DictionarySP args_sp,
29 StructuredData::Generic *script_obj =
nullptr)
override;
31 llvm::SmallVector<llvm::StringLiteral> GetAbstractMethods()
const override {
32 return llvm::SmallVector<llvm::StringLiteral>(
33 {
"list_processes",
"attach_to_process",
"launch_process",
37 StructuredData::DictionarySP ListProcesses()
override;
39 StructuredData::DictionarySP GetProcessInfo(
lldb::pid_t)
override;
static Status AttachToProcess(ProcessAttachInfo &attach_info, Target &target)
A class that represents a running process on the host machine.
std::shared_ptr< lldb_private::ProcessAttachInfo > ProcessAttachInfoSP
std::shared_ptr< lldb_private::ProcessLaunchInfo > ProcessLaunchInfoSP