|
LLDB mainline
|
#include <ScriptedFrameProvider.h>
Public Member Functions | |
| ScriptedFrameProvider (lldb::StackFrameListSP input_frames, lldb::ScriptedFrameProviderInterfaceSP interface_sp, const ScriptedFrameProviderDescriptor &descriptor) | |
| ~ScriptedFrameProvider () override | |
| llvm::StringRef | GetPluginName () override |
| std::string | GetDescription () const override |
| std::optional< uint32_t > | GetPriority () const override |
| Get the priority of this frame provider. | |
| llvm::Expected< lldb::StackFrameSP > | GetFrameAtIndex (uint32_t idx) override |
| Get a single stack frame at the specified index. | |
| Public Member Functions inherited from lldb_private::SyntheticFrameProvider | |
| ~SyntheticFrameProvider () override | |
| Thread & | GetThread () |
| Get the thread associated with this provider. | |
| lldb::StackFrameListSP | GetInputFrames () const |
| Get the input frames that this provider transforms. | |
| Public Member Functions inherited from lldb_private::PluginInterface | |
| PluginInterface ()=default | |
| virtual | ~PluginInterface ()=default |
| PluginInterface (const PluginInterface &)=delete | |
| PluginInterface & | operator= (const PluginInterface &)=delete |
Static Public Member Functions | |
| static llvm::StringRef | GetPluginNameStatic () |
| static llvm::Expected< lldb::SyntheticFrameProviderSP > | CreateInstance (lldb::StackFrameListSP input_frames, const ScriptedFrameProviderDescriptor &descriptor) |
| static void | Initialize () |
| static void | Terminate () |
| Static Public Member Functions inherited from lldb_private::SyntheticFrameProvider | |
| static llvm::Expected< lldb::SyntheticFrameProviderSP > | CreateInstance (lldb::StackFrameListSP input_frames, const ScriptedFrameProviderDescriptor &descriptor) |
| Try to create a SyntheticFrameProvider instance for the given input frames and descriptor. | |
| static llvm::Expected< lldb::SyntheticFrameProviderSP > | CreateInstance (lldb::StackFrameListSP input_frames, llvm::StringRef plugin_name, const std::vector< ThreadSpec > &thread_specs={}) |
| Try to create a SyntheticFrameProvider instance for the given input frames using a specific C++ plugin. | |
Private Attributes | |
| lldb::ScriptedFrameProviderInterfaceSP | m_interface_sp |
| const ScriptedFrameProviderDescriptor & | m_descriptor |
Additional Inherited Members | |
| Protected Member Functions inherited from lldb_private::SyntheticFrameProvider | |
| SyntheticFrameProvider (lldb::StackFrameListSP input_frames) | |
| Protected Attributes inherited from lldb_private::SyntheticFrameProvider | |
| lldb::StackFrameListSP | m_input_frames |
Definition at line 20 of file ScriptedFrameProvider.h.
| ScriptedFrameProvider::ScriptedFrameProvider | ( | lldb::StackFrameListSP | input_frames, |
| lldb::ScriptedFrameProviderInterfaceSP | interface_sp, | ||
| const ScriptedFrameProviderDescriptor & | descriptor ) |
Definition at line 93 of file ScriptedFrameProvider.cpp.
References m_descriptor, m_interface_sp, and lldb_private::SyntheticFrameProvider::SyntheticFrameProvider().
|
overridedefault |
|
static |
Definition at line 38 of file ScriptedFrameProvider.cpp.
References lldb_private::ScriptedFrameProviderDescriptor::AppliesToThread(), lldb_private::ScriptInterpreter::CreateScriptedFrameProviderInterface(), lldb_private::ScriptedFrameProviderDescriptor::IsValid(), and lldb_private::ScriptedFrameProviderDescriptor::scripted_metadata_sp.
Referenced by Initialize(), and Terminate().
|
overridevirtual |
Implements lldb_private::SyntheticFrameProvider.
Definition at line 102 of file ScriptedFrameProvider.cpp.
References m_descriptor, and m_interface_sp.
|
overridevirtual |
Get a single stack frame at the specified index.
Implements lldb_private::SyntheticFrameProvider.
Definition at line 117 of file ScriptedFrameProvider.cpp.
References lldb_private::Address::CalculateSymbolContext(), lldb_private::ScriptedFrame::Create(), error(), lldb_private::ScriptedInterface::ErrorWithMessage(), lldb_private::SyntheticFrameProvider::GetThread(), lldb_private::StructuredData::Dictionary::GetValueForKeyAsInteger(), LLDB_INVALID_ADDRESS, lldb_private::SyntheticFrameProvider::m_input_frames, m_interface_sp, pc, lldb_private::Address::SetLoadAddress(), lldb_private::StackFrame::Synthetic, and lldb_private::toString().
|
inlineoverridevirtual |
Implements lldb_private::PluginInterface.
Definition at line 39 of file ScriptedFrameProvider.h.
References GetPluginNameStatic().
|
inlinestatic |
Definition at line 22 of file ScriptedFrameProvider.h.
Referenced by GetPluginName(), and Initialize().
|
overridevirtual |
Get the priority of this frame provider.
Priority determines the order in which providers are evaluated when multiple providers could apply to the same thread. Lower numbers indicate higher priority (like Unix nice values).
Reimplemented from lldb_private::SyntheticFrameProvider.
Definition at line 109 of file ScriptedFrameProvider.cpp.
References m_descriptor, and m_interface_sp.
|
static |
Definition at line 27 of file ScriptedFrameProvider.cpp.
References CreateInstance(), GetPluginNameStatic(), and lldb_private::PluginManager::RegisterPlugin().
Referenced by lldb_private::lldb_initialize_ScriptedFrameProvider().
|
static |
Definition at line 33 of file ScriptedFrameProvider.cpp.
References CreateInstance(), and lldb_private::PluginManager::UnregisterPlugin().
Referenced by lldb_private::lldb_terminate_ScriptedFrameProvider().
|
private |
Definition at line 50 of file ScriptedFrameProvider.h.
Referenced by GetDescription(), GetPriority(), and ScriptedFrameProvider().
|
private |
Definition at line 49 of file ScriptedFrameProvider.h.
Referenced by GetDescription(), GetFrameAtIndex(), GetPriority(), and ScriptedFrameProvider().