LLDB mainline
|
#include <CommandObjectExpression.h>
Classes | |
class | CommandOptions |
Public Member Functions | |
CommandObjectExpression (CommandInterpreter &interpreter) | |
~CommandObjectExpression () override | |
Options * | GetOptions () override |
void | HandleCompletion (CompletionRequest &request) override |
This default version handles calling option argument completions and then calls HandleArgumentCompletion if the cursor is on an argument, not an option. | |
![]() | |
CommandObjectRaw (CommandInterpreter &interpreter, llvm::StringRef name, llvm::StringRef help="", llvm::StringRef syntax="", uint32_t flags=0) | |
~CommandObjectRaw () override=default | |
void | Execute (const char *args_string, CommandReturnObject &result) override |
![]() | |
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) |
void | SetOriginalCommandString (std::string s) |
Set the command input as it appeared in the terminal. | |
virtual void | Execute (const char *args_string, CommandReturnObject &result)=0 |
![]() | |
IOHandlerDelegate (Completion completion=Completion::None) | |
virtual | ~IOHandlerDelegate ()=default |
virtual void | IOHandlerActivated (IOHandler &io_handler, bool interactive) |
virtual void | IOHandlerDeactivated (IOHandler &io_handler) |
virtual std::optional< std::string > | IOHandlerSuggestion (IOHandler &io_handler, llvm::StringRef line) |
virtual void | IOHandlerComplete (IOHandler &io_handler, CompletionRequest &request) |
virtual const char * | IOHandlerGetFixIndentationCharacters () |
virtual int | IOHandlerFixIndentation (IOHandler &io_handler, const StringList &lines, int cursor_position) |
Called when a new line is created or one of an identified set of indentation characters is typed. | |
virtual void | IOHandlerInputComplete (IOHandler &io_handler, std::string &data)=0 |
Called when a line or lines have been retrieved. | |
virtual void | IOHandlerInputInterrupted (IOHandler &io_handler, std::string &data) |
virtual bool | IOHandlerIsInputComplete (IOHandler &io_handler, StringList &lines) |
Called to determine whether typing enter after the last line in lines should end input. | |
virtual llvm::StringRef | IOHandlerGetControlSequence (char ch) |
virtual const char * | IOHandlerGetCommandPrefix () |
virtual const char * | IOHandlerGetHelpPrologue () |
virtual bool | IOHandlerInterrupt (IOHandler &io_handler) |
Protected Member Functions | |
void | IOHandlerInputComplete (IOHandler &io_handler, std::string &line) override |
Called when a line or lines have been retrieved. | |
bool | IOHandlerIsInputComplete (IOHandler &io_handler, StringList &lines) override |
Called to determine whether typing enter after the last line in lines should end input. | |
void | DoExecute (llvm::StringRef command, CommandReturnObject &result) override |
bool | EvaluateExpression (llvm::StringRef expr, Stream &output_stream, Stream &error_stream, CommandReturnObject &result) |
Evaluates the given expression. | |
void | GetMultilineExpression () |
![]() | |
virtual void | DoExecute (llvm::StringRef command, CommandReturnObject &result)=0 |
bool | WantsRawCommandString () override |
![]() | |
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 | |
OptionGroupOptions | m_option_group |
OptionGroupFormat | m_format_options |
OptionGroupValueObjectDisplay | m_varobj_options |
OptionGroupBoolean | m_repl_option |
CommandOptions | m_command_options |
uint32_t | m_expr_line_count |
std::string | m_expr_lines |
std::string | m_fixed_expression |
![]() | |
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 |
std::string | m_original_command |
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 |
![]() | |
Completion | m_completion |
Definition at line 22 of file CommandObjectExpression.h.
CommandObjectExpression::CommandObjectExpression | ( | CommandInterpreter & | interpreter | ) |
Definition at line 250 of file CommandObjectExpression.cpp.
References lldb_private::CommandObject::SetHelpLong().
|
overridedefault |
|
overrideprotectedvirtual |
Implements lldb_private::CommandObjectRaw.
Definition at line 557 of file CommandObjectExpression.cpp.
References lldb_private::CommandObjectExpression::CommandOptions::debug, lldb_private::CommandObjectExpression::CommandOptions::ignore_breakpoints, lldb_private::CommandObjectExpression::CommandOptions::OptionParsingStarting(), lldb_private::EvaluateExpressionOptions::SetIgnoreBreakpoints(), lldb_private::EvaluateExpressionOptions::SetTimeout(), lldb_private::EvaluateExpressionOptions::SetTryAllThreads(), lldb_private::EvaluateExpressionOptions::SetUnwindOnError(), lldb_private::CommandObjectExpression::CommandOptions::timeout, lldb_private::CommandObjectExpression::CommandOptions::try_all_threads, and lldb_private::CommandObjectExpression::CommandOptions::unwind_on_error.
|
protected |
Evaluates the given expression.
output_stream | The stream to which the evaluation result will be printed. |
error_stream | Contains error messages that should be displayed to the user in case the evaluation fails. |
result | A CommandReturnObject which status will be set to the appropriate value depending on evaluation success and whether the expression produced any result. |
Definition at line 378 of file CommandObjectExpression.cpp.
|
protected |
Definition at line 509 of file CommandObjectExpression.cpp.
References lldb_private::CommandReturnObject::GetErrorString().
|
overridevirtual |
Reimplemented from lldb_private::CommandObject.
Definition at line 307 of file CommandObjectExpression.cpp.
|
overridevirtual |
This default version handles calling option argument completions and then calls HandleArgumentCompletion if the cursor is on an argument, not an option.
Don't override this method, override HandleArgumentCompletion instead unless you have special reasons.
[in,out] | request | The completion request that needs to be answered. |
Reimplemented from lldb_private::CommandObject.
Definition at line 309 of file CommandObjectExpression.cpp.
|
overrideprotectedvirtual |
Called when a line or lines have been retrieved.
This function can handle the current line and possibly call IOHandler::SetIsDone(true) when the IO handler is done like when "quit" is entered as a command, of when an empty line is received. It is up to the delegate to determine when a line should cause a IOHandler to exit.
Implements lldb_private::IOHandlerDelegate.
Definition at line 478 of file CommandObjectExpression.cpp.
|
overrideprotectedvirtual |
Called to determine whether typing enter after the last line in lines should end input.
This function will not be called on IOHandler objects that are getting single lines.
[in] | io_handler | The IOHandler that responsible for updating the lines. |
[in] | lines | The current multi-line content. May be altered to provide alternative input when complete. |
Reimplemented from lldb_private::IOHandlerDelegate.
Definition at line 496 of file CommandObjectExpression.cpp.
|
protected |
Definition at line 99 of file CommandObjectExpression.h.
|
protected |
Definition at line 100 of file CommandObjectExpression.h.
|
protected |
Definition at line 101 of file CommandObjectExpression.h.
|
protected |
Definition at line 102 of file CommandObjectExpression.h.
|
protected |
Definition at line 96 of file CommandObjectExpression.h.
|
protected |
Definition at line 95 of file CommandObjectExpression.h.
|
protected |
Definition at line 98 of file CommandObjectExpression.h.
|
protected |
Definition at line 97 of file CommandObjectExpression.h.