LLDB mainline
|
Class that provides a registry of known stack frame recognizers. More...
#include <StackFrameRecognizer.h>
Classes | |
struct | RegisteredEntry |
Public Member Functions | |
void | AddRecognizer (lldb::StackFrameRecognizerSP recognizer, ConstString module, llvm::ArrayRef< ConstString > symbols, bool first_instruction_only=true) |
void | AddRecognizer (lldb::StackFrameRecognizerSP recognizer, lldb::RegularExpressionSP module, lldb::RegularExpressionSP symbol, bool first_instruction_only=true) |
void | ForEach (std::function< void(uint32_t recognizer_id, std::string recognizer_name, std::string module, llvm::ArrayRef< ConstString > symbols, bool regexp)> const &callback) |
bool | RemoveRecognizerWithID (uint32_t recognizer_id) |
void | RemoveAllRecognizers () |
lldb::StackFrameRecognizerSP | GetRecognizerForFrame (lldb::StackFrameSP frame) |
lldb::RecognizedStackFrameSP | RecognizeFrame (lldb::StackFrameSP frame) |
Private Attributes | |
std::deque< RegisteredEntry > | m_recognizers |
Class that provides a registry of known stack frame recognizers.
Definition at line 103 of file StackFrameRecognizer.h.
void StackFrameRecognizerManager::AddRecognizer | ( | lldb::StackFrameRecognizerSP | recognizer, |
ConstString | module, | ||
llvm::ArrayRef< ConstString > | symbols, | ||
bool | first_instruction_only = true |
||
) |
Definition at line 50 of file StackFrameRecognizer.cpp.
References m_recognizers.
Referenced by CommandObjectFrameRecognizerAdd::DoExecute(), lldb_private::RegisterAbortWithPayloadFrameRecognizer(), lldb_private::RegisterAssertFrameRecognizer(), RegisterObjCExceptionRecognizer(), and lldb_private::RegisterVerboseTrapFrameRecognizer().
void StackFrameRecognizerManager::AddRecognizer | ( | lldb::StackFrameRecognizerSP | recognizer, |
lldb::RegularExpressionSP | module, | ||
lldb::RegularExpressionSP | symbol, | ||
bool | first_instruction_only = true |
||
) |
Definition at line 58 of file StackFrameRecognizer.cpp.
References m_recognizers.
void StackFrameRecognizerManager::ForEach | ( | std::function< void(uint32_t recognizer_id, std::string recognizer_name, std::string module, llvm::ArrayRef< ConstString > symbols, bool regexp)> const & | callback | ) |
Definition at line 66 of file StackFrameRecognizer.cpp.
References m_recognizers.
Referenced by CommandObjectFrameRecognizerList::DoExecute(), and CommandObjectFrameRecognizerDelete::HandleArgumentCompletion().
StackFrameRecognizerSP StackFrameRecognizerManager::GetRecognizerForFrame | ( | lldb::StackFrameSP | frame | ) |
Definition at line 108 of file StackFrameRecognizer.cpp.
References lldb_private::Symbol::GetAddress(), lldb_private::SymbolContext::GetFunctionName(), lldb_private::ConstString::GetStringRef(), m_recognizers, lldb_private::SymbolContext::module_sp, and lldb_private::SymbolContext::symbol.
Referenced by CommandObjectFrameRecognizerInfo::DoExecute(), and RecognizeFrame().
RecognizedStackFrameSP StackFrameRecognizerManager::RecognizeFrame | ( | lldb::StackFrameSP | frame | ) |
Definition at line 149 of file StackFrameRecognizer.cpp.
References GetRecognizerForFrame().
void StackFrameRecognizerManager::RemoveAllRecognizers | ( | ) |
Definition at line 103 of file StackFrameRecognizer.cpp.
References m_recognizers.
Referenced by CommandObjectFrameRecognizerClear::DoExecute(), and CommandObjectFrameRecognizerDelete::DoExecute().
bool StackFrameRecognizerManager::RemoveRecognizerWithID | ( | uint32_t | recognizer_id | ) |
Definition at line 89 of file StackFrameRecognizer.cpp.
References m_recognizers, and lldb_private::StackFrameRecognizerManager::RegisteredEntry::recognizer_id.
|
private |
Definition at line 139 of file StackFrameRecognizer.h.
Referenced by AddRecognizer(), ForEach(), GetRecognizerForFrame(), RemoveAllRecognizers(), and RemoveRecognizerWithID().