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

Classes

class  ThreadPlanStepOverWatchpoint
class  WatchpointSentry

Public Member Functions

 StopInfoWatchpoint (Thread &thread, break_id_t watch_id, bool silently_skip_wp)
 ~StopInfoWatchpoint () override=default
StopReason GetStopReason () const override
uint32_t GetStopReasonDataCount () const override
uint64_t GetStopReasonDataAtIndex (uint32_t idx) override
const char * GetDescription () override
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
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 std::optional< uint32_t > GetSuggestedStackFrameIndex (bool inlined_stack)
 This gives the StopInfo a chance to suggest a stack frame to select.
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.
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.

Protected Types

using StopInfoWatchpointSP = std::shared_ptr<StopInfoWatchpoint>

Protected Member Functions

bool ShouldStopSynchronous (Event *event_ptr) override
bool ShouldStop (Event *event_ptr) override
void PerformAction (Event *event_ptr) override
Protected Member Functions inherited from lldb_private::StopInfo
virtual bool DoShouldNotify (Event *event_ptr)
bool HasTargetRunSinceMe ()
void MakeStopInfoValid ()

Private Member Functions

void SetStepOverPlanComplete ()

Private Attributes

bool m_should_stop = false
bool m_should_stop_is_valid = false
bool m_silently_skip_wp = false
bool m_step_over_plan_complete = false
bool m_using_step_over_plan = false

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 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 686 of file StopInfo.cpp.

Member Typedef Documentation

◆ StopInfoWatchpointSP

Definition at line 756 of file StopInfo.cpp.

Constructor & Destructor Documentation

◆ StopInfoWatchpoint()

lldb_private::StopInfoWatchpoint::StopInfoWatchpoint ( Thread & thread,
break_id_t watch_id,
bool silently_skip_wp )
inline

◆ ~StopInfoWatchpoint()

lldb_private::StopInfoWatchpoint::~StopInfoWatchpoint ( )
overridedefault

Member Function Documentation

◆ GetDescription()

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

◆ GetStopReason()

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

Implements lldb_private::StopInfo.

Definition at line 737 of file StopInfo.cpp.

References lldb::eStopReasonWatchpoint.

◆ GetStopReasonDataAtIndex()

uint64_t lldb_private::StopInfoWatchpoint::GetStopReasonDataAtIndex ( uint32_t idx)
inlineoverridevirtual

Reimplemented from lldb_private::StopInfo.

Definition at line 740 of file StopInfo.cpp.

References lldb_private::StopInfo::GetValue().

◆ GetStopReasonDataCount()

uint32_t lldb_private::StopInfoWatchpoint::GetStopReasonDataCount ( ) const
inlineoverridevirtual

Reimplemented from lldb_private::StopInfo.

Definition at line 739 of file StopInfo.cpp.

◆ PerformAction()

◆ SetStepOverPlanComplete()

void lldb_private::StopInfoWatchpoint::SetStepOverPlanComplete ( )
inlineprivate

Definition at line 1089 of file StopInfo.cpp.

References m_step_over_plan_complete, and m_using_step_over_plan.

◆ ShouldStop()

bool lldb_private::StopInfoWatchpoint::ShouldStop ( Event * event_ptr)
inlineoverrideprotectedvirtual

Reimplemented from lldb_private::StopInfo.

Definition at line 932 of file StopInfo.cpp.

References m_should_stop, and m_should_stop_is_valid.

◆ ShouldStopSynchronous()

Member Data Documentation

◆ m_should_stop

bool lldb_private::StopInfoWatchpoint::m_should_stop = false
private

Definition at line 1094 of file StopInfo.cpp.

Referenced by PerformAction(), ShouldStop(), and ShouldStopSynchronous().

◆ m_should_stop_is_valid

bool lldb_private::StopInfoWatchpoint::m_should_stop_is_valid = false
private

Definition at line 1095 of file StopInfo.cpp.

Referenced by PerformAction(), ShouldStop(), and ShouldStopSynchronous().

◆ m_silently_skip_wp

bool lldb_private::StopInfoWatchpoint::m_silently_skip_wp = false
private

Definition at line 1106 of file StopInfo.cpp.

Referenced by PerformAction(), and StopInfoWatchpoint().

◆ m_step_over_plan_complete

bool lldb_private::StopInfoWatchpoint::m_step_over_plan_complete = false
private

Definition at line 1107 of file StopInfo.cpp.

Referenced by SetStepOverPlanComplete(), and ShouldStopSynchronous().

◆ m_using_step_over_plan

bool lldb_private::StopInfoWatchpoint::m_using_step_over_plan = false
private

Definition at line 1108 of file StopInfo.cpp.

Referenced by SetStepOverPlanComplete(), and ShouldStopSynchronous().


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