LLDB mainline
|
Public Member Functions | |
CommandObjectThreadStepWithTypeAndScope (CommandInterpreter &interpreter, const char *name, const char *help, const char *syntax, StepType step_type) | |
~CommandObjectThreadStepWithTypeAndScope () override=default | |
void | HandleArgumentCompletion (CompletionRequest &request, OptionElementVector &opt_element_vector) override |
The default version handles argument definitions that have only one argument type, and use one of the argument types that have an entry in the CommonCompletions. | |
Options * | GetOptions () override |
Public Member Functions inherited from lldb_private::CommandObjectParsed | |
CommandObjectParsed (CommandInterpreter &interpreter, const char *name, const char *help=nullptr, const char *syntax=nullptr, uint32_t flags=0) | |
~CommandObjectParsed () override=default | |
void | Execute (const char *args_string, CommandReturnObject &result) override |
Public Member Functions inherited from lldb_private::CommandObject | |
CommandObject (CommandInterpreter &interpreter, llvm::StringRef name, llvm::StringRef help="", llvm::StringRef syntax="", uint32_t flags=0) | |
virtual | ~CommandObject ()=default |
CommandInterpreter & | GetCommandInterpreter () |
Debugger & | GetDebugger () |
virtual llvm::StringRef | GetHelp () |
virtual llvm::StringRef | GetHelpLong () |
virtual llvm::StringRef | GetSyntax () |
llvm::StringRef | GetCommandName () const |
virtual void | SetHelp (llvm::StringRef str) |
virtual void | SetHelpLong (llvm::StringRef str) |
void | SetSyntax (llvm::StringRef str) |
virtual bool | IsRemovable () const |
virtual bool | IsMultiwordObject () |
bool | IsUserCommand () |
void | SetIsUserCommand (bool is_user) |
virtual CommandObjectMultiword * | GetAsMultiwordCommand () |
virtual bool | IsAlias () |
virtual bool | IsDashDashCommand () |
virtual lldb::CommandObjectSP | GetSubcommandSP (llvm::StringRef sub_cmd, StringList *matches=nullptr) |
virtual lldb::CommandObjectSP | GetSubcommandSPExact (llvm::StringRef sub_cmd) |
virtual CommandObject * | GetSubcommandObject (llvm::StringRef sub_cmd, StringList *matches=nullptr) |
void | FormatLongHelpText (Stream &output_strm, llvm::StringRef long_help) |
void | GenerateHelpText (CommandReturnObject &result) |
virtual void | GenerateHelpText (Stream &result) |
virtual bool | LoadSubCommand (llvm::StringRef cmd_name, const lldb::CommandObjectSP &command_obj) |
virtual llvm::Error | LoadUserSubcommand (llvm::StringRef cmd_name, const lldb::CommandObjectSP &command_obj, bool can_replace) |
virtual bool | WantsRawCommandString ()=0 |
virtual bool | WantsCompletion () |
virtual Options * | GetOptions () |
void | AddSimpleArgumentList (lldb::CommandArgumentType arg_type, ArgumentRepetitionType repetition_type=eArgRepeatPlain) |
void | AddIDsArgumentData (IDType type) |
int | GetNumArgumentEntries () |
CommandArgumentEntry * | GetArgumentEntryAtIndex (int idx) |
void | GetFormattedCommandArguments (Stream &str, uint32_t opt_set_mask=LLDB_OPT_SET_ALL) |
bool | ParseOptions (Args &args, CommandReturnObject &result) |
void | SetCommandName (llvm::StringRef name) |
virtual void | HandleCompletion (CompletionRequest &request) |
This default version handles calling option argument completions and then calls HandleArgumentCompletion if the cursor is on an argument, not an option. | |
virtual void | HandleArgumentCompletion (CompletionRequest &request, OptionElementVector &opt_element_vector) |
The default version handles argument definitions that have only one argument type, and use one of the argument types that have an entry in the CommonCompletions. | |
bool | HelpTextContainsWord (llvm::StringRef search_word, bool search_short_help=true, bool search_long_help=true, bool search_syntax=true, bool search_options=true) |
Flags & | GetFlags () |
The flags accessor. | |
const Flags & | GetFlags () const |
The flags const accessor. | |
virtual std::optional< std::string > | GetRepeatCommand (Args ¤t_command_args, uint32_t index) |
Get the command that appropriate for a "repeat" of the current command. | |
bool | HasOverrideCallback () const |
void | SetOverrideCallback (lldb::CommandOverrideCallback callback, void *baton) |
void | SetOverrideCallback (lldb_private::CommandOverrideCallbackWithResult callback, void *baton) |
bool | InvokeOverrideCallback (const char **argv, CommandReturnObject &result) |
virtual void | Execute (const char *args_string, CommandReturnObject &result)=0 |
Protected Member Functions | |
void | DoExecute (Args &command, CommandReturnObject &result) override |
Protected Member Functions inherited from lldb_private::CommandObjectParsed | |
virtual void | DoExecute (Args &command, CommandReturnObject &result)=0 |
bool | WantsRawCommandString () override |
Protected Member Functions inherited from lldb_private::CommandObject | |
bool | ParseOptionsAndNotify (Args &args, CommandReturnObject &result, OptionGroupOptions &group_options, ExecutionContext &exe_ctx) |
virtual const char * | GetInvalidTargetDescription () |
virtual const char * | GetInvalidProcessDescription () |
virtual const char * | GetInvalidThreadDescription () |
virtual const char * | GetInvalidFrameDescription () |
virtual const char * | GetInvalidRegContextDescription () |
Target & | GetDummyTarget () |
Target & | GetTarget () |
Thread * | GetDefaultThread () |
bool | CheckRequirements (CommandReturnObject &result) |
Check the command to make sure anything required by this command is available. | |
void | Cleanup () |
Protected Attributes | |
StepType | m_step_type |
ThreadStepScopeOptionGroup | m_options |
OptionGroupPythonClassWithDict | m_class_options |
OptionGroupOptions | m_all_options |
Protected Attributes inherited from lldb_private::CommandObject | |
CommandInterpreter & | m_interpreter |
ExecutionContext | m_exe_ctx |
std::unique_lock< std::recursive_mutex > | m_api_locker |
std::string | m_cmd_name |
std::string | m_cmd_help_short |
std::string | m_cmd_help_long |
std::string | m_cmd_syntax |
Flags | m_flags |
std::vector< CommandArgumentEntry > | m_arguments |
lldb::CommandOverrideCallback | m_deprecated_command_override_callback |
lldb_private::CommandOverrideCallbackWithResult | m_command_override_callback |
void * | m_command_override_baton |
bool | m_is_user_command = false |
Definition at line 380 of file CommandObjectThread.cpp.
|
inline |
Definition at line 382 of file CommandObjectThread.cpp.
References lldb_private::CommandObject::AddSimpleArgumentList(), lldb_private::OptionGroupOptions::Append(), lldb_private::eArgRepeatOptional, lldb::eArgTypeThreadIndex, lldb_private::eStepTypeScripted, lldb_private::OptionGroupOptions::Finalize(), LLDB_OPT_SET_1, LLDB_OPT_SET_2, m_all_options, m_class_options, and m_options.
|
overridedefault |
|
inlineoverrideprotectedvirtual |
Implements lldb_private::CommandObjectParsed.
Definition at line 415 of file CommandObjectThread.cpp.
References lldb_private::CommandReturnObject::AppendError(), lldb_private::CommandReturnObject::AppendErrorWithFormat(), lldb_private::CommandReturnObject::AppendMessage(), lldb_private::CommandReturnObject::AppendWarning(), lldb_private::SymbolContext::block, DoNoSelectMostRelevantFrame, lldb::eAllThreads, lldb::eOnlyDuringStepping, lldb::eReturnStatusSuccessContinuingNoResult, lldb::eReturnStatusSuccessFinishNoResult, error(), lldb_private::eStepTypeInto, lldb_private::eStepTypeOut, lldb_private::eStepTypeOver, lldb_private::eStepTypeScripted, lldb_private::eStepTypeTrace, lldb_private::eStepTypeTraceOver, lldb_private::eVoteNoOpinion, lldb_private::eVoteYes, lldb_private::ThreadList::FindThreadByIndexID(), lldb_private::SymbolContext::GetAddressRangeFromHereToEndLine(), lldb_private::Args::GetArgumentAtIndex(), lldb_private::Args::GetArgumentCount(), lldb_private::AddressRange::GetBaseAddress(), lldb_private::AddressRange::GetByteSize(), lldb_private::CommandObject::GetDebugger(), lldb_private::CommandObject::GetDefaultThread(), lldb_private::Address::GetFileAddress(), lldb_private::StackFrame::GetFrameCodeAddress(), lldb_private::UserID::GetID(), lldb_private::Process::GetIOHandlerID(), lldb_private::OptionGroupPythonClassWithDict::GetName(), lldb_private::ExecutionContext::GetProcessPtr(), lldb_private::Block::GetRangeContainingAddress(), lldb_private::Thread::GetSelectedFrameIndex(), lldb_private::StreamString::GetSize(), lldb_private::ThreadList::GetSize(), lldb_private::Thread::GetStackFrameAtIndex(), lldb_private::StreamString::GetString(), lldb_private::OptionGroupPythonClassWithDict::GetStructuredData(), lldb_private::StackFrame::GetSymbolContext(), lldb_private::CommandInterpreter::GetSynchronous(), lldb_private::Process::GetThreadList(), lldb_private::StackFrame::HasDebugInformation(), lldb_private::Address::IsValid(), lldb_private::SymbolContext::line_entry, LLDB_INVALID_LINE_NUMBER, ThreadStepScopeOptionGroup::m_avoid_regexp, m_class_options, ThreadStepScopeOptionGroup::m_end_line, ThreadStepScopeOptionGroup::m_end_line_is_block_end, lldb_private::CommandObject::m_exe_ctx, lldb_private::CommandObject::m_interpreter, m_options, ThreadStepScopeOptionGroup::m_run_mode, ThreadStepScopeOptionGroup::m_step_count, ThreadStepScopeOptionGroup::m_step_in_avoid_no_debug, ThreadStepScopeOptionGroup::m_step_in_target, ThreadStepScopeOptionGroup::m_step_out_avoid_no_debug, m_step_type, lldb_private::Thread::QueueThreadPlanForStepInRange(), lldb_private::Thread::QueueThreadPlanForStepOut(), lldb_private::Thread::QueueThreadPlanForStepOverRange(), lldb_private::Thread::QueueThreadPlanForStepScripted(), lldb_private::Thread::QueueThreadPlanForStepSingleInstruction(), lldb_private::LineEntry::range, lldb_private::Process::Resume(), lldb_private::Process::ResumeSynchronous(), lldb_private::ThreadPlanStepInRange::SetAvoidRegexp(), lldb_private::CommandReturnObject::SetDidChangeProcessState(), lldb_private::CommandReturnObject::SetError(), lldb_private::ThreadList::SetSelectedThreadByID(), lldb_private::CommandReturnObject::SetStatus(), and lldb_private::Process::SyncIOHandler().
|
inlineoverridevirtual |
Reimplemented from lldb_private::CommandObject.
Definition at line 412 of file CommandObjectThread.cpp.
References m_all_options.
|
inlineoverridevirtual |
The default version handles argument definitions that have only one argument type, and use one of the argument types that have an entry in the CommonCompletions.
Override this if you have a more complex argument setup. FIXME: we should be able to extend this to more complex argument definitions provided we have completers for all the argument types.
The input array contains a parsed version of the line.
We've constructed the map of options and their arguments as well if that is helpful for the completion.
[in,out] | request | The completion request that needs to be answered. |
Reimplemented from lldb_private::CommandObject.
Definition at line 405 of file CommandObjectThread.cpp.
References lldb_private::CompletionRequest::GetCursorIndex(), and lldb_private::CommandObject::HandleArgumentCompletion().
|
protected |
Definition at line 632 of file CommandObjectThread.cpp.
Referenced by CommandObjectThreadStepWithTypeAndScope(), and GetOptions().
|
protected |
Definition at line 631 of file CommandObjectThread.cpp.
Referenced by CommandObjectThreadStepWithTypeAndScope(), and DoExecute().
|
protected |
Definition at line 630 of file CommandObjectThread.cpp.
Referenced by CommandObjectThreadStepWithTypeAndScope(), and DoExecute().
|
protected |
Definition at line 629 of file CommandObjectThread.cpp.
Referenced by DoExecute().