LLDB mainline
ScriptedFrameInterface.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_INTERPRETER_INTERFACES_SCRIPTEDFRAMEINTERFACE_H
10#define LLDB_INTERPRETER_INTERFACES_SCRIPTEDFRAMEINTERFACE_H
11
12#include "ScriptedInterface.h"
15#include "lldb/lldb-private.h"
16#include <optional>
17#include <string>
18
19namespace lldb_private {
21public:
22 virtual llvm::Expected<StructuredData::GenericSP>
23 CreatePluginObject(llvm::StringRef class_name, ExecutionContext &exe_ctx,
25 StructuredData::Generic *script_obj = nullptr) = 0;
26
28
30
31 virtual std::optional<SymbolContext> GetSymbolContext() {
32 return std::nullopt;
33 }
34
35 virtual std::optional<std::string> GetFunctionName() { return std::nullopt; }
36
37 virtual std::optional<std::string> GetDisplayFunctionName() {
38 return std::nullopt;
39 }
40
41 virtual bool IsInlined() { return false; }
42
43 virtual bool IsArtificial() { return false; }
44
45 virtual bool IsHidden() { return false; }
46
48
49 virtual std::optional<std::string> GetRegisterContext() {
50 return std::nullopt;
51 }
52};
53} // namespace lldb_private
54
55#endif // LLDB_INTERPRETER_INTERFACES_SCRIPTEDFRAMEINTERFACE_H
"lldb/Target/ExecutionContext.h" A class that contains an execution context.
virtual StructuredData::DictionarySP GetRegisterInfo()
virtual llvm::Expected< StructuredData::GenericSP > CreatePluginObject(llvm::StringRef class_name, ExecutionContext &exe_ctx, StructuredData::DictionarySP args_sp, StructuredData::Generic *script_obj=nullptr)=0
virtual std::optional< std::string > GetRegisterContext()
virtual std::optional< std::string > GetDisplayFunctionName()
virtual std::optional< std::string > GetFunctionName()
virtual std::optional< SymbolContext > GetSymbolContext()
std::shared_ptr< Dictionary > DictionarySP
#define LLDB_INVALID_ADDRESS
#define LLDB_INVALID_FRAME_ID
A class that represents a running process on the host machine.
uint64_t user_id_t
Definition lldb-types.h:82
uint64_t addr_t
Definition lldb-types.h:80