From: Zachary Turner Date: Wed, 16 Nov 2016 21:34:22 +0000 (+0000) Subject: Update GenerateAdditionalHelpAvenues to take StringRef. X-Git-Tag: llvmorg-4.0.0-rc1~4373 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a49c2019f14e5ea5de35d6db88da1b081312ea4a;p=platform%2Fupstream%2Fllvm.git Update GenerateAdditionalHelpAvenues to take StringRef. llvm-svn: 287155 --- diff --git a/lldb/source/Commands/CommandObjectCommands.cpp b/lldb/source/Commands/CommandObjectCommands.cpp index 8b32b89..946bb83 100644 --- a/lldb/source/Commands/CommandObjectCommands.cpp +++ b/lldb/source/Commands/CommandObjectCommands.cpp @@ -946,7 +946,7 @@ protected: const bool generate_apropos = true; const bool generate_type_lookup = false; CommandObjectHelp::GenerateAdditionalHelpAvenuesMessage( - &error_msg_stream, command_name, nullptr, nullptr, generate_apropos, + &error_msg_stream, command_name, llvm::StringRef(), llvm::StringRef(), generate_apropos, generate_type_lookup); result.AppendError(error_msg_stream.GetString()); result.SetStatus(eReturnStatusFailed); diff --git a/lldb/source/Commands/CommandObjectHelp.cpp b/lldb/source/Commands/CommandObjectHelp.cpp index 4a8f01c..41da682 100644 --- a/lldb/source/Commands/CommandObjectHelp.cpp +++ b/lldb/source/Commands/CommandObjectHelp.cpp @@ -25,21 +25,26 @@ using namespace lldb_private; //------------------------------------------------------------------------- void CommandObjectHelp::GenerateAdditionalHelpAvenuesMessage( - Stream *s, const char *command, const char *prefix, const char *subcommand, + Stream *s, llvm::StringRef command, llvm::StringRef prefix, llvm::StringRef subcommand, bool include_apropos, bool include_type_lookup) { - if (s && command && *command) { - s->Printf("'%s' is not a known command.\n", command); - s->Printf("Try '%shelp' to see a current list of commands.\n", - prefix ? prefix : ""); - if (include_apropos) { - s->Printf("Try '%sapropos %s' for a list of related commands.\n", - prefix ? prefix : "", subcommand ? subcommand : command); - } - if (include_type_lookup) { - s->Printf("Try '%stype lookup %s' for information on types, methods, " - "functions, modules, etc.", - prefix ? prefix : "", subcommand ? subcommand : command); - } + if (!s || command.empty()) + return; + + std::string command_str = command.str(); + std::string prefix_str = prefix.str(); + std::string subcommand_str = subcommand.str(); + const std::string &lookup_str = !subcommand_str.empty() ? subcommand_str : command_str; + s->Printf("'%s' is not a known command.\n", command_str.c_str()); + s->Printf("Try '%shelp' to see a current list of commands.\n", + prefix.str().c_str()); + if (include_apropos) { + s->Printf("Try '%sapropos %s' for a list of related commands.\n", + prefix_str.c_str(), lookup_str.c_str()); + } + if (include_type_lookup) { + s->Printf("Try '%stype lookup %s' for information on types, methods, " + "functions, modules, etc.", + prefix_str.c_str(), lookup_str.c_str()); } } @@ -198,7 +203,7 @@ bool CommandObjectHelp::DoExecute(Args &command, CommandReturnObject &result) { StreamString error_msg_stream; GenerateAdditionalHelpAvenuesMessage(&error_msg_stream, command.GetArgumentAtIndex(0), - m_interpreter.GetCommandPrefix()); + m_interpreter.GetCommandPrefix(), ""); result.AppendError(error_msg_stream.GetString()); result.SetStatus(eReturnStatusFailed); } diff --git a/lldb/source/Commands/CommandObjectHelp.h b/lldb/source/Commands/CommandObjectHelp.h index 5e3cf74..721917a 100644 --- a/lldb/source/Commands/CommandObjectHelp.h +++ b/lldb/source/Commands/CommandObjectHelp.h @@ -35,8 +35,8 @@ public: StringList &matches) override; static void GenerateAdditionalHelpAvenuesMessage( - Stream *s, const char *command, const char *prefix = nullptr, - const char *subcommand = nullptr, bool include_apropos = true, + Stream *s, llvm::StringRef command, llvm::StringRef prefix, + llvm::StringRef subcommand, bool include_apropos = true, bool include_type_lookup = true); class CommandOptions : public Options { diff --git a/lldb/source/Commands/CommandObjectSyntax.cpp b/lldb/source/Commands/CommandObjectSyntax.cpp index b2930c2..ac3f876 100644 --- a/lldb/source/Commands/CommandObjectSyntax.cpp +++ b/lldb/source/Commands/CommandObjectSyntax.cpp @@ -93,7 +93,7 @@ bool CommandObjectSyntax::DoExecute(Args &command, const bool generate_apropos = true; const bool generate_type_lookup = false; CommandObjectHelp::GenerateAdditionalHelpAvenuesMessage( - &error_msg_stream, cmd_string.c_str(), nullptr, nullptr, + &error_msg_stream, cmd_string, "", "", generate_apropos, generate_type_lookup); result.AppendErrorWithFormat("%s", error_msg_stream.GetData()); result.SetStatus(eReturnStatusFailed);