LLDB mainline
lldb_private::IDebugDelegate Class Referenceabstract

#include <IDebugDelegate.h>

Inheritance diagram for lldb_private::IDebugDelegate:
[legend]

Public Member Functions

virtual ~IDebugDelegate ()=default
virtual void OnExitProcess (uint32_t exit_code)=0
virtual void OnDebuggerConnected (lldb::addr_t image_base)=0
virtual ExceptionResult OnDebugException (bool first_chance, const ExceptionRecord &record)=0
virtual void OnCreateThread (const HostThread &thread)=0
virtual void OnExitThread (lldb::tid_t thread_id, uint32_t exit_code)=0
virtual DllEventAction OnLoadDll (const ModuleSpec &module_spec, lldb::addr_t module_addr, lldb::tid_t thread_id)=0
virtual DllEventAction OnUnloadDll (lldb::addr_t module_addr, lldb::tid_t thread_id)=0
virtual bool HasDeferredStop ()
 Whether the delegate has a stop that it recorded but has not reported to its client yet.
virtual void ReportDeferredStop ()
 Report the stop the delegate holds, if any.
virtual void OnDebugString (lldb::addr_t debug_string_addr, bool is_unicode, uint16_t length_lower_word)=0
virtual void OnDebuggerError (const Status &error, uint32_t type)=0

Detailed Description

Definition at line 25 of file IDebugDelegate.h.

Constructor & Destructor Documentation

◆ ~IDebugDelegate()

virtual lldb_private::IDebugDelegate::~IDebugDelegate ( )
virtualdefault

Member Function Documentation

◆ HasDeferredStop()

virtual bool lldb_private::IDebugDelegate::HasDeferredStop ( )
inlinevirtual

Whether the delegate has a stop that it recorded but has not reported to its client yet.

While this is true, DebuggerThread keeps taking the debug events that are already queued, so they are reported in the same stop.

Reimplemented in lldb_private::NativeDebugDelegate.

Definition at line 44 of file IDebugDelegate.h.

◆ OnCreateThread()

virtual void lldb_private::IDebugDelegate::OnCreateThread ( const HostThread & thread)
pure virtual

◆ OnDebugException()

virtual ExceptionResult lldb_private::IDebugDelegate::OnDebugException ( bool first_chance,
const ExceptionRecord & record )
pure virtual

◆ OnDebuggerConnected()

virtual void lldb_private::IDebugDelegate::OnDebuggerConnected ( lldb::addr_t image_base)
pure virtual

◆ OnDebuggerError()

virtual void lldb_private::IDebugDelegate::OnDebuggerError ( const Status & error,
uint32_t type )
pure virtual

◆ OnDebugString()

virtual void lldb_private::IDebugDelegate::OnDebugString ( lldb::addr_t debug_string_addr,
bool is_unicode,
uint16_t length_lower_word )
pure virtual

◆ OnExitProcess()

virtual void lldb_private::IDebugDelegate::OnExitProcess ( uint32_t exit_code)
pure virtual

◆ OnExitThread()

virtual void lldb_private::IDebugDelegate::OnExitThread ( lldb::tid_t thread_id,
uint32_t exit_code )
pure virtual

◆ OnLoadDll()

virtual DllEventAction lldb_private::IDebugDelegate::OnLoadDll ( const ModuleSpec & module_spec,
lldb::addr_t module_addr,
lldb::tid_t thread_id )
pure virtual

◆ OnUnloadDll()

virtual DllEventAction lldb_private::IDebugDelegate::OnUnloadDll ( lldb::addr_t module_addr,
lldb::tid_t thread_id )
pure virtual

◆ ReportDeferredStop()

virtual void lldb_private::IDebugDelegate::ReportDeferredStop ( )
inlinevirtual

Report the stop the delegate holds, if any.

Reimplemented in lldb_private::NativeDebugDelegate.

Definition at line 46 of file IDebugDelegate.h.


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