LLDB mainline
lldb_private::StopInfoTrace Class Reference
Inheritance diagram for lldb_private::StopInfoTrace:
[legend]

Public Member Functions

 StopInfoTrace (Thread &thread)
 ~StopInfoTrace () override=default
StopReason GetStopReason () const override
const char * GetDescription () override
std::optional< uint32_t > GetSuggestedStackFrameIndex (bool inlined_stack) override
 This gives the StopInfo a chance to suggest a stack frame to select.
Public Member Functions inherited from lldb_private::StopInfo
 StopInfo (Thread &thread, uint64_t value)
virtual ~StopInfo ()=default
bool IsValid () const
void SetThread (const lldb::ThreadSP &thread_sp)
lldb::ThreadSP GetThread () const
uint64_t GetValue () const
virtual bool ShouldStopSynchronous (Event *event_ptr)
void OverrideShouldNotify (bool override_value)
virtual bool ShouldNotify (Event *event_ptr)
virtual void WillResume (lldb::StateType resume_state)
virtual void SetDescription (const char *desc_cstr)
virtual bool IsValidForOperatingSystemThread (Thread &thread)
virtual bool WasContinueInterrupted (Thread &thread)
 A Continue operation can result in a false stop event before any execution has happened.
virtual uint32_t GetStopReasonDataCount () const
virtual uint64_t GetStopReasonDataAtIndex (uint32_t idx)
void OverrideShouldStop (bool override_value)
bool GetOverrideShouldStop ()
bool GetOverriddenShouldStopValue ()
StructuredData::ObjectSP GetExtendedInfo ()
virtual bool ShouldShow () const
 Returns true if this is a stop reason that should be shown to a user when viewing the thread with this stop info.
virtual bool ShouldSelect () const
 Returns true if this is a stop reason that should cause a thread to be selected when stopping.

Additional Inherited Members

Static Public Member Functions inherited from lldb_private::StopInfo
static lldb::StopInfoSP CreateStopReasonWithBreakpointSiteID (Thread &thread, lldb::break_id_t break_id)
static lldb::StopInfoSP CreateStopReasonWithBreakpointSiteID (Thread &thread, lldb::break_id_t break_id, bool should_stop)
static lldb::StopInfoSP CreateStopReasonWithWatchpointID (Thread &thread, lldb::break_id_t watch_id, bool silently_continue=false)
static lldb::StopInfoSP CreateStopReasonWithSignal (Thread &thread, int signo, const char *description=nullptr, std::optional< int > code=std::nullopt)
static lldb::StopInfoSP CreateStopReasonWithInterrupt (Thread &thread, int signo, const char *description)
static lldb::StopInfoSP CreateStopReasonToTrace (Thread &thread)
static lldb::StopInfoSP CreateStopReasonWithPlan (lldb::ThreadPlanSP &plan, lldb::ValueObjectSP return_valobj_sp, lldb::ExpressionVariableSP expression_variable_sp)
static lldb::StopInfoSP CreateStopReasonWithException (Thread &thread, const char *description)
static lldb::StopInfoSP CreateStopReasonWithExec (Thread &thread)
static lldb::StopInfoSP CreateStopReasonProcessorTrace (Thread &thread, const char *description)
static lldb::StopInfoSP CreateStopReasonHistoryBoundary (Thread &thread, const char *description)
static lldb::StopInfoSP CreateStopReasonFork (Thread &thread, lldb::pid_t child_pid, lldb::tid_t child_tid)
static lldb::StopInfoSP CreateStopReasonVFork (Thread &thread, lldb::pid_t child_pid, lldb::tid_t child_tid)
static lldb::StopInfoSP CreateStopReasonVForkDone (Thread &thread)
static lldb::ValueObjectSP GetReturnValueObject (lldb::StopInfoSP &stop_info_sp)
static lldb::ExpressionVariableSP GetExpressionVariable (lldb::StopInfoSP &stop_info_sp)
static lldb::ValueObjectSP GetCrashingDereference (lldb::StopInfoSP &stop_info_sp, lldb::addr_t *crashing_address=nullptr)
Protected Member Functions inherited from lldb_private::StopInfo
virtual void PerformAction (Event *event_ptr)
virtual bool DoShouldNotify (Event *event_ptr)
virtual bool ShouldStop (Event *event_ptr)
bool HasTargetRunSinceMe ()
void MakeStopInfoValid ()
Protected Attributes inherited from lldb_private::StopInfo
lldb::ThreadWP m_thread_wp
uint32_t m_stop_id
uint32_t m_resume_id
uint64_t m_value
std::string m_description
LazyBool m_override_should_notify
LazyBool m_override_should_stop
StructuredData::ObjectSP m_extended_info

Detailed Description

Definition at line 1237 of file StopInfo.cpp.

Constructor & Destructor Documentation

◆ StopInfoTrace()

lldb_private::StopInfoTrace::StopInfoTrace ( Thread & thread)
inline

◆ ~StopInfoTrace()

lldb_private::StopInfoTrace::~StopInfoTrace ( )
overridedefault

Member Function Documentation

◆ GetDescription()

const char * lldb_private::StopInfoTrace::GetDescription ( )
inlineoverridevirtual

Reimplemented from lldb_private::StopInfo.

Definition at line 1245 of file StopInfo.cpp.

References lldb_private::StopInfo::m_description.

◆ GetStopReason()

StopReason lldb_private::StopInfoTrace::GetStopReason ( ) const
inlineoverridevirtual

Implements lldb_private::StopInfo.

Definition at line 1243 of file StopInfo.cpp.

References lldb::eStopReasonTrace.

◆ GetSuggestedStackFrameIndex()

std::optional< uint32_t > lldb_private::StopInfoTrace::GetSuggestedStackFrameIndex ( bool inlined_stack)
inlineoverridevirtual

This gives the StopInfo a chance to suggest a stack frame to select.

Passing true for inlined_stack will request changes to the inlined call stack. Passing false will request changes to the real stack frame. The inlined stack gets adjusted before we call into the thread plans so they can reason based on the correct values. The real stack adjustment is handled after the frame recognizers get a chance to adjust the frame.

Reimplemented from lldb_private::StopInfo.

Definition at line 1253 of file StopInfo.cpp.

References lldb_private::AddressRange::GetBaseAddress(), lldb_private::Block::GetInlinedParent(), lldb_private::Block::GetRangeContainingAddress(), and lldb_private::StopInfo::GetThread().


The documentation for this class was generated from the following file: