LLDB mainline
ScriptedFramePythonInterface.h
Go to the documentation of this file.
1//===----------------------------------------------------------------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLDB_SOURCE_PLUGINS_SCRIPTINTERPRETER_PYTHON_INTERFACES_SCRIPTEDFRAMEPYTHONINTERFACE_H
10#define LLDB_SOURCE_PLUGINS_SCRIPTINTERPRETER_PYTHON_INTERFACES_SCRIPTEDFRAMEPYTHONINTERFACE_H
11
14#include <optional>
15
16namespace lldb_private {
19public:
21
22 llvm::Expected<StructuredData::GenericSP>
23 CreatePluginObject(llvm::StringRef class_name, ExecutionContext &exe_ctx,
25 StructuredData::Generic *script_obj = nullptr) override;
26
27 llvm::SmallVector<AbstractMethodRequirement>
29 return llvm::SmallVector<AbstractMethodRequirement>({{"get_id"}});
30 }
31
32 lldb::user_id_t GetID() override;
33
34 lldb::addr_t GetPC() override;
35
36 std::optional<SymbolContext> GetSymbolContext() override;
37
38 std::optional<std::string> GetFunctionName() override;
39
40 std::optional<std::string> GetDisplayFunctionName() override;
41
42 bool IsInlined() override;
43
44 bool IsArtificial() override;
45
46 bool IsHidden() override;
47
49
50 std::optional<std::string> GetRegisterContext() override;
51
53
55 GetValueObjectForVariableExpression(llvm::StringRef expr, uint32_t options,
56 Status &status) override;
57};
58} // namespace lldb_private
59
60#endif // LLDB_SOURCE_PLUGINS_SCRIPTINTERPRETER_PYTHON_INTERFACES_SCRIPTEDFRAMEPYTHONINTERFACE_H
"lldb/Target/ExecutionContext.h" A class that contains an execution context.
std::optional< std::string > GetRegisterContext() override
std::optional< std::string > GetDisplayFunctionName() override
llvm::SmallVector< AbstractMethodRequirement > GetAbstractMethodRequirements() const override
std::optional< SymbolContext > GetSymbolContext() override
StructuredData::DictionarySP GetRegisterInfo() override
lldb::ValueObjectSP GetValueObjectForVariableExpression(llvm::StringRef expr, uint32_t options, Status &status) override
std::optional< std::string > GetFunctionName() override
llvm::Expected< StructuredData::GenericSP > CreatePluginObject(llvm::StringRef class_name, ExecutionContext &exe_ctx, StructuredData::DictionarySP args_sp, StructuredData::Generic *script_obj=nullptr) override
ScriptedFramePythonInterface(ScriptInterpreterPythonImpl &interpreter)
ScriptedPythonInterface(ScriptInterpreterPythonImpl &interpreter)
An error handling class.
Definition Status.h:118
std::shared_ptr< Dictionary > DictionarySP
A class that represents a running process on the host machine.
std::shared_ptr< lldb_private::ValueObject > ValueObjectSP
std::shared_ptr< lldb_private::ValueObjectList > ValueObjectListSP
uint64_t user_id_t
Definition lldb-types.h:82
uint64_t addr_t
Definition lldb-types.h:80