LLDB mainline
|
A class to manage flag bits. More...
#include "lldb/Core/Debugger.h"
Public Types | |
enum | { eBroadcastBitProgress = (1 << 0) , eBroadcastBitWarning = (1 << 1) , eBroadcastBitError = (1 << 2) , eBroadcastSymbolChange = (1 << 3) } |
Broadcaster event bits definitions. More... | |
enum | StopDisassemblyType { eStopDisassemblyTypeNever = 0 , eStopDisassemblyTypeNoDebugInfo , eStopDisassemblyTypeNoSource , eStopDisassemblyTypeAlways } |
Public Member Functions | |
Broadcaster & | GetBroadcaster () |
Get the public broadcaster for this debugger. | |
const Broadcaster & | GetBroadcaster () const |
~Debugger () override | |
void | Clear () |
bool | GetAsyncExecution () |
void | SetAsyncExecution (bool async) |
lldb::FileSP | GetInputFileSP () |
lldb::StreamFileSP | GetOutputStreamSP () |
lldb::StreamFileSP | GetErrorStreamSP () |
File & | GetInputFile () |
File & | GetOutputFile () |
File & | GetErrorFile () |
StreamFile & | GetOutputStream () |
StreamFile & | GetErrorStream () |
repro::DataRecorder * | GetInputRecorder () |
Status | SetInputString (const char *data) |
void | SetInputFile (lldb::FileSP file) |
void | SetOutputFile (lldb::FileSP file) |
void | SetErrorFile (lldb::FileSP file) |
void | SaveInputTerminalState () |
void | RestoreInputTerminalState () |
lldb::StreamSP | GetAsyncOutputStream () |
lldb::StreamSP | GetAsyncErrorStream () |
CommandInterpreter & | GetCommandInterpreter () |
ScriptInterpreter * | GetScriptInterpreter (bool can_create=true, std::optional< lldb::ScriptLanguage > language={}) |
lldb::ListenerSP | GetListener () |
SourceManager & | GetSourceManager () |
lldb::TargetSP | GetSelectedTarget () |
ExecutionContext | GetSelectedExecutionContext () |
TargetList & | GetTargetList () |
Get accessor for the target list. | |
PlatformList & | GetPlatformList () |
void | DispatchInputInterrupt () |
void | DispatchInputEndOfFile () |
void | AdoptTopIOHandlerFilesIfInvalid (lldb::FileSP &in, lldb::StreamFileSP &out, lldb::StreamFileSP &err) |
void | RunIOHandlerAsync (const lldb::IOHandlerSP &reader_sp, bool cancel_top_handler=true) |
Run the given IO handler and return immediately. | |
void | RunIOHandlerSync (const lldb::IOHandlerSP &reader_sp) |
Run the given IO handler and block until it's complete. | |
bool | RemoveIOHandler (const lldb::IOHandlerSP &reader_sp) |
Remove the given IO handler if it's currently active. | |
bool | IsTopIOHandler (const lldb::IOHandlerSP &reader_sp) |
bool | CheckTopIOHandlerTypes (IOHandler::Type top_type, IOHandler::Type second_top_type) |
void | PrintAsync (const char *s, size_t len, bool is_stdout) |
ConstString | GetTopIOHandlerControlSequence (char ch) |
const char * | GetIOHandlerCommandPrefix () |
const char * | GetIOHandlerHelpPrologue () |
void | ClearIOHandlers () |
bool | GetCloseInputOnEOF () const |
void | SetCloseInputOnEOF (bool b) |
bool | EnableLog (llvm::StringRef channel, llvm::ArrayRef< const char * > categories, llvm::StringRef log_file, uint32_t log_options, size_t buffer_size, LogHandlerKind log_handler_kind, llvm::raw_ostream &error_stream) |
void | SetLoggingCallback (lldb::LogOutputCallback log_callback, void *baton) |
Status | SetPropertyValue (const ExecutionContext *exe_ctx, VarSetOperationType op, llvm::StringRef property_path, llvm::StringRef value) override |
bool | GetAutoConfirm () const |
const FormatEntity::Entry * | GetDisassemblyFormat () const |
const FormatEntity::Entry * | GetFrameFormat () const |
const FormatEntity::Entry * | GetFrameFormatUnique () const |
uint32_t | GetStopDisassemblyMaxSize () const |
const FormatEntity::Entry * | GetThreadFormat () const |
const FormatEntity::Entry * | GetThreadStopFormat () const |
lldb::ScriptLanguage | GetScriptLanguage () const |
bool | SetScriptLanguage (lldb::ScriptLanguage script_lang) |
lldb::LanguageType | GetREPLLanguage () const |
bool | SetREPLLanguage (lldb::LanguageType repl_lang) |
uint32_t | GetTerminalWidth () const |
bool | SetTerminalWidth (uint32_t term_width) |
llvm::StringRef | GetPrompt () const |
void | SetPrompt (llvm::StringRef p) |
void | SetPrompt (const char *)=delete |
bool | GetUseExternalEditor () const |
bool | SetUseExternalEditor (bool use_external_editor_p) |
bool | GetUseColor () const |
bool | SetUseColor (bool use_color) |
bool | GetShowProgress () const |
bool | SetShowProgress (bool show_progress) |
llvm::StringRef | GetShowProgressAnsiPrefix () const |
llvm::StringRef | GetShowProgressAnsiSuffix () const |
bool | GetUseAutosuggestion () const |
llvm::StringRef | GetAutosuggestionAnsiPrefix () const |
llvm::StringRef | GetAutosuggestionAnsiSuffix () const |
bool | GetUseSourceCache () const |
bool | SetUseSourceCache (bool use_source_cache) |
bool | GetHighlightSource () const |
lldb::StopShowColumn | GetStopShowColumn () const |
llvm::StringRef | GetStopShowColumnAnsiPrefix () const |
llvm::StringRef | GetStopShowColumnAnsiSuffix () const |
uint32_t | GetStopSourceLineCount (bool before) const |
StopDisassemblyType | GetStopDisassemblyDisplay () const |
uint32_t | GetDisassemblyLineCount () const |
llvm::StringRef | GetStopShowLineMarkerAnsiPrefix () const |
llvm::StringRef | GetStopShowLineMarkerAnsiSuffix () const |
bool | GetAutoOneLineSummaries () const |
bool | GetAutoIndent () const |
bool | SetAutoIndent (bool b) |
bool | GetPrintDecls () const |
bool | SetPrintDecls (bool b) |
uint32_t | GetTabSize () const |
bool | SetTabSize (uint32_t tab_size) |
lldb::DWIMPrintVerbosity | GetDWIMPrintVerbosity () const |
bool | GetEscapeNonPrintables () const |
bool | GetNotifyVoid () const |
ConstString | GetInstanceName () |
bool | LoadPlugin (const FileSpec &spec, Status &error) |
void | RunIOHandlers () |
bool | IsForwardingEvents () |
void | EnableForwardEvents (const lldb::ListenerSP &listener_sp) |
void | CancelForwardEvents (const lldb::ListenerSP &listener_sp) |
bool | IsHandlingEvents () const |
Status | RunREPL (lldb::LanguageType language, const char *repl_options) |
Target & | GetSelectedOrDummyTarget (bool prefer_dummy=false) |
Target & | GetDummyTarget () |
lldb::BroadcasterManagerSP | GetBroadcasterManager () |
![]() | |
UserID (lldb::user_id_t uid=LLDB_INVALID_UID) | |
Construct with optional user ID. | |
~UserID ()=default | |
Destructor. | |
void | Clear () |
Clears the object state. | |
lldb::user_id_t | GetID () const |
Get accessor for the user ID. | |
void | SetID (lldb::user_id_t uid) |
Set accessor for the user ID. | |
![]() | |
Properties ()=default | |
Properties (const lldb::OptionValuePropertiesSP &collection_sp) | |
virtual | ~Properties ()=default |
virtual lldb::OptionValuePropertiesSP | GetValueProperties () const |
virtual lldb::OptionValueSP | GetPropertyValue (const ExecutionContext *exe_ctx, llvm::StringRef property_path, bool will_modify, Status &error) const |
virtual Status | SetPropertyValue (const ExecutionContext *exe_ctx, VarSetOperationType op, llvm::StringRef property_path, llvm::StringRef value) |
virtual Status | DumpPropertyValue (const ExecutionContext *exe_ctx, Stream &strm, llvm::StringRef property_path, uint32_t dump_mask, bool is_json=false) |
virtual void | DumpAllPropertyValues (const ExecutionContext *exe_ctx, Stream &strm, uint32_t dump_mask, bool is_json=false) |
virtual void | DumpAllDescriptions (CommandInterpreter &interpreter, Stream &strm) const |
size_t | Apropos (llvm::StringRef keyword, std::vector< const Property * > &matching_properties) const |
lldb::OptionValuePropertiesSP | GetSubProperty (const ExecutionContext *exe_ctx, ConstString name) |
Static Public Member Functions | |
static ConstString | GetStaticBroadcasterClass () |
static lldb::DebuggerSP | CreateInstance (lldb::LogOutputCallback log_callback=nullptr, void *baton=nullptr) |
static lldb::TargetSP | FindTargetWithProcessID (lldb::pid_t pid) |
static lldb::TargetSP | FindTargetWithProcess (Process *process) |
static void | Initialize (LoadPluginCallbackType load_plugin_callback) |
static void | Terminate () |
static void | SettingsInitialize () |
static void | SettingsTerminate () |
static void | Destroy (lldb::DebuggerSP &debugger_sp) |
static lldb::DebuggerSP | FindDebuggerWithID (lldb::user_id_t id) |
static lldb::DebuggerSP | FindDebuggerWithInstanceName (ConstString instance_name) |
static size_t | GetNumDebuggers () |
static lldb::DebuggerSP | GetDebuggerAtIndex (size_t index) |
static bool | FormatDisassemblerAddress (const FormatEntity::Entry *format, const SymbolContext *sc, const SymbolContext *prev_sc, const ExecutionContext *exe_ctx, const Address *addr, Stream &s) |
static llvm::ThreadPool & | GetThreadPool () |
Shared thread poll. Use only with ThreadPoolTaskGroup. | |
static void | ReportWarning (std::string message, std::optional< lldb::user_id_t > debugger_id=std::nullopt, std::once_flag *once=nullptr) |
Report warning events. | |
static void | ReportError (std::string message, std::optional< lldb::user_id_t > debugger_id=std::nullopt, std::once_flag *once=nullptr) |
Report error events. | |
static void | ReportInfo (std::string message, std::optional< lldb::user_id_t > debugger_id=std::nullopt, std::once_flag *once=nullptr) |
Report info events. | |
static void | ReportSymbolChange (const ModuleSpec &module_spec) |
![]() | |
static const char * | GetExperimentalSettingsName () |
static bool | IsSettingExperimental (llvm::StringRef setting) |
Protected Types | |
enum | { eBroadcastBitEventThreadIsListening = (1 << 0) } |
typedef std::vector< llvm::sys::DynamicLibrary > | LoadedPluginsList |
Protected Member Functions | |
void | PrintProgress (const ProgressEventData &data) |
bool | StartEventHandlerThread () |
void | StopEventHandlerThread () |
void | PushIOHandler (const lldb::IOHandlerSP &reader_sp, bool cancel_top_handler=true) |
bool | PopIOHandler (const lldb::IOHandlerSP &reader_sp) |
bool | HasIOHandlerThread () |
bool | StartIOHandlerThread () |
void | StopIOHandlerThread () |
void | JoinIOHandlerThread () |
lldb::thread_result_t | IOHandlerThread () |
lldb::thread_result_t | DefaultEventHandler () |
void | HandleBreakpointEvent (const lldb::EventSP &event_sp) |
void | HandleProcessEvent (const lldb::EventSP &event_sp) |
void | HandleThreadEvent (const lldb::EventSP &event_sp) |
void | HandleProgressEvent (const lldb::EventSP &event_sp) |
void | HandleDiagnosticEvent (const lldb::EventSP &event_sp) |
void | FlushProcessOutput (Process &process, bool flush_stdout, bool flush_stderr) |
SourceManager::SourceFileCache & | GetSourceFileCache () |
void | InstanceInitialize () |
Static Protected Member Functions | |
static void | ReportProgress (uint64_t progress_id, const std::string &message, uint64_t completed, uint64_t total, std::optional< lldb::user_id_t > debugger_id) |
Report progress events. | |
static void | ReportDiagnosticImpl (DiagnosticEventData::Type type, std::string message, std::optional< lldb::user_id_t > debugger_id, std::once_flag *once) |
Static Protected Attributes | |
static LoadPluginCallbackType | g_load_plugin_callback = nullptr |
Private Member Functions | |
Debugger (lldb::LogOutputCallback m_log_callback, void *baton) | |
Debugger (const Debugger &)=delete | |
const Debugger & | operator= (const Debugger &)=delete |
Friends | |
class | SourceManager |
class | CommandInterpreter |
class | REPL |
class | Progress |
A class to manage flag bits.
Provides a global root objects for the debugger core.
Definition at line 75 of file Debugger.h.
|
protected |
Definition at line 583 of file Debugger.h.
anonymous enum |
Broadcaster event bits definitions.
Enumerator | |
---|---|
eBroadcastBitProgress | |
eBroadcastBitWarning | |
eBroadcastBitError | |
eBroadcastSymbolChange |
Definition at line 82 of file Debugger.h.
|
protected |
Enumerator | |
---|---|
eBroadcastBitEventThreadIsListening |
Definition at line 594 of file Debugger.h.
Enumerator | |
---|---|
eStopDisassemblyTypeNever | |
eStopDisassemblyTypeNoDebugInfo | |
eStopDisassemblyTypeNoSource | |
eStopDisassemblyTypeAlways |
Definition at line 252 of file Debugger.h.
|
override |
Definition at line 838 of file Debugger.cpp.
References Clear().
|
private |
Definition at line 759 of file Debugger.cpp.
References lldb_private::PlatformList::Append(), lldb_private::Target::GetDefaultArchitecture(), lldb_private::ModuleList::GetGlobalModuleListProperties(), lldb_private::Platform::GetGlobalPlatformProperties(), lldb_private::Target::GetGlobalProperties(), lldb_private::Platform::GetHostPlatform(), lldb_private::UserID::GetID(), GetOutputFile(), lldb_private::Properties::GetValueProperties(), lldb_private::ArchSpec::IsValid(), m_callback_handler_sp, lldb_private::Properties::m_collection_sp, m_command_interpreter_up, m_dummy_target_sp, m_instance_name, m_platform_list, lldb_private::OptionValueSInt64::SetMaximumValue(), lldb_private::OptionValueSInt64::SetMinimumValue(), lldb_private::ConstString::SetString(), and SetUseColor().
|
privatedelete |
void Debugger::AdoptTopIOHandlerFilesIfInvalid | ( | lldb::FileSP & | in, |
lldb::StreamFileSP & | out, | ||
lldb::StreamFileSP & | err | ||
) |
Definition at line 1098 of file Debugger.cpp.
References GetErrorStreamSP(), GetInputFileSP(), lldb_private::IOHandlerStack::GetMutex(), GetOutputStreamSP(), m_io_handler_stack, and lldb_private::IOHandlerStack::Top().
Referenced by lldb_private::IOHandler::IOHandler(), and lldb_private::ScriptInterpreterIORedirect::ScriptInterpreterIORedirect().
void Debugger::CancelForwardEvents | ( | const lldb::ListenerSP & | listener_sp | ) |
Definition at line 1691 of file Debugger.cpp.
References m_forward_listener_sp.
bool Debugger::CheckTopIOHandlerTypes | ( | IOHandler::Type | top_type, |
IOHandler::Type | second_top_type | ||
) |
Definition at line 1063 of file Debugger.cpp.
References lldb_private::IOHandlerStack::CheckTopIOHandlerTypes(), and m_io_handler_stack.
Referenced by lldb_private::REPL::IOHandlerInputComplete().
void Debugger::Clear | ( | ) |
Definition at line 840 of file Debugger.cpp.
References ClearIOHandlers(), lldb_private::File::Close(), GetInputFile(), m_broadcaster_manager_sp, m_clear_once, m_command_interpreter_up, m_listener_sp, m_target_list, m_terminal_state, StopEventHandlerThread(), StopIOHandlerThread(), and lldb_private::TargetList::Targets().
Referenced by ~Debugger().
void Debugger::ClearIOHandlers | ( | ) |
Definition at line 989 of file Debugger.cpp.
References lldb_private::IOHandlerStack::GetMutex(), lldb_private::IOHandlerStack::GetSize(), m_io_handler_stack, PopIOHandler(), and lldb_private::IOHandlerStack::Top().
Referenced by Clear(), and RunIOHandlers().
|
static |
Definition at line 671 of file Debugger.cpp.
References g_debugger_list_mutex_ptr, and g_debugger_list_ptr.
Referenced by lldb::SBDebugger::Create().
|
protected |
Definition at line 1695 of file Debugger.cpp.
References lldb_private::Broadcaster::BroadcastEvent(), lldb_private::CommandInterpreter::eBroadcastBitAsynchronousErrorData, lldb_private::CommandInterpreter::eBroadcastBitAsynchronousOutputData, lldb_private::Target::eBroadcastBitBreakpointChanged, eBroadcastBitError, eBroadcastBitEventThreadIsListening, eBroadcastBitProgress, lldb_private::CommandInterpreter::eBroadcastBitQuitCommandReceived, lldb_private::Thread::eBroadcastBitStackChanged, lldb_private::Process::eBroadcastBitStateChanged, lldb_private::Process::eBroadcastBitSTDERR, lldb_private::Process::eBroadcastBitSTDOUT, lldb_private::Process::eBroadcastBitStructuredData, lldb_private::Thread::eBroadcastBitThreadSelected, eBroadcastBitWarning, eBroadcastSymbolChange, GetAsyncErrorStream(), GetAsyncOutputStream(), lldb_private::Broadcaster::GetBroadcasterClass(), lldb_private::EventDataBytes::GetBytesFromEvent(), lldb_private::Breakpoint::BreakpointEventData::GetEventDataFromEvent(), GetListener(), lldb_private::Process::GetStaticBroadcasterClass(), lldb_private::Target::GetStaticBroadcasterClass(), lldb_private::Thread::GetStaticBroadcasterClass(), HandleBreakpointEvent(), HandleDiagnosticEvent(), HandleProcessEvent(), HandleProgressEvent(), HandleThreadEvent(), m_broadcaster, m_broadcaster_manager_sp, m_command_interpreter_up, m_forward_listener_sp, and m_sync_broadcaster.
Referenced by StartEventHandlerThread().
|
static |
Definition at line 682 of file Debugger.cpp.
References g_debugger_list_mutex_ptr, g_debugger_list_ptr, lldb_private::CommandReturnObject::GetErrorData(), lldb_private::CommandReturnObject::GetOutputData(), lldb_private::CommandInterpreter::GetSaveSessionOnQuit(), lldb_private::CommandInterpreter::SaveTranscript(), and lldb_private::CommandReturnObject::Succeeded().
Referenced by lldb::SBDebugger::Destroy().
void Debugger::DispatchInputEndOfFile | ( | ) |
Definition at line 982 of file Debugger.cpp.
References lldb_private::IOHandlerStack::GetMutex(), m_io_handler_stack, and lldb_private::IOHandlerStack::Top().
void Debugger::DispatchInputInterrupt | ( | ) |
Definition at line 975 of file Debugger.cpp.
References lldb_private::IOHandlerStack::GetMutex(), m_io_handler_stack, and lldb_private::IOHandlerStack::Top().
void Debugger::EnableForwardEvents | ( | const lldb::ListenerSP & | listener_sp | ) |
Definition at line 1687 of file Debugger.cpp.
References m_forward_listener_sp.
bool Debugger::EnableLog | ( | llvm::StringRef | channel, |
llvm::ArrayRef< const char * > | categories, | ||
llvm::StringRef | log_file, | ||
uint32_t | log_options, | ||
size_t | buffer_size, | ||
LogHandlerKind | log_handler_kind, | ||
llvm::raw_ostream & | error_stream | ||
) |
Definition at line 1445 of file Debugger.cpp.
References CreateLogHandler(), lldb_private::Log::EnableLogChannel(), lldb_private::File::eOpenOptionAppend, lldb_private::File::eOpenOptionCanCreate, lldb_private::File::eOpenOptionTruncate, lldb_private::File::eOpenOptionWriteOnly, GetOutputFile(), lldb_private::FileSystem::Instance(), LLDB_LOG_OPTION_APPEND, LLDB_LOG_OPTION_PREPEND_THREAD_NAME, LLDB_LOG_OPTION_PREPEND_TIMESTAMP, m_callback_handler_sp, m_stream_handlers, and lldb_private::FileSystem::Open().
Referenced by CommandObjectLogEnable::DoExecute().
|
static |
Definition at line 1221 of file Debugger.cpp.
References g_debugger_list_mutex_ptr, and g_debugger_list_ptr.
Referenced by lldb::SBDebugger::FindDebuggerWithID(), ReportDiagnosticImpl(), and ReportProgress().
|
static |
Definition at line 711 of file Debugger.cpp.
References g_debugger_list_mutex_ptr, and g_debugger_list_ptr.
Referenced by lldb::SBDebugger::GetInternalVariableValue(), and lldb::SBDebugger::SetInternalVariable().
|
static |
Definition at line 740 of file Debugger.cpp.
References g_debugger_list_mutex_ptr, and g_debugger_list_ptr.
|
static |
Definition at line 726 of file Debugger.cpp.
References g_debugger_list_mutex_ptr, and g_debugger_list_ptr.
Referenced by lldb_private::Process::SetProcessExitStatus().
|
protected |
Definition at line 1566 of file Debugger.cpp.
References error(), lldb_private::Stream::Flush(), GetAsyncErrorStream(), GetAsyncOutputStream(), lldb_private::Process::GetSTDERR(), lldb_private::Process::GetSTDOUT(), m_output_flush_mutex, and lldb_private::Stream::Write().
Referenced by lldb_private::CommandInterpreter::GetProcessOutput(), and HandleProcessEvent().
|
static |
Definition at line 1237 of file Debugger.cpp.
References lldb_private::Symbol::Compare(), lldb_private::FormatEntity::Format(), lldb_private::SymbolContext::function, lldb_private::Target::GetDebugger(), GetDisassemblyFormat(), lldb_private::Function::GetMangled(), lldb_private::Symbol::GetName(), lldb_private::ExecutionContext::GetTargetRef(), lldb_private::Symbol::GetType(), lldb_private::ExecutionContext::HasTargetScope(), lldb_private::FormatEntity::Parse(), and lldb_private::SymbolContext::symbol.
Referenced by lldb_private::Instruction::Dump(), and lldb_private::Disassembler::PrintInstructions().
StreamSP Debugger::GetAsyncErrorStream | ( | ) |
Definition at line 1197 of file Debugger.cpp.
References GetUseColor().
Referenced by lldb_private::BreakpointOptions::BreakpointOptionsCallbackFunction(), lldb_private::Process::CompleteAttach(), DefaultEventHandler(), FlushProcessOutput(), HandleDiagnosticEvent(), HandleProcessEvent(), lldb_private::Process::LaunchPrivate(), and PrivateReportDiagnostic().
bool Debugger::GetAsyncExecution | ( | ) |
Definition at line 881 of file Debugger.cpp.
References m_command_interpreter_up.
Referenced by CommandObjectProcessContinue::DoExecute(), CommandObjectProcessConnect::DoExecute(), lldb_private::CommandInterpreter::HandleCommands(), lldb_private::CommandInterpreter::HandleCommandsFromFile(), lldb_private::Target::StopHookCommandLine::HandleStop(), lldb_private::StopInfoBreakpoint::PerformAction(), lldb_private::StopInfoWatchpoint::PerformAction(), and lldb::SBThread::ResumeNewPlan().
StreamSP Debugger::GetAsyncOutputStream | ( | ) |
Definition at line 1193 of file Debugger.cpp.
References GetUseColor().
Referenced by lldb_private::ClangUserExpression::AddArguments(), lldb_private::BreakpointOptions::BreakpointOptionsCallbackFunction(), DefaultEventHandler(), ProcessKDP::DoConnectRemote(), FlushProcessOutput(), HandleBreakpointEvent(), HandleProcessEvent(), HandleProgressEvent(), HandleThreadEvent(), lldb_private::StopInfoWatchpoint::PerformAction(), lldb_private::Target::RunStopHooks(), and ObjectFileMachO::SaveCore().
bool Debugger::GetAutoConfirm | ( | ) | const |
Definition at line 265 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::CommandInterpreter::Confirm().
bool Debugger::GetAutoIndent | ( | ) | const |
Definition at line 503 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::REPL::GetIOHandler().
bool Debugger::GetAutoOneLineSummaries | ( | ) | const |
Definition at line 493 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
llvm::StringRef Debugger::GetAutosuggestionAnsiPrefix | ( | ) | const |
Definition at line 417 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::IOHandlerEditline::IOHandlerEditline().
llvm::StringRef Debugger::GetAutosuggestionAnsiSuffix | ( | ) | const |
Definition at line 422 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::IOHandlerEditline::IOHandlerEditline().
|
inline |
Get the public broadcaster for this debugger.
Definition at line 92 of file Debugger.h.
References m_broadcaster.
Referenced by PrivateReportDiagnostic(), and PrivateReportProgress().
|
inline |
Definition at line 93 of file Debugger.h.
References m_broadcaster.
|
inline |
Definition at line 380 of file Debugger.h.
References m_broadcaster_manager_sp.
Referenced by lldb::SBListener::StartListeningForEventClass(), and lldb::SBListener::StopListeningForEventClass().
bool Debugger::GetCloseInputOnEOF | ( | ) | const |
Definition at line 872 of file Debugger.cpp.
|
inline |
Definition at line 170 of file Debugger.h.
References m_command_interpreter_up.
Referenced by lldb_private::BreakpointOptions::BreakpointOptionsCallbackFunction(), lldb_private::StructuredDataDarwinLog::DebuggerInitialize(), CommandObjectCommandsSource::DoExecute(), CommandObjectCommandsScriptImport::DoExecute(), CommandObjectCommandsScriptAdd::DoExecute(), lldb_private::Target::StopHookCommandLine::HandleStop(), lldb_private::StructuredDataPlugin::InitializeBasePluginForDebugger(), lldb_private::IOHandlerDelegate::IOHandlerComplete(), lldb_private::REPL::IOHandlerComplete(), lldb_private::REPL::IOHandlerInputComplete(), lldb_private::IOHandlerDelegate::IOHandlerSuggestion(), lldb_private::Target::Launch(), lldb_private::REPL::REPL(), lldb_private::REPL::RunLoop(), SetPrompt(), SetPropertyValue(), and StopEventHandlerThread().
|
static |
Definition at line 1209 of file Debugger.cpp.
References g_debugger_list_mutex_ptr, and g_debugger_list_ptr.
Referenced by lldb::SBTypeCategory::AddTypeSummary(), lldb::SBTypeCategory::AddTypeSynthetic(), and lldb_private::CommandObjectQuit::ShouldAskForConfirmation().
const FormatEntity::Entry * Debugger::GetDisassemblyFormat | ( | ) | const |
Definition at line 271 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::InstructionList::Dump(), FormatDisassemblerAddress(), lldb_private::ThreadPlanAssemblyTracer::Log(), and lldb_private::Disassembler::PrintInstructions().
uint32_t Debugger::GetDisassemblyLineCount | ( | ) | const |
Definition at line 487 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::StackFrame::GetStatus().
|
inline |
Definition at line 378 of file Debugger.h.
References m_dummy_target_sp.
Referenced by lldb_private::TargetList::CreateTargetInternal(), lldb_private::CommandObject::GetDummyTarget(), GetSelectedOrDummyTarget(), and lldb_private::CommandInterpreter::PreprocessCommand().
lldb::DWIMPrintVerbosity Debugger::GetDWIMPrintVerbosity | ( | ) | const |
Definition at line 534 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::CommandObjectDWIMPrint::DoExecute().
|
inline |
Definition at line 146 of file Debugger.h.
References m_error_stream_sp.
Referenced by IOHandlerLuaInterpreter::IOHandlerLuaInterpreter().
|
inline |
Definition at line 150 of file Debugger.h.
References m_error_stream_sp.
Referenced by lldb_private::ScriptInterpreterLua::BreakpointCallbackFunction(), lldb_private::Process::CreateBreakpointSite(), lldb_private::ScriptInterpreterNone::ExecuteInterpreterLoop(), lldb_private::ScriptInterpreterNone::ExecuteOneLine(), LoadScriptingResourceForModule(), lldb_private::ScriptInterpreterIORedirect::ScriptInterpreterIORedirect(), SetPropertyValue(), and lldb_private::ScriptInterpreterLua::WatchpointCallbackFunction().
|
inline |
Definition at line 140 of file Debugger.h.
References m_error_stream_sp.
Referenced by AdoptTopIOHandlerFilesIfInvalid(), and lldb_private::CommandInterpreter::GetIOHandler().
bool Debugger::GetEscapeNonPrintables | ( | ) | const |
Definition at line 498 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
const FormatEntity::Entry * Debugger::GetFrameFormat | ( | ) | const |
Definition at line 276 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::StackFrame::DumpUsingSettingsFormat().
const FormatEntity::Entry * Debugger::GetFrameFormatUnique | ( | ) | const |
Definition at line 281 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::StackFrame::DumpUsingSettingsFormat().
bool Debugger::GetHighlightSource | ( | ) | const |
Definition at line 441 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
|
inline |
Definition at line 142 of file Debugger.h.
References m_input_file_sp.
Referenced by Clear(), lldb_private::CommandObjectGUI::DoExecute(), lldb_private::ScriptInterpreterLua::ExecuteInterpreterLoop(), SaveInputTerminalState(), and StopIOHandlerThread().
|
inline |
Definition at line 136 of file Debugger.h.
References m_input_file_sp.
Referenced by AdoptTopIOHandlerFilesIfInvalid(), lldb_private::CommandInterpreter::GetIOHandler(), and lldb_private::ScriptInterpreterIORedirect::ScriptInterpreterIORedirect().
repro::DataRecorder * Debugger::GetInputRecorder | ( | ) |
Definition at line 889 of file Debugger.cpp.
References m_input_recorder.
|
inline |
Definition at line 358 of file Debugger.h.
References m_instance_name.
const char * Debugger::GetIOHandlerCommandPrefix | ( | ) |
Definition at line 1081 of file Debugger.cpp.
References lldb_private::IOHandlerStack::GetTopIOHandlerCommandPrefix(), and m_io_handler_stack.
Referenced by lldb_private::CommandInterpreter::GetCommandPrefix().
const char * Debugger::GetIOHandlerHelpPrologue | ( | ) |
Definition at line 1085 of file Debugger.cpp.
References lldb_private::IOHandlerStack::GetTopIOHandlerHelpPrologue(), and m_io_handler_stack.
|
inline |
Definition at line 179 of file Debugger.h.
References m_listener_sp.
Referenced by lldb_private::Target::CreateProcess(), DefaultEventHandler(), lldb_private::Platform::DoConnectProcess(), and lldb_private::ProcessAttachInfo::GetListenerForProcess().
bool Debugger::GetNotifyVoid | ( | ) | const |
Definition at line 292 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::REPL::IOHandlerInputComplete().
|
static |
Definition at line 1201 of file Debugger.cpp.
References g_debugger_list_mutex_ptr, and g_debugger_list_ptr.
Referenced by lldb::SBTypeCategory::AddTypeSummary(), lldb::SBTypeCategory::AddTypeSynthetic(), and lldb_private::CommandObjectQuit::ShouldAskForConfirmation().
|
inline |
Definition at line 144 of file Debugger.h.
References m_output_stream_sp.
Referenced by Debugger(), lldb_private::CommandObjectGUI::DoExecute(), EnableLog(), lldb_private::CommandInterpreter::HandleCommandsFromFile(), HandleProgressEvent(), and IOHandlerLuaInterpreter::IOHandlerLuaInterpreter().
|
inline |
Definition at line 148 of file Debugger.h.
References m_output_stream_sp.
Referenced by DynamicLoaderDarwinKernel::KextImageInfo::LoadImageUsingMemoryModule(), DynamicLoaderDarwinKernel::ParseKextSummaries(), DynamicLoaderDarwinKernel::ReadKextSummaryHeader(), and lldb_private::ScriptInterpreterIORedirect::ScriptInterpreterIORedirect().
|
inline |
Definition at line 138 of file Debugger.h.
References m_output_stream_sp.
Referenced by AdoptTopIOHandlerFilesIfInvalid(), lldb_private::CommandInterpreter::GetIOHandler(), and lldb_private::InstrumentationRuntimeUBSan::RetrieveReportData().
|
inline |
Definition at line 202 of file Debugger.h.
References m_platform_list.
Referenced by lldb_private::Target::Attach(), lldb_private::Process::CompleteAttach(), lldb_private::OptionGroupPlatform::CreatePlatformWithOptions(), lldb_private::TargetList::CreateTargetInternal(), CommandObjectPlatformSelect::DoExecute(), CommandObjectPlatformStatus::DoExecute(), CommandObjectPlatformProcessLaunch::DoExecute(), CommandObjectPlatformProcessList::DoExecute(), CommandObjectPlatformProcessInfo::DoExecute(), DynamicLoaderDarwinKernel::DynamicLoaderDarwinKernel(), lldb_private::CommandInterpreter::GetPlatform(), ObjectFileMachO::LoadCoreFileImages(), lldb_private::CommandCompletions::RemoteDiskDirectories(), and lldb_private::CommandCompletions::RemoteDiskFiles().
bool Debugger::GetPrintDecls | ( | ) | const |
Definition at line 513 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::REPL::IOHandlerInputComplete().
llvm::StringRef Debugger::GetPrompt | ( | ) | const |
Definition at line 298 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::CommandInterpreter::GetIOHandler(), lldb_private::CommandInterpreter::HandleCommands(), lldb_private::CommandInterpreter::HandleCommandsFromFile(), SetPrompt(), SetPropertyValue(), and SetUseColor().
lldb::LanguageType Debugger::GetREPLLanguage | ( | ) | const |
Definition at line 337 of file Debugger.cpp.
References lldb_private::OptionValueLanguage::GetCurrentValue(), and lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::Target::GetREPL(), and RunREPL().
ScriptInterpreter * Debugger::GetScriptInterpreter | ( | bool | can_create = true , |
std::optional< lldb::ScriptLanguage > | language = {} |
||
) |
Definition at line 1496 of file Debugger.cpp.
References lldb_private::PluginManager::GetScriptInterpreterForLanguage(), GetScriptLanguage(), m_script_interpreter_mutex, and m_script_interpreters.
Referenced by lldb_private::ScriptInterpreterLua::BreakpointCallbackFunction(), lldb_private::BreakpointOptions::CreateFromStructuredData(), CommandObjectCommandsScriptAdd::DoExecute(), CommandObjectFrameRecognizerAdd::DoExecute(), lldb_private::CommandObjectScript::DoExecute(), CommandObjectPythonFunction::DoExecute(), CommandObjectScriptingObject::DoExecute(), CommandObjectScriptingObject::GetHelp(), CommandObjectPythonFunction::GetHelpLong(), CommandObjectScriptingObject::GetHelpLong(), lldb_private::ThreadPlanPython::GetScriptInterpreter(), CommandObjectCommandsScriptAdd::IOHandlerInputComplete(), CommandObjectTypeSummaryAdd::IOHandlerInputComplete(), CommandObjectTypeSynthAdd::IOHandlerInputComplete(), lldb_private::CommandInterpreter::IOHandlerInterrupt(), lldb_private::Module::LoadScriptingResourceInTarget(), lldb_private::PlatformDarwin::LocateExecutableScriptingResources(), lldb_private::process_gdb_remote::ProcessGDBRemote::ParsePythonTargetDefinition(), RunScriptFormatKeyword(), and lldb_private::ScriptInterpreterLua::WatchpointCallbackFunction().
lldb::ScriptLanguage Debugger::GetScriptLanguage | ( | ) | const |
Definition at line 325 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::CommandObjectScript::DoExecute(), GetScriptInterpreter(), lldb_private::Module::LoadScriptingResourceInTarget(), and lldb_private::PlatformDarwin::LocateExecutableScriptingResources().
ExecutionContext Debugger::GetSelectedExecutionContext | ( | ) |
Definition at line 969 of file Debugger.cpp.
References GetSelectedTarget().
Referenced by lldb_private::CommandInterpreter::GetExecutionContext(), and lldb_private::CommandInterpreter::IOHandlerInputComplete().
Target & Debugger::GetSelectedOrDummyTarget | ( | bool | prefer_dummy = false | ) |
Definition at line 1975 of file Debugger.cpp.
References GetDummyTarget(), lldb_private::TargetList::GetSelectedTarget(), and m_target_list.
Referenced by lldb_private::CommandObject::GetSelectedOrDummyTarget().
|
inline |
Definition at line 187 of file Debugger.h.
References lldb_private::TargetList::GetSelectedTarget(), and m_target_list.
Referenced by lldb_private::CommandCompletions::BreakpointNames(), lldb_private::CommandCompletions::Breakpoints(), CommandObjectPlatformStatus::DoExecute(), CommandObjectPlatformProcessLaunch::DoExecute(), CommandObjectPlatformProcessList::DoExecute(), CommandObjectPlatformProcessInfo::DoExecute(), CommandObjectProcessAttach::DoExecute(), CommandObjectProcessConnect::DoExecute(), CommandObjectSourceInfo::DoExecute(), CommandObjectTargetModulesList::DoExecute(), CommandObjectProcessLaunch::DoExecute(), lldb_private::CommandObject::GetDefaultThread(), lldb::SBCommandInterpreter::GetProcess(), GetSelectedExecutionContext(), lldb_private::CommandObject::GetSelectedTarget(), lldb_private::Options::HandleOptionArgumentCompletion(), lldb_private::CommandCompletions::Modules(), lldb_private::CommandCompletions::SourceFiles(), lldb::SBCommandInterpreter::SourceInitFileInCurrentWorkingDirectory(), lldb::SBCommandInterpreter::SourceInitFileInGlobalDirectory(), lldb::SBCommandInterpreter::SourceInitFileInHomeDirectory(), and lldb_private::CommandCompletions::Symbols().
bool Debugger::GetShowProgress | ( | ) | const |
Definition at line 389 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by HandleProgressEvent().
llvm::StringRef Debugger::GetShowProgressAnsiPrefix | ( | ) | const |
Definition at line 401 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by HandleProgressEvent().
llvm::StringRef Debugger::GetShowProgressAnsiSuffix | ( | ) | const |
Definition at line 406 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by HandleProgressEvent().
|
inlineprotected |
Definition at line 534 of file Debugger.h.
References m_source_file_cache.
SourceManager & Debugger::GetSourceManager | ( | ) |
Definition at line 1512 of file Debugger.cpp.
References m_source_manager_up.
Referenced by lldb_private::Disassembler::PrintInstructions().
|
static |
Definition at line 754 of file Debugger.cpp.
Referenced by lldb::SBDebugger::GetBroadcasterClass().
Debugger::StopDisassemblyType Debugger::GetStopDisassemblyDisplay | ( | ) | const |
Definition at line 480 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::StackFrame::GetStatus().
uint32_t Debugger::GetStopDisassemblyMaxSize | ( | ) | const |
Definition at line 286 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
StopShowColumn Debugger::GetStopShowColumn | ( | ) | const |
Definition at line 447 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by CommandObjectSourceList::DoExecute().
llvm::StringRef Debugger::GetStopShowColumnAnsiPrefix | ( | ) | const |
Definition at line 453 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
llvm::StringRef Debugger::GetStopShowColumnAnsiSuffix | ( | ) | const |
Definition at line 458 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
llvm::StringRef Debugger::GetStopShowLineMarkerAnsiPrefix | ( | ) | const |
Definition at line 463 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
llvm::StringRef Debugger::GetStopShowLineMarkerAnsiSuffix | ( | ) | const |
Definition at line 468 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
uint32_t Debugger::GetStopSourceLineCount | ( | bool | before | ) | const |
Definition at line 473 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::StackFrame::GetStatus().
uint32_t Debugger::GetTabSize | ( | ) | const |
Definition at line 523 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::REPL::GetIOHandler(), and lldb_private::REPL::IOHandlerFixIndentation().
|
inline |
Get accessor for the target list.
The target list is part of the global debugger object. This the single debugger shared instance to control where targets get created and to allow for tracking and searching for targets based on certain criteria.
Definition at line 200 of file Debugger.h.
References m_target_list.
Referenced by PlatformPOSIX::Attach(), lldb_private::PlatformWindows::Attach(), lldb_private::platform_gdb_server::PlatformRemoteGDBServer::Attach(), lldb_private::trace_intel_pt::TraceIntelPTBundleLoader::CreateEmptyProcess(), lldb_private::Platform::DoConnectProcess(), CommandObjectTargetSelect::DoExecute(), CommandObjectTargetDelete::DoExecute(), CommandObjectProcessAttach::DoExecute(), CommandObjectTargetCreate::DoExecute(), lldb_private::Process::HandleProcessStateChangedEvent(), lldb_private::trace_intel_pt::TraceIntelPTBundleLoader::LoadBundle(), and lldb_private::DebuggerStats::ReportStatistics().
uint32_t Debugger::GetTerminalWidth | ( | ) | const |
Definition at line 351 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::CommandObjectDisassemble::DoExecute(), HandleProgressEvent(), lldb_private::CommandInterpreter::OutputFormattedHelpText(), and lldb_private::CommandInterpreter::OutputHelpText().
const FormatEntity::Entry * Debugger::GetThreadFormat | ( | ) | const |
Definition at line 315 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::Thread::DumpUsingSettingsFormat().
|
static |
Shared thread poll. Use only with ThreadPoolTaskGroup.
Definition at line 2027 of file Debugger.cpp.
References g_thread_pool.
Referenced by lldb_private::Symbols::DownloadSymbolFileAsync(), and lldb_private::ManualDWARFIndex::Index().
const FormatEntity::Entry * Debugger::GetThreadStopFormat | ( | ) | const |
Definition at line 320 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::Thread::DumpUsingSettingsFormat().
ConstString Debugger::GetTopIOHandlerControlSequence | ( | char | ch | ) |
Definition at line 1077 of file Debugger.cpp.
References lldb_private::IOHandlerStack::GetTopIOHandlerControlSequence(), and m_io_handler_stack.
Referenced by lldb::SBCommandInterpreter::GetIOHandlerControlSequence().
bool Debugger::GetUseAutosuggestion | ( | ) | const |
Definition at line 411 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::IOHandlerEditline::IOHandlerEditline().
bool Debugger::GetUseColor | ( | ) | const |
Definition at line 376 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::BreakpointOptions::BreakpointOptionsCallbackFunction(), lldb_private::FormatEntity::Format(), GetAsyncErrorStream(), GetAsyncOutputStream(), lldb_private::CommandInterpreter::GetIOHandler(), lldb_private::CommandInterpreter::GetLLDBCommandsFromIOHandler(), lldb_private::CommandInterpreter::GetPythonCommandsFromIOHandler(), lldb_private::CommandInterpreter::HandleCommands(), lldb_private::CommandInterpreter::HandleCommandsFromFile(), lldb_private::CommandObject::HandleCompletion(), HandleProgressEvent(), lldb_private::CommandInterpreter::Initialize(), lldb_private::REPL::IOHandlerInputComplete(), lldb_private::CommandInterpreter::IOHandlerInputComplete(), sddarwinlog_private::ParseAutoEnableOptions(), sddarwinlog_private::RunEnableCommand(), SetPrompt(), and SetPropertyValue().
bool Debugger::GetUseExternalEditor | ( | ) | const |
Definition at line 365 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::Thread::GetStatus().
bool Debugger::GetUseSourceCache | ( | ) | const |
Definition at line 427 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by SetPropertyValue().
|
protected |
Definition at line 1519 of file Debugger.cpp.
References GetAsyncOutputStream(), lldb_private::Breakpoint::BreakpointEventData::GetBreakpointEventTypeFromEvent(), lldb_private::Breakpoint::BreakpointEventData::GetBreakpointFromEvent(), and lldb_private::Breakpoint::BreakpointEventData::GetNumBreakpointLocationsFromEvent().
Referenced by DefaultEventHandler().
|
protected |
Definition at line 1934 of file Debugger.cpp.
References GetAsyncErrorStream(), and lldb_private::DiagnosticEventData::GetEventDataFromEvent().
Referenced by DefaultEventHandler().
|
protected |
Definition at line 1586 of file Debugger.cpp.
References lldb_private::Process::eBroadcastBitStateChanged, lldb_private::Process::eBroadcastBitSTDERR, lldb_private::Process::eBroadcastBitSTDOUT, lldb_private::Process::eBroadcastBitStructuredData, error(), lldb_private::StreamString::Flush(), FlushProcessOutput(), GetAsyncErrorStream(), GetAsyncOutputStream(), lldb_private::EventDataStructuredData::GetObjectFromEvent(), lldb_private::EventDataStructuredData::GetPluginFromEvent(), lldb_private::Process::ProcessEventData::GetProcessFromEvent(), lldb_private::EventDataStructuredData::GetProcessFromEvent(), lldb_private::Process::ProcessEventData::GetStateFromEvent(), lldb_private::StreamString::GetString(), lldb_private::Process::HandleProcessStateChangedEvent(), IsForwardingEvents(), lldb_private::Stream::PutChar(), and lldb_private::StateIsStoppedState().
Referenced by DefaultEventHandler().
|
protected |
Definition at line 1849 of file Debugger.cpp.
References lldb_private::Stream::AsRawOstream(), lldb_private::Events, lldb_private::ansi::FormatAnsiTerminalCodes(), GetAsyncOutputStream(), lldb_private::ProgressEventData::GetEventDataFromEvent(), lldb_private::UserID::GetID(), lldb_private::File::GetIsInteractive(), lldb_private::File::GetIsTerminalWithColors(), lldb_private::GetLog(), GetOutputFile(), GetShowProgress(), GetShowProgressAnsiPrefix(), GetShowProgressAnsiSuffix(), lldb_private::StreamString::GetString(), GetTerminalWidth(), GetUseColor(), lldb_private::Log::GetVerbose(), m_current_event_id, and lldb_private::Log::PutString().
Referenced by DefaultEventHandler().
|
protected |
Definition at line 1669 of file Debugger.cpp.
References lldb_private::Thread::eBroadcastBitStackChanged, lldb_private::Thread::eBroadcastBitThreadSelected, GetAsyncOutputStream(), and lldb_private::Thread::ThreadEventData::GetThreadFromEvent().
Referenced by DefaultEventHandler().
|
protected |
Definition at line 1943 of file Debugger.cpp.
References lldb_private::HostThread::IsJoinable(), and m_io_handler_thread.
Referenced by JoinIOHandlerThread(), and lldb_private::REPL::RunLoop().
|
static |
Definition at line 550 of file Debugger.cpp.
References g_debugger_list_mutex_ptr, g_debugger_list_ptr, g_load_plugin_callback, and g_thread_pool.
Referenced by lldb_private::SystemLifetimeManager::Initialize().
|
protected |
Definition at line 645 of file Debugger.cpp.
References lldb_private::PluginManager::DebuggerInitialize(), lldb_private::FileSystem::EnumerateDirectory(), lldb_private::FileSystem::Instance(), LoadPluginCallback(), and PATH_MAX.
|
protected |
Definition at line 1843 of file Debugger.cpp.
References RunIOHandlers(), and StopEventHandlerThread().
Referenced by StartIOHandlerThread().
bool Debugger::IsForwardingEvents | ( | ) |
Definition at line 1685 of file Debugger.cpp.
References m_forward_listener_sp.
Referenced by HandleProcessEvent().
|
inline |
Definition at line 370 of file Debugger.h.
References lldb_private::HostThread::IsJoinable(), and m_event_handler_thread.
bool Debugger::IsTopIOHandler | ( | const lldb::IOHandlerSP & | reader_sp | ) |
Definition at line 1059 of file Debugger.cpp.
References lldb_private::IOHandlerStack::IsTop(), and m_io_handler_stack.
Referenced by lldb_private::CommandInterpreter::IsActive(), and lldb_private::Process::ProcessIOHandlerIsActive().
|
protected |
Definition at line 1967 of file Debugger.cpp.
References HasIOHandlerThread(), lldb_private::HostThread::Join(), LLDB_INVALID_HOST_THREAD, and m_io_handler_thread.
Referenced by lldb_private::REPL::RunLoop().
Definition at line 583 of file Debugger.cpp.
References error(), g_load_plugin_callback, and m_loaded_plugins.
Referenced by LoadPluginCallback().
|
protected |
Definition at line 1166 of file Debugger.cpp.
References lldb_private::IOHandlerStack::GetMutex(), lldb_private::IOHandlerStack::IsEmpty(), m_io_handler_stack, lldb_private::IOHandlerStack::Pop(), and lldb_private::IOHandlerStack::Top().
Referenced by ClearIOHandlers(), RemoveIOHandler(), RunIOHandlers(), and RunIOHandlerSync().
void Debugger::PrintAsync | ( | const char * | s, |
size_t | len, | ||
bool | is_stdout | ||
) |
Definition at line 1068 of file Debugger.cpp.
References m_error_stream_sp, m_io_handler_stack, m_output_stream_sp, and lldb_private::IOHandlerStack::PrintAsync().
Referenced by lldb_private::StreamAsynchronousIO::Flush().
|
protected |
|
protected |
Definition at line 1139 of file Debugger.cpp.
References lldb_private::IOHandlerStack::GetMutex(), m_io_handler_stack, lldb_private::IOHandlerStack::Push(), and lldb_private::IOHandlerStack::Top().
Referenced by RunIOHandlerAsync(), and RunIOHandlerSync().
bool Debugger::RemoveIOHandler | ( | const lldb::IOHandlerSP & | reader_sp | ) |
Remove the given IO handler if it's currently active.
Definition at line 1089 of file Debugger.cpp.
References PopIOHandler().
Referenced by lldb_private::Process::PopProcessIOHandler().
|
staticprotected |
Definition at line 1358 of file Debugger.cpp.
References lldb_private::Diagnostics::Enabled(), FindDebuggerWithID(), g_debugger_list_mutex_ptr, g_debugger_list_ptr, lldb_private::DiagnosticEventData::Info, lldb_private::Diagnostics::Instance(), PrivateReportDiagnostic(), and lldb_private::Diagnostics::Report().
Referenced by ReportError(), ReportInfo(), and ReportWarning().
|
static |
Report error events.
Error events will be delivered to any debuggers that have listeners for the eBroadcastBitError.
[in] | message | The error message to be reported. |
[in] | debugger_id | If this optional parameter has a value, it indicates the unique debugger identifier that this diagnostic should be delivered to. If this optional parameter does not have a value, the diagnostic event will be delivered to all debuggers. |
[in] | once | If a pointer is passed to a std::once_flag, then it will be used to ensure the given error is only broadcast once. |
Definition at line 1403 of file Debugger.cpp.
References lldb_private::DiagnosticEventData::Error, and ReportDiagnosticImpl().
Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::BuildDynamicRegisterInfo(), lldb_private::TargetProperties::CheckJITObjectsDir(), lldb_private::StructuredDataDarwinLog::EnableNow(), lldb_private::Function::GetBlock(), lldb_private::DWARFCallFrameInfo::GetFDEIndex(), lldb_private::Options::GetLongOptions(), lldb_private::PlatformMacOSX::GetSDKDirectory(), MachSymtabSectionInfo::GetSection(), GetXcodeSDKDir(), lldb_private::DWARFCallFrameInfo::ParseCIE(), ObjectFileMachO::ParseSymtab(), lldb_private::StopInfoBreakpoint::PerformAction(), lldb_private::StopInfoWatchpoint::PerformAction(), lldb_private::Module::RegisterXcodeSDK(), lldb_private::Module::ReportError(), lldb_private::Module::ReportErrorIfModifyDetected(), and lldb_private::CompactUnwindInfo::ScanIndex().
|
static |
Report info events.
Unlike warning and error events, info events are not broadcast but are logged for diagnostic purposes.
[in] | message | The info message to be reported. |
[in] | debugger_id | If this optional parameter has a value, it indicates this diagnostic is associated with a unique debugger instance. |
[in] | once | If a pointer is passed to a std::once_flag, then it will be used to ensure the given info is only logged once. |
Definition at line 1410 of file Debugger.cpp.
References lldb_private::DiagnosticEventData::Info, and ReportDiagnosticImpl().
|
staticprotected |
Report progress events.
Progress events will be delivered to any debuggers that have listeners for the eBroadcastBitProgress. This function is called by the lldb_private::Progress class to deliver the events to any debuggers that qualify.
[in] | progress_id | The unique integer identifier for the progress to report. |
[in] | message | The title of the progress dialog to display in the UI. |
[in] | completed | The amount of work completed. If completed is zero, then this event is a progress started event. If completed is equal to total, then this event is a progress end event. Otherwise completed indicates the current progress compare to the total value. |
[in] | total | The total amount of work units that need to be completed. If this value is UINT64_MAX, then an indeterminate progress indicator should be displayed. |
[in] | debugger_id | If this optional parameter has a value, it indicates the unique debugger identifier that this progress should be delivered to. If this optional parameter does not have a value, the progress will be delivered to all debuggers. |
Definition at line 1302 of file Debugger.cpp.
References FindDebuggerWithID(), g_debugger_list_mutex_ptr, g_debugger_list_ptr, and PrivateReportProgress().
Referenced by lldb_private::Progress::ReportProgress().
|
static |
Definition at line 1417 of file Debugger.cpp.
References eBroadcastSymbolChange, g_debugger_list_mutex_ptr, and g_debugger_list_ptr.
Referenced by lldb_private::Symbols::DownloadSymbolFileAsync().
|
static |
Report warning events.
Warning events will be delivered to any debuggers that have listeners for the eBroadcastBitWarning.
[in] | message | The warning message to be reported. |
[in] | debugger_id | If this optional parameter has a value, it indicates the unique debugger identifier that this diagnostic should be delivered to. If this optional parameter does not have a value, the diagnostic event will be delivered to all debuggers. |
[in] | once | If a pointer is passed to a std::once_flag, then it will be used to ensure the given warning is only broadcast once. |
Definition at line 1396 of file Debugger.cpp.
References ReportDiagnosticImpl(), and lldb_private::DiagnosticEventData::Warning.
Referenced by lldb_private::minidump::ProcessMinidump::DoLoadCore(), lldb_private::MemoryHistoryASan::GetHistoryThreads(), lldb_private::SymbolContext::GetParentOfInlinedScope(), DynamicLoaderMacOS::NotifyBreakpointHit(), DynamicLoaderMacOSXDYLD::NotifyBreakpointHit(), lldb_private::StopInfoBreakpoint::PerformAction(), lldb_private::Module::ReportWarning(), lldb_private::Module::ReportWarningOptimization(), lldb_private::Module::ReportWarningUnsupportedLanguage(), lldb_private::InstrumentationRuntimeASan::RetrieveReportData(), lldb_private::InstrumentationRuntimeTSan::RetrieveReportData(), lldb_private::InstrumentationRuntimeUBSan::RetrieveReportData(), lldb_private::DynamicLoaderDarwin::UnloadModuleSections(), lldb_private::AppleObjCRuntimeV2::WarnIfNoClassesCached(), and lldb_private::AppleObjCRuntimeV2::WarnIfNoExpandedSharedCache().
void Debugger::RestoreInputTerminalState | ( | ) |
Definition at line 967 of file Debugger.cpp.
References m_terminal_state.
void Debugger::RunIOHandlerAsync | ( | const lldb::IOHandlerSP & | reader_sp, |
bool | cancel_top_handler = true |
||
) |
Run the given IO handler and return immediately.
Definition at line 1093 of file Debugger.cpp.
References PushIOHandler().
Referenced by lldb_private::ScriptInterpreterLua::CollectDataForBreakpointCommandCallback(), lldb_private::ScriptInterpreterLua::CollectDataForWatchpointCommandCallback(), lldb_private::CommandObjectGUI::DoExecute(), lldb_private::ScriptInterpreterLua::ExecuteInterpreterLoop(), lldb_private::CommandInterpreter::GetLLDBCommandsFromIOHandler(), lldb_private::CommandInterpreter::GetPythonCommandsFromIOHandler(), lldb_private::REPL::IOHandlerInputComplete(), lldb_private::Process::PushProcessIOHandler(), lldb_private::CommandInterpreter::RunCommandInterpreter(), and lldb_private::REPL::RunLoop().
void Debugger::RunIOHandlers | ( | ) |
Definition at line 1000 of file Debugger.cpp.
References ClearIOHandlers(), m_io_handler_stack, m_io_handler_synchronous_mutex, PopIOHandler(), and lldb_private::IOHandlerStack::Top().
Referenced by IOHandlerThread(), and lldb_private::CommandInterpreter::RunCommandInterpreter().
void Debugger::RunIOHandlerSync | ( | const lldb::IOHandlerSP & | reader_sp | ) |
Run the given IO handler and block until it's complete.
Definition at line 1025 of file Debugger.cpp.
References m_io_handler_stack, m_io_handler_synchronous_mutex, PopIOHandler(), PushIOHandler(), and lldb_private::IOHandlerStack::Top().
Referenced by lldb_private::CommandInterpreter::Confirm(), and lldb_private::CommandInterpreter::HandleCommandsFromFile().
Status Debugger::RunREPL | ( | lldb::LanguageType | language, |
const char * | repl_options | ||
) |
Definition at line 1983 of file Debugger.cpp.
References lldb_private::REPL::Create(), lldb::eLanguageTypeUnknown, lldb_private::LanguageSet::Empty(), lldb_private::Language::GetLanguagesSupportingREPLs(), lldb_private::Language::GetNameForLanguageType(), GetREPLLanguage(), lldb_private::LanguageSet::GetSingularLanguage(), lldb_private::Status::SetErrorString(), lldb_private::Status::SetErrorStringWithFormat(), and lldb_private::Status::Success().
void Debugger::SaveInputTerminalState | ( | ) |
Definition at line 961 of file Debugger.cpp.
References lldb_private::File::GetDescriptor(), GetInputFile(), lldb_private::File::kInvalidDescriptor, and m_terminal_state.
Referenced by SetInputFile().
void Debugger::SetAsyncExecution | ( | bool | async | ) |
Definition at line 885 of file Debugger.cpp.
References m_command_interpreter_up.
Referenced by CommandObjectProcessContinue::DoExecute(), lldb_private::CommandInterpreter::HandleCommands(), lldb_private::CommandInterpreter::HandleCommandsFromFile(), lldb_private::Target::StopHookCommandLine::HandleStop(), lldb_private::StopInfoBreakpoint::PerformAction(), and lldb_private::StopInfoWatchpoint::PerformAction().
bool Debugger::SetAutoIndent | ( | bool | b | ) |
Definition at line 508 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
void Debugger::SetCloseInputOnEOF | ( | bool | b | ) |
Definition at line 877 of file Debugger.cpp.
void Debugger::SetErrorFile | ( | lldb::FileSP | file | ) |
Definition at line 956 of file Debugger.cpp.
References m_error_stream_sp.
void Debugger::SetInputFile | ( | lldb::FileSP | file | ) |
Definition at line 943 of file Debugger.cpp.
References m_input_file_sp, and SaveInputTerminalState().
Referenced by SetInputString().
Status Debugger::SetInputString | ( | const char * | data | ) |
Definition at line 900 of file Debugger.cpp.
References OpenPipe(), READ, lldb_private::Status::SetErrorString(), lldb_private::Status::SetErrorStringWithFormat(), SetInputFile(), and WRITE.
void Debugger::SetLoggingCallback | ( | lldb::LogOutputCallback | log_callback, |
void * | baton | ||
) |
Definition at line 1279 of file Debugger.cpp.
References m_callback_handler_sp.
void Debugger::SetOutputFile | ( | lldb::FileSP | file | ) |
Definition at line 951 of file Debugger.cpp.
References m_output_stream_sp.
bool Debugger::SetPrintDecls | ( | bool | b | ) |
Definition at line 518 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
|
delete |
void Debugger::SetPrompt | ( | llvm::StringRef | p | ) |
Definition at line 304 of file Debugger.cpp.
References lldb_private::ansi::FormatAnsiTerminalCodes(), GetCommandInterpreter(), GetPrompt(), GetUseColor(), lldb_private::Properties::m_collection_sp, and lldb_private::CommandInterpreter::UpdatePrompt().
Referenced by SetPropertyValue(), and SetUseColor().
|
overridevirtual |
Reimplemented from lldb_private::Properties.
Definition at line 201 of file Debugger.cpp.
References lldb_private::Broadcaster::BroadcastEvent(), lldb_private::SourceManager::SourceFileCache::Clear(), lldb_private::CommandInterpreter::eBroadcastBitResetPrompt, lldb_private::eLoadScriptFromSymFileFalse, lldb_private::eLoadScriptFromSymFileTrue, lldb_private::eLoadScriptFromSymFileWarn, error(), lldb_private::DataVisualization::ForceUpdate(), lldb_private::ansi::FormatAnsiTerminalCodes(), GetCommandInterpreter(), GetErrorStream(), GetPrompt(), lldb_private::StreamString::GetSize(), lldb_private::StreamString::GetString(), lldb_private::ExecutionContext::GetTargetSP(), GetUseColor(), GetUseSourceCache(), m_source_file_cache, lldb_private::Stream::Printf(), lldb_private::Stream::PutCString(), SetPrompt(), lldb_private::Properties::SetPropertyValue(), and lldb_private::CommandInterpreter::UpdatePrompt().
bool Debugger::SetREPLLanguage | ( | lldb::LanguageType | repl_lang | ) |
Definition at line 346 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
bool Debugger::SetScriptLanguage | ( | lldb::ScriptLanguage | script_lang | ) |
Definition at line 331 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
bool Debugger::SetShowProgress | ( | bool | show_progress | ) |
Definition at line 395 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
Referenced by lldb_private::REPL::REPL().
bool Debugger::SetTabSize | ( | uint32_t | tab_size | ) |
Definition at line 529 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
bool Debugger::SetTerminalWidth | ( | uint32_t | term_width | ) |
Definition at line 357 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp, m_io_handler_stack, and lldb_private::IOHandlerStack::Top().
|
static |
Definition at line 579 of file Debugger.cpp.
References lldb_private::Target::SettingsInitialize().
Referenced by lldb_private::SystemInitializerFull::Initialize().
|
static |
Definition at line 581 of file Debugger.cpp.
References lldb_private::Target::SettingsTerminate().
Referenced by lldb_private::SystemInitializerFull::Terminate().
bool Debugger::SetUseColor | ( | bool | use_color | ) |
Definition at line 382 of file Debugger.cpp.
References GetPrompt(), lldb_private::Properties::m_collection_sp, and SetPrompt().
Referenced by Debugger().
bool Debugger::SetUseExternalEditor | ( | bool | use_external_editor_p | ) |
Definition at line 371 of file Debugger.cpp.
References lldb_private::Properties::m_collection_sp.
bool Debugger::SetUseSourceCache | ( | bool | use_source_cache | ) |
Definition at line 433 of file Debugger.cpp.
References lldb_private::SourceManager::SourceFileCache::Clear(), lldb_private::Properties::m_collection_sp, and m_source_file_cache.
|
protected |
Definition at line 1795 of file Debugger.cpp.
References lldb_private::ConstString::AsCString(), DefaultEventHandler(), eBroadcastBitEventThreadIsListening, g_debugger_event_thread_stack_bytes, lldb_private::ConstString::GetLength(), lldb_private::GetLog(), lldb_private::ConstString::GetStringRef(), lldb_private::Host, lldb_private::HostThread::IsJoinable(), lldb_private::ThreadLauncher::LaunchThread(), LLDB_LOG, m_event_handler_thread, m_sync_broadcaster, and lldb_private::Listener::MakeListener().
Referenced by lldb_private::CommandInterpreter::RunCommandInterpreter().
|
protected |
Definition at line 1945 of file Debugger.cpp.
References lldb_private::GetLog(), lldb_private::Host, IOHandlerThread(), lldb_private::HostThread::IsJoinable(), lldb_private::ThreadLauncher::LaunchThread(), LLDB_LOG, and m_io_handler_thread.
Referenced by lldb_private::CommandInterpreter::RunCommandInterpreter(), and lldb_private::REPL::RunLoop().
|
protected |
Definition at line 1835 of file Debugger.cpp.
References lldb_private::Broadcaster::BroadcastEvent(), lldb_private::CommandInterpreter::eBroadcastBitQuitCommandReceived, GetCommandInterpreter(), lldb_private::HostThread::IsJoinable(), lldb_private::HostThread::Join(), and m_event_handler_thread.
Referenced by Clear(), IOHandlerThread(), and lldb_private::CommandInterpreter::RunCommandInterpreter().
|
protected |
Definition at line 1960 of file Debugger.cpp.
References lldb_private::File::Close(), GetInputFile(), lldb_private::HostThread::IsJoinable(), lldb_private::HostThread::Join(), and m_io_handler_thread.
Referenced by Clear().
|
static |
Definition at line 559 of file Debugger.cpp.
References g_debugger_list_mutex_ptr, g_debugger_list_ptr, and g_thread_pool.
Referenced by lldb_private::SystemLifetimeManager::Terminate().
|
friend |
Definition at line 454 of file Debugger.h.
|
friend |
Definition at line 456 of file Debugger.h.
|
friend |
Definition at line 455 of file Debugger.h.
|
friend |
Definition at line 78 of file Debugger.h.
|
staticprotected |
Definition at line 582 of file Debugger.h.
Referenced by Initialize(), and LoadPlugin().
|
protected |
Public Debugger event broadcaster.
Definition at line 588 of file Debugger.h.
Referenced by DefaultEventHandler(), and GetBroadcaster().
|
protected |
Definition at line 548 of file Debugger.h.
Referenced by Clear(), DefaultEventHandler(), and GetBroadcasterManager().
|
protected |
Definition at line 580 of file Debugger.h.
Referenced by Debugger(), EnableLog(), and SetLoggingCallback().
|
protected |
Definition at line 590 of file Debugger.h.
Referenced by Clear().
|
protected |
Definition at line 568 of file Debugger.h.
Referenced by Clear(), Debugger(), DefaultEventHandler(), GetAsyncExecution(), GetCommandInterpreter(), and SetAsyncExecution().
|
protected |
Definition at line 577 of file Debugger.h.
Referenced by HandleProgressEvent().
|
protected |
Definition at line 591 of file Debugger.h.
Referenced by Debugger(), and GetDummyTarget().
|
protected |
Definition at line 543 of file Debugger.h.
Referenced by GetErrorFile(), GetErrorStream(), GetErrorStreamSP(), PrintAsync(), and SetErrorFile().
|
protected |
Definition at line 585 of file Debugger.h.
Referenced by IsHandlingEvents(), StartEventHandlerThread(), and StopEventHandlerThread().
|
protected |
Definition at line 589 of file Debugger.h.
Referenced by CancelForwardEvents(), DefaultEventHandler(), EnableForwardEvents(), and IsForwardingEvents().
|
protected |
Definition at line 541 of file Debugger.h.
Referenced by GetInputFile(), GetInputFileSP(), and SetInputFile().
|
protected |
Used for shadowing the input file when capturing a reproducer.
Definition at line 546 of file Debugger.h.
Referenced by GetInputRecorder().
|
protected |
Definition at line 581 of file Debugger.h.
Referenced by Debugger(), and GetInstanceName().
|
protected |
Definition at line 574 of file Debugger.h.
Referenced by AdoptTopIOHandlerFilesIfInvalid(), CheckTopIOHandlerTypes(), ClearIOHandlers(), DispatchInputEndOfFile(), DispatchInputInterrupt(), GetIOHandlerCommandPrefix(), GetIOHandlerHelpPrologue(), GetTopIOHandlerControlSequence(), IsTopIOHandler(), PopIOHandler(), PrintAsync(), PushIOHandler(), RunIOHandlers(), RunIOHandlerSync(), and SetTerminalWidth().
|
protected |
Definition at line 575 of file Debugger.h.
Referenced by RunIOHandlers(), and RunIOHandlerSync().
|
protected |
Definition at line 586 of file Debugger.h.
Referenced by HasIOHandlerThread(), JoinIOHandlerThread(), StartIOHandlerThread(), and StopIOHandlerThread().
|
protected |
Definition at line 558 of file Debugger.h.
Referenced by Clear(), and GetListener().
|
protected |
Definition at line 584 of file Debugger.h.
Referenced by LoadPlugin().
|
protected |
Definition at line 530 of file Debugger.h.
Referenced by FlushProcessOutput().
|
protected |
Definition at line 542 of file Debugger.h.
Referenced by GetOutputFile(), GetOutputStream(), GetOutputStreamSP(), PrintAsync(), and SetOutputFile().
|
protected |
Definition at line 557 of file Debugger.h.
Referenced by Debugger(), and GetPlatformList().
|
protected |
Definition at line 570 of file Debugger.h.
Referenced by GetScriptInterpreter().
|
protected |
Definition at line 572 of file Debugger.h.
Referenced by GetScriptInterpreter().
|
protected |
Definition at line 563 of file Debugger.h.
Referenced by GetSourceFileCache(), SetPropertyValue(), and SetUseSourceCache().
|
protected |
Definition at line 559 of file Debugger.h.
Referenced by GetSourceManager().
|
protected |
Definition at line 579 of file Debugger.h.
Referenced by EnableLog().
|
protected |
Private debugger synchronization.
Definition at line 587 of file Debugger.h.
Referenced by DefaultEventHandler(), and StartEventHandlerThread().
|
protected |
Definition at line 555 of file Debugger.h.
Referenced by Clear(), GetSelectedOrDummyTarget(), GetSelectedTarget(), and GetTargetList().
|
protected |
Definition at line 554 of file Debugger.h.
Referenced by Clear(), RestoreInputTerminalState(), and SaveInputTerminalState().