summaryrefslogtreecommitdiffstats
path: root/lldb/source/Commands
diff options
context:
space:
mode:
authorZachary Turner <zturner@google.com>2016-11-12 20:41:02 +0000
committerZachary Turner <zturner@google.com>2016-11-12 20:41:02 +0000
commit442f6530d21d0980c591522a1bd35dcaebce6f68 (patch)
treed0dfcd032d930ebc77461e41520f4a73012f0c76 /lldb/source/Commands
parente2411fabdaf01d883d77cf3f8456367a9dc685ff (diff)
downloadbcm5719-llvm-442f6530d21d0980c591522a1bd35dcaebce6f68.tar.gz
bcm5719-llvm-442f6530d21d0980c591522a1bd35dcaebce6f68.zip
Make CommandObject help getters/setters use StringRef.
llvm-svn: 286731
Diffstat (limited to 'lldb/source/Commands')
-rw-r--r--lldb/source/Commands/CommandObjectCommands.cpp73
-rw-r--r--lldb/source/Commands/CommandObjectMultiword.cpp4
-rw-r--r--lldb/source/Commands/CommandObjectType.cpp33
3 files changed, 57 insertions, 53 deletions
diff --git a/lldb/source/Commands/CommandObjectCommands.cpp b/lldb/source/Commands/CommandObjectCommands.cpp
index 1106b37720c..b94000fe8ff 100644
--- a/lldb/source/Commands/CommandObjectCommands.cpp
+++ b/lldb/source/Commands/CommandObjectCommands.cpp
@@ -1282,7 +1282,7 @@ public:
: CommandObjectRaw(interpreter, name),
m_function_name(funct), m_synchro(synch), m_fetched_help_long(false) {
if (!help.empty())
- SetHelp(help.c_str());
+ SetHelp(help);
else {
StreamString stream;
stream.Printf("For more information run 'help %s'", name.c_str());
@@ -1298,17 +1298,19 @@ public:
ScriptedCommandSynchronicity GetSynchronicity() { return m_synchro; }
- const char *GetHelpLong() override {
- if (!m_fetched_help_long) {
- ScriptInterpreter *scripter = m_interpreter.GetScriptInterpreter();
- if (scripter) {
- std::string docstring;
- m_fetched_help_long = scripter->GetDocumentationForItem(
- m_function_name.c_str(), docstring);
- if (!docstring.empty())
- SetHelpLong(docstring.c_str());
- }
- }
+ llvm::StringRef GetHelpLong() override {
+ if (m_fetched_help_long)
+ return CommandObjectRaw::GetHelpLong();
+
+ ScriptInterpreter *scripter = m_interpreter.GetScriptInterpreter();
+ if (!scripter)
+ return CommandObjectRaw::GetHelpLong();
+
+ std::string docstring;
+ m_fetched_help_long =
+ scripter->GetDocumentationForItem(m_function_name.c_str(), docstring);
+ if (!docstring.empty())
+ SetHelpLong(docstring);
return CommandObjectRaw::GetHelpLong();
}
@@ -1371,31 +1373,34 @@ public:
ScriptedCommandSynchronicity GetSynchronicity() { return m_synchro; }
- const char *GetHelp() override {
- if (!m_fetched_help_short) {
- ScriptInterpreter *scripter = m_interpreter.GetScriptInterpreter();
- if (scripter) {
- std::string docstring;
- m_fetched_help_short =
- scripter->GetShortHelpForCommandObject(m_cmd_obj_sp, docstring);
- if (!docstring.empty())
- SetHelp(docstring.c_str());
- }
- }
+ llvm::StringRef GetHelp() override {
+ if (m_fetched_help_short)
+ return CommandObjectRaw::GetHelp();
+ ScriptInterpreter *scripter = m_interpreter.GetScriptInterpreter();
+ if (!scripter)
+ return CommandObjectRaw::GetHelp();
+ std::string docstring;
+ m_fetched_help_short =
+ scripter->GetShortHelpForCommandObject(m_cmd_obj_sp, docstring);
+ if (!docstring.empty())
+ SetHelp(docstring);
+
return CommandObjectRaw::GetHelp();
}
- const char *GetHelpLong() override {
- if (!m_fetched_help_long) {
- ScriptInterpreter *scripter = m_interpreter.GetScriptInterpreter();
- if (scripter) {
- std::string docstring;
- m_fetched_help_long =
- scripter->GetLongHelpForCommandObject(m_cmd_obj_sp, docstring);
- if (!docstring.empty())
- SetHelpLong(docstring.c_str());
- }
- }
+ llvm::StringRef GetHelpLong() override {
+ if (m_fetched_help_long)
+ return CommandObjectRaw::GetHelpLong();
+
+ ScriptInterpreter *scripter = m_interpreter.GetScriptInterpreter();
+ if (!scripter)
+ return CommandObjectRaw::GetHelpLong();
+
+ std::string docstring;
+ m_fetched_help_long =
+ scripter->GetLongHelpForCommandObject(m_cmd_obj_sp, docstring);
+ if (!docstring.empty())
+ SetHelpLong(docstring);
return CommandObjectRaw::GetHelpLong();
}
diff --git a/lldb/source/Commands/CommandObjectMultiword.cpp b/lldb/source/Commands/CommandObjectMultiword.cpp
index 9194b1d5103..249863b4e8a 100644
--- a/lldb/source/Commands/CommandObjectMultiword.cpp
+++ b/lldb/source/Commands/CommandObjectMultiword.cpp
@@ -278,11 +278,11 @@ CommandObjectProxy::CommandObjectProxy(CommandInterpreter &interpreter,
CommandObjectProxy::~CommandObjectProxy() = default;
-const char *CommandObjectProxy::GetHelpLong() {
+llvm::StringRef CommandObjectProxy::GetHelpLong() {
CommandObject *proxy_command = GetProxyCommandObject();
if (proxy_command)
return proxy_command->GetHelpLong();
- return nullptr;
+ return llvm::StringRef();
}
bool CommandObjectProxy::IsRemovable() const {
diff --git a/lldb/source/Commands/CommandObjectType.cpp b/lldb/source/Commands/CommandObjectType.cpp
index 64614299bf0..e991817edc5 100644
--- a/lldb/source/Commands/CommandObjectType.cpp
+++ b/lldb/source/Commands/CommandObjectType.cpp
@@ -2841,26 +2841,25 @@ public:
Options *GetOptions() override { return &m_option_group; }
- const char *GetHelpLong() override {
- if (m_cmd_help_long.empty()) {
- StreamString stream;
- // FIXME: hardcoding languages is not good
- lldb::LanguageType languages[] = {eLanguageTypeObjC,
- eLanguageTypeC_plus_plus};
-
- for (const auto lang_type : languages) {
- if (auto language = Language::FindPlugin(lang_type)) {
- if (const char *help =
- language->GetLanguageSpecificTypeLookupHelp()) {
- stream.Printf("%s\n", help);
- }
+ llvm::StringRef GetHelpLong() override {
+ if (!m_cmd_help_long.empty())
+ return m_cmd_help_long;
+
+ StreamString stream;
+ // FIXME: hardcoding languages is not good
+ lldb::LanguageType languages[] = {eLanguageTypeObjC,
+ eLanguageTypeC_plus_plus};
+
+ for (const auto lang_type : languages) {
+ if (auto language = Language::FindPlugin(lang_type)) {
+ if (const char *help = language->GetLanguageSpecificTypeLookupHelp()) {
+ stream.Printf("%s\n", help);
}
}
-
- if (stream.GetData())
- m_cmd_help_long.assign(stream.GetString());
}
- return this->CommandObject::GetHelpLong();
+
+ m_cmd_help_long = stream.GetString();
+ return m_cmd_help_long;
}
bool DoExecute(const char *raw_command_line,
OpenPOWER on IntegriCloud