[Lldb-commits] [lldb] r286723 - Make Options::SetOptionValue take a StringRef.
Zachary Turner via lldb-commits
lldb-commits at lists.llvm.org
Sat Nov 12 08:56:47 PST 2016
Author: zturner
Date: Sat Nov 12 10:56:47 2016
New Revision: 286723
URL: http://llvm.org/viewvc/llvm-project?rev=286723&view=rev
Log:
Make Options::SetOptionValue take a StringRef.
Modified:
lldb/trunk/include/lldb/Interpreter/Options.h
lldb/trunk/include/lldb/Target/Process.h
lldb/trunk/include/lldb/Target/ProcessLaunchInfo.h
lldb/trunk/source/Commands/CommandObjectArgs.cpp
lldb/trunk/source/Commands/CommandObjectArgs.h
lldb/trunk/source/Commands/CommandObjectBreakpoint.cpp
lldb/trunk/source/Commands/CommandObjectBreakpointCommand.cpp
lldb/trunk/source/Commands/CommandObjectCommands.cpp
lldb/trunk/source/Commands/CommandObjectDisassemble.cpp
lldb/trunk/source/Commands/CommandObjectDisassemble.h
lldb/trunk/source/Commands/CommandObjectExpression.h
lldb/trunk/source/Commands/CommandObjectFrame.cpp
lldb/trunk/source/Commands/CommandObjectHelp.h
lldb/trunk/source/Commands/CommandObjectLog.cpp
lldb/trunk/source/Commands/CommandObjectMemory.cpp
lldb/trunk/source/Commands/CommandObjectPlatform.cpp
lldb/trunk/source/Commands/CommandObjectProcess.cpp
lldb/trunk/source/Commands/CommandObjectRegister.cpp
lldb/trunk/source/Commands/CommandObjectSettings.cpp
lldb/trunk/source/Commands/CommandObjectSource.cpp
lldb/trunk/source/Commands/CommandObjectTarget.cpp
lldb/trunk/source/Commands/CommandObjectThread.cpp
lldb/trunk/source/Commands/CommandObjectType.cpp
lldb/trunk/source/Commands/CommandObjectWatchpoint.cpp
lldb/trunk/source/Commands/CommandObjectWatchpointCommand.cpp
lldb/trunk/source/Interpreter/Options.cpp
lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
lldb/trunk/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp
lldb/trunk/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp
lldb/trunk/source/Target/Process.cpp
lldb/trunk/source/Target/ProcessLaunchInfo.cpp
Modified: lldb/trunk/include/lldb/Interpreter/Options.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Interpreter/Options.h?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Interpreter/Options.h (original)
+++ lldb/trunk/include/lldb/Interpreter/Options.h Sat Nov 12 10:56:47 2016
@@ -192,8 +192,7 @@ public:
/// @see Args::ParseOptions (Options&)
/// @see man getopt_long_only
//------------------------------------------------------------------
- // TODO: Make this function take a StringRef.
- virtual Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ virtual Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) = 0;
//------------------------------------------------------------------
@@ -344,7 +343,6 @@ public:
virtual Error SetOptionValue(uint32_t option_idx,
llvm::StringRef option_value,
ExecutionContext *execution_context) = 0;
- Error SetOptionValue(uint32_t, const char *, ExecutionContext *) = delete;
virtual void OptionParsingStarting(ExecutionContext *execution_context) = 0;
@@ -403,7 +401,7 @@ public:
bool DidFinalize() { return m_did_finalize; }
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override;
void OptionParsingStarting(ExecutionContext *execution_context) override;
Modified: lldb/trunk/include/lldb/Target/Process.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Target/Process.h?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Target/Process.h (original)
+++ lldb/trunk/include/lldb/Target/Process.h Sat Nov 12 10:56:47 2016
@@ -214,12 +214,7 @@ public:
return (m_plugin_name.empty() ? nullptr : m_plugin_name.c_str());
}
- void SetProcessPluginName(const char *plugin) {
- if (plugin && plugin[0])
- m_plugin_name.assign(plugin);
- else
- m_plugin_name.clear();
- }
+ void SetProcessPluginName(llvm::StringRef plugin) { m_plugin_name = plugin; }
void Clear() {
ProcessInstanceInfo::Clear();
@@ -285,7 +280,7 @@ public:
~ProcessLaunchCommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override;
void OptionParsingStarting(ExecutionContext *execution_context) override {
Modified: lldb/trunk/include/lldb/Target/ProcessLaunchInfo.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Target/ProcessLaunchInfo.h?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Target/ProcessLaunchInfo.h (original)
+++ lldb/trunk/include/lldb/Target/ProcessLaunchInfo.h Sat Nov 12 10:56:47 2016
@@ -69,7 +69,7 @@ public:
const char *GetProcessPluginName() const;
- void SetProcessPluginName(const char *plugin);
+ void SetProcessPluginName(llvm::StringRef plugin);
const FileSpec &GetShell() const;
Modified: lldb/trunk/source/Commands/CommandObjectArgs.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectArgs.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectArgs.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectArgs.cpp Sat Nov 12 10:56:47 2016
@@ -55,7 +55,7 @@ CommandObjectArgs::CommandOptions::Comma
CommandObjectArgs::CommandOptions::~CommandOptions() = default;
Error CommandObjectArgs::CommandOptions::SetOptionValue(
- uint32_t option_idx, const char *option_arg,
+ uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) {
Error error;
Modified: lldb/trunk/source/Commands/CommandObjectArgs.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectArgs.h?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectArgs.h (original)
+++ lldb/trunk/source/Commands/CommandObjectArgs.h Sat Nov 12 10:56:47 2016
@@ -27,7 +27,7 @@ public:
~CommandOptions() override;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override;
void OptionParsingStarting(ExecutionContext *execution_context) override;
Modified: lldb/trunk/source/Commands/CommandObjectBreakpoint.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectBreakpoint.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectBreakpoint.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectBreakpoint.cpp Sat Nov 12 10:56:47 2016
@@ -178,11 +178,10 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- llvm::StringRef option_strref(option_arg ? option_arg : "");
switch (short_option) {
case 'a': {
@@ -199,14 +198,11 @@ public:
m_func_name_type_mask |= eFunctionNameTypeBase;
break;
- case 'C': {
- bool success;
- m_column = StringConvert::ToUInt32(option_arg, 0, 0, &success);
- if (!success)
+ case 'C':
+ if (option_arg.getAsInteger(0, m_column))
error.SetErrorStringWithFormat("invalid column number: %s",
- option_arg);
+ option_arg.str().c_str());
break;
- }
case 'c':
m_condition.assign(option_arg);
@@ -217,8 +213,7 @@ public:
break;
case 'E': {
- LanguageType language =
- Language::GetLanguageTypeFromString(option_strref);
+ LanguageType language = Language::GetLanguageTypeFromString(option_arg);
switch (language) {
case eLanguageTypeC89:
@@ -243,12 +238,12 @@ public:
case eLanguageTypeUnknown:
error.SetErrorStringWithFormat(
"Unknown language type: '%s' for exception breakpoint",
- option_arg);
+ option_arg.str().c_str());
break;
default:
error.SetErrorStringWithFormat(
"Unsupported language type: '%s' for exception breakpoint",
- option_arg);
+ option_arg.str().c_str());
}
} break;
@@ -263,10 +258,11 @@ public:
case 'h': {
bool success;
- m_catch_bp = Args::StringToBoolean(option_strref, true, &success);
+ m_catch_bp = Args::StringToBoolean(option_arg, true, &success);
if (!success)
error.SetErrorStringWithFormat(
- "Invalid boolean value for on-catch option: '%s'", option_arg);
+ "Invalid boolean value for on-catch option: '%s'",
+ option_arg.str().c_str());
} break;
case 'H':
@@ -274,16 +270,15 @@ public:
break;
case 'i':
- m_ignore_count = StringConvert::ToUInt32(option_arg, UINT32_MAX, 0);
- if (m_ignore_count == UINT32_MAX)
+ if (option_arg.getAsInteger(0, m_ignore_count))
error.SetErrorStringWithFormat("invalid ignore count '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
case 'K': {
bool success;
bool value;
- value = Args::StringToBoolean(option_strref, true, &success);
+ value = Args::StringToBoolean(option_arg, true, &success);
if (value)
m_skip_prologue = eLazyBoolYes;
else
@@ -292,29 +287,27 @@ public:
if (!success)
error.SetErrorStringWithFormat(
"Invalid boolean value for skip prologue option: '%s'",
- option_arg);
+ option_arg.str().c_str());
} break;
- case 'l': {
- bool success;
- m_line_num = StringConvert::ToUInt32(option_arg, 0, 0, &success);
- if (!success)
+ case 'l':
+ if (option_arg.getAsInteger(0, m_line_num))
error.SetErrorStringWithFormat("invalid line number: %s.",
- option_arg);
+ option_arg.str().c_str());
break;
- }
case 'L':
- m_language = Language::GetLanguageTypeFromString(option_strref);
+ m_language = Language::GetLanguageTypeFromString(option_arg);
if (m_language == eLanguageTypeUnknown)
error.SetErrorStringWithFormat(
- "Unknown language type: '%s' for breakpoint", option_arg);
+ "Unknown language type: '%s' for breakpoint",
+ option_arg.str().c_str());
break;
case 'm': {
bool success;
bool value;
- value = Args::StringToBoolean(option_strref, true, &success);
+ value = Args::StringToBoolean(option_arg, true, &success);
if (value)
m_move_to_nearest_code = eLazyBoolYes;
else
@@ -323,7 +316,7 @@ public:
if (!success)
error.SetErrorStringWithFormat(
"Invalid boolean value for move-to-nearest-code option: '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
}
@@ -338,11 +331,11 @@ public:
break;
case 'N': {
- if (BreakpointID::StringIsBreakpointName(option_strref, error))
+ if (BreakpointID::StringIsBreakpointName(option_arg, error))
m_breakpoint_names.push_back(option_arg);
else
error.SetErrorStringWithFormat("Invalid breakpoint name: %s",
- option_arg);
+ option_arg.str().c_str());
break;
}
@@ -359,8 +352,8 @@ public:
break;
case 'O':
- m_exception_extra_args.AppendArgument(llvm::StringRef("-O"));
- m_exception_extra_args.AppendArgument(option_strref);
+ m_exception_extra_args.AppendArgument("-O");
+ m_exception_extra_args.AppendArgument(option_arg);
break;
case 'p':
@@ -385,11 +378,9 @@ public:
break;
case 't':
- m_thread_id =
- StringConvert::ToUInt64(option_arg, LLDB_INVALID_THREAD_ID, 0);
- if (m_thread_id == LLDB_INVALID_THREAD_ID)
+ if (option_arg.getAsInteger(0, m_thread_id))
error.SetErrorStringWithFormat("invalid thread id string '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
case 'T':
@@ -398,17 +389,17 @@ public:
case 'w': {
bool success;
- m_throw_bp = Args::StringToBoolean(option_strref, true, &success);
+ m_throw_bp = Args::StringToBoolean(option_arg, true, &success);
if (!success)
error.SetErrorStringWithFormat(
- "Invalid boolean value for on-throw option: '%s'", option_arg);
+ "Invalid boolean value for on-throw option: '%s'",
+ option_arg.str().c_str());
} break;
case 'x':
- m_thread_index = StringConvert::ToUInt32(option_arg, UINT32_MAX, 0);
- if (m_thread_id == UINT32_MAX)
+ if (option_arg.getAsInteger(0, m_thread_index))
error.SetErrorStringWithFormat("invalid thread index string '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
case 'X':
@@ -853,17 +844,14 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
switch (short_option) {
case 'c':
- if (option_arg != nullptr)
- m_condition.assign(option_arg);
- else
- m_condition.clear();
+ m_condition = option_arg;
m_condition_passed = true;
break;
case 'd':
@@ -878,48 +866,39 @@ public:
m_enable_value = true;
break;
case 'i':
- m_ignore_count = StringConvert::ToUInt32(option_arg, UINT32_MAX, 0);
- if (m_ignore_count == UINT32_MAX)
+ if (option_arg.getAsInteger(0, m_ignore_count))
error.SetErrorStringWithFormat("invalid ignore count '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
case 'o': {
bool value, success;
- value = Args::StringToBoolean(
- llvm::StringRef::withNullAsEmpty(option_arg), false, &success);
+ value = Args::StringToBoolean(option_arg, false, &success);
if (success) {
m_one_shot_passed = true;
m_one_shot = value;
} else
error.SetErrorStringWithFormat(
- "invalid boolean value '%s' passed for -o option", option_arg);
+ "invalid boolean value '%s' passed for -o option",
+ option_arg.str().c_str());
} break;
case 't':
if (option_arg[0] == '\0') {
m_thread_id = LLDB_INVALID_THREAD_ID;
m_thread_id_passed = true;
} else {
- m_thread_id =
- StringConvert::ToUInt64(option_arg, LLDB_INVALID_THREAD_ID, 0);
- if (m_thread_id == LLDB_INVALID_THREAD_ID)
+ if (option_arg.getAsInteger(0, m_thread_id))
error.SetErrorStringWithFormat("invalid thread id string '%s'",
- option_arg);
+ option_arg.str().c_str());
else
m_thread_id_passed = true;
}
break;
case 'T':
- if (option_arg != nullptr)
- m_thread_name.assign(option_arg);
- else
- m_thread_name.clear();
+ m_thread_name = option_arg;
m_name_passed = true;
break;
case 'q':
- if (option_arg != nullptr)
- m_queue_name.assign(option_arg);
- else
- m_queue_name.clear();
+ m_queue_name = option_arg;
m_queue_passed = true;
break;
case 'x':
@@ -927,10 +906,9 @@ public:
m_thread_index = UINT32_MAX;
m_thread_index_passed = true;
} else {
- m_thread_index = StringConvert::ToUInt32(option_arg, UINT32_MAX, 0);
- if (m_thread_id == UINT32_MAX)
+ if (option_arg.getAsInteger(0, m_thread_index))
error.SetErrorStringWithFormat("invalid thread index string '%s'",
- option_arg);
+ option_arg.str().c_str());
else
m_thread_index_passed = true;
}
@@ -1327,7 +1305,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -1474,7 +1452,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -1485,7 +1463,7 @@ public:
break;
case 'l':
- m_line_num = StringConvert::ToUInt32(option_arg, 0);
+ option_arg.getAsInteger(0, m_line_num);
break;
default:
@@ -1633,7 +1611,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -1773,29 +1751,29 @@ public:
return llvm::makeArrayRef(g_breakpoint_name_options);
}
- Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_value,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = g_breakpoint_name_options[option_idx].short_option;
switch (short_option) {
case 'N':
- if (BreakpointID::StringIsBreakpointName(option_value, error) &&
+ if (BreakpointID::StringIsBreakpointName(option_arg, error) &&
error.Success())
- m_name.SetValueFromString(option_value);
+ m_name.SetValueFromString(option_arg);
break;
case 'B':
- if (m_breakpoint.SetValueFromString(option_value).Fail())
+ if (m_breakpoint.SetValueFromString(option_arg).Fail())
error.SetErrorStringWithFormat(
"unrecognized value \"%s\" for breakpoint",
- option_value.str().c_str());
+ option_arg.str().c_str());
break;
case 'D':
- if (m_use_dummy.SetValueFromString(option_value).Fail())
+ if (m_use_dummy.SetValueFromString(option_arg).Fail())
error.SetErrorStringWithFormat(
"unrecognized value \"%s\" for use-dummy",
- option_value.str().c_str());
+ option_arg.str().c_str());
break;
default:
@@ -1805,7 +1783,6 @@ public:
}
return error;
}
- Error SetOptionValue(uint32_t, const char *, ExecutionContext *) = delete;
void OptionParsingStarting(ExecutionContext *execution_context) override {
m_name.Clear();
@@ -2116,7 +2093,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -2246,7 +2223,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
Modified: lldb/trunk/source/Commands/CommandObjectBreakpointCommand.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectBreakpointCommand.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectBreakpointCommand.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectBreakpointCommand.cpp Sat Nov 12 10:56:47 2016
@@ -280,11 +280,10 @@ are no syntax errors may indicate that a
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- auto option_strref = llvm::StringRef::withNullAsEmpty(option_arg);
switch (short_option) {
case 'o':
@@ -294,8 +293,7 @@ are no syntax errors may indicate that a
case 's':
m_script_language = (lldb::ScriptLanguage)Args::StringToOptionEnum(
- llvm::StringRef::withNullAsEmpty(option_arg),
- g_breakpoint_add_options[option_idx].enum_values,
+ option_arg, g_breakpoint_add_options[option_idx].enum_values,
eScriptLanguageNone, error);
if (m_script_language == eScriptLanguagePython ||
@@ -308,10 +306,11 @@ are no syntax errors may indicate that a
case 'e': {
bool success = false;
- m_stop_on_error = Args::StringToBoolean(option_strref, false, &success);
+ m_stop_on_error = Args::StringToBoolean(option_arg, false, &success);
if (!success)
error.SetErrorStringWithFormat(
- "invalid value for stop-on-error: \"%s\"", option_arg);
+ "invalid value for stop-on-error: \"%s\"",
+ option_arg.str().c_str());
} break;
case 'F':
@@ -511,7 +510,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
Modified: lldb/trunk/source/Commands/CommandObjectCommands.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectCommands.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectCommands.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectCommands.cpp Sat Nov 12 10:56:47 2016
@@ -66,29 +66,26 @@ protected:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- llvm::StringRef option_strref =
- llvm::StringRef::withNullAsEmpty(option_arg);
switch (short_option) {
case 'c':
- error =
- m_count.SetValueFromString(option_strref, eVarSetOperationAssign);
+ error = m_count.SetValueFromString(option_arg, eVarSetOperationAssign);
break;
case 's':
- if (option_arg && strcmp("end", option_arg) == 0) {
+ if (option_arg == "end") {
m_start_idx.SetCurrentValue(UINT64_MAX);
m_start_idx.SetOptionWasSet();
} else
- error = m_start_idx.SetValueFromString(option_strref,
+ error = m_start_idx.SetValueFromString(option_arg,
eVarSetOperationAssign);
break;
case 'e':
- error = m_stop_idx.SetValueFromString(option_strref,
- eVarSetOperationAssign);
+ error =
+ m_stop_idx.SetValueFromString(option_arg, eVarSetOperationAssign);
break;
case 'C':
m_clear.SetCurrentValue(true);
@@ -259,24 +256,22 @@ protected:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- llvm::StringRef option_strref =
- llvm::StringRef::withNullAsEmpty(option_arg);
switch (short_option) {
case 'e':
- error = m_stop_on_error.SetValueFromString(option_strref);
+ error = m_stop_on_error.SetValueFromString(option_arg);
break;
case 'c':
- error = m_stop_on_continue.SetValueFromString(option_strref);
+ error = m_stop_on_continue.SetValueFromString(option_arg);
break;
case 's':
- error = m_silent_run.SetValueFromString(option_strref);
+ error = m_silent_run.SetValueFromString(option_arg);
break;
default:
@@ -401,7 +396,6 @@ protected:
return error;
}
- Error SetOptionValue(uint32_t, const char *, ExecutionContext *) = delete;
void OptionParsingStarting(ExecutionContext *execution_context) override {
m_help.Clear();
@@ -1229,7 +1223,7 @@ private:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -1498,7 +1492,7 @@ protected:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -1630,32 +1624,32 @@ protected:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
switch (short_option) {
case 'f':
- if (option_arg)
- m_funct_name.assign(option_arg);
+ if (!option_arg.empty())
+ m_funct_name = option_arg;
break;
case 'c':
- if (option_arg)
- m_class_name.assign(option_arg);
+ if (!option_arg.empty())
+ m_class_name = option_arg;
break;
case 'h':
- if (option_arg)
- m_short_help.assign(option_arg);
+ if (!option_arg.empty())
+ m_short_help = option_arg;
break;
case 's':
m_synchronicity =
(ScriptedCommandSynchronicity)Args::StringToOptionEnum(
- llvm::StringRef::withNullAsEmpty(option_arg),
- GetDefinitions()[option_idx].enum_values, 0, error);
+ option_arg, GetDefinitions()[option_idx].enum_values, 0, error);
if (!error.Success())
error.SetErrorStringWithFormat(
- "unrecognized value for synchronicity '%s'", option_arg);
+ "unrecognized value for synchronicity '%s'",
+ option_arg.str().c_str());
break;
default:
error.SetErrorStringWithFormat("unrecognized option '%c'",
Modified: lldb/trunk/source/Commands/CommandObjectDisassemble.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectDisassemble.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectDisassemble.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectDisassemble.cpp Sat Nov 12 10:56:47 2016
@@ -72,31 +72,28 @@ CommandObjectDisassemble::CommandOptions
CommandObjectDisassemble::CommandOptions::~CommandOptions() = default;
Error CommandObjectDisassemble::CommandOptions::SetOptionValue(
- uint32_t option_idx, const char *option_arg,
+ uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- bool success;
-
switch (short_option) {
case 'm':
show_mixed = true;
break;
case 'C':
- num_lines_context = StringConvert::ToUInt32(option_arg, 0, 0, &success);
- if (!success)
+ if (option_arg.getAsInteger(0, num_lines_context))
error.SetErrorStringWithFormat("invalid num context lines string: \"%s\"",
- option_arg);
+ option_arg.str().c_str());
break;
case 'c':
- num_instructions = StringConvert::ToUInt32(option_arg, 0, 0, &success);
- if (!success)
+ if (option_arg.getAsInteger(0, num_instructions))
error.SetErrorStringWithFormat(
- "invalid num of instructions string: \"%s\"", option_arg);
+ "invalid num of instructions string: \"%s\"",
+ option_arg.str().c_str());
break;
case 'b':
Modified: lldb/trunk/source/Commands/CommandObjectDisassemble.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectDisassemble.h?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectDisassemble.h (original)
+++ lldb/trunk/source/Commands/CommandObjectDisassemble.h Sat Nov 12 10:56:47 2016
@@ -32,7 +32,7 @@ public:
~CommandOptions() override;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override;
void OptionParsingStarting(ExecutionContext *execution_context) override;
Modified: lldb/trunk/source/Commands/CommandObjectExpression.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectExpression.h?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectExpression.h (original)
+++ lldb/trunk/source/Commands/CommandObjectExpression.h Sat Nov 12 10:56:47 2016
@@ -36,7 +36,6 @@ public:
Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_value,
ExecutionContext *execution_context) override;
- Error SetOptionValue(uint32_t, const char *, ExecutionContext *) = delete;
void OptionParsingStarting(ExecutionContext *execution_context) override;
Modified: lldb/trunk/source/Commands/CommandObjectFrame.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectFrame.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectFrame.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectFrame.cpp Sat Nov 12 10:56:47 2016
@@ -77,7 +77,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -87,24 +87,20 @@ public:
break;
case 'a': {
- bool success = false;
-
- address = StringConvert::ToUInt64(option_arg, 0, 0, &success);
- if (!success) {
+ address.emplace();
+ if (option_arg.getAsInteger(0, *address)) {
address.reset();
error.SetErrorStringWithFormat("invalid address argument '%s'",
- option_arg);
+ option_arg.str().c_str());
}
} break;
case 'o': {
- bool success = false;
-
- offset = StringConvert::ToSInt64(option_arg, 0, 0, &success);
- if (!success) {
+ offset.emplace();
+ if (option_arg.getAsInteger(0, *offset)) {
offset.reset();
error.SetErrorStringWithFormat("invalid offset argument '%s'",
- option_arg);
+ option_arg.str().c_str());
}
} break;
@@ -268,18 +264,17 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
- bool success = false;
const int short_option = m_getopt_table[option_idx].val;
switch (short_option) {
case 'r':
- relative_frame_offset =
- StringConvert::ToSInt32(option_arg, INT32_MIN, 0, &success);
- if (!success)
+ if (option_arg.getAsInteger(0, relative_frame_offset)) {
+ relative_frame_offset = INT32_MIN;
error.SetErrorStringWithFormat("invalid frame offset argument '%s'",
- option_arg);
+ option_arg.str().c_str());
+ }
break;
default:
Modified: lldb/trunk/source/Commands/CommandObjectHelp.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectHelp.h?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectHelp.h (original)
+++ lldb/trunk/source/Commands/CommandObjectHelp.h Sat Nov 12 10:56:47 2016
@@ -45,7 +45,7 @@ public:
~CommandOptions() override {}
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
Modified: lldb/trunk/source/Commands/CommandObjectLog.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectLog.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectLog.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectLog.cpp Sat Nov 12 10:56:47 2016
@@ -116,7 +116,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
Modified: lldb/trunk/source/Commands/CommandObjectMemory.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectMemory.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectMemory.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectMemory.cpp Sat Nov 12 10:56:47 2016
@@ -110,7 +110,6 @@ public:
}
return error;
}
- Error SetOptionValue(uint32_t, const char *, ExecutionContext *) = delete;
void OptionParsingStarting(ExecutionContext *execution_context) override {
m_num_per_line.Clear();
@@ -942,7 +941,6 @@ public:
}
return error;
}
- Error SetOptionValue(uint32_t, const char *, ExecutionContext *) = delete;
void OptionParsingStarting(ExecutionContext *execution_context) override {
m_expr.Clear();
@@ -1238,7 +1236,6 @@ public:
}
return error;
}
- Error SetOptionValue(uint32_t, const char *, ExecutionContext *) = delete;
void OptionParsingStarting(ExecutionContext *execution_context) override {
m_infile.Clear();
Modified: lldb/trunk/source/Commands/CommandObjectPlatform.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectPlatform.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectPlatform.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectPlatform.cpp Sat Nov 12 10:56:47 2016
@@ -667,22 +667,21 @@ protected:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
char short_option = (char)m_getopt_table[option_idx].val;
- bool success = false;
switch (short_option) {
case 'o':
- m_offset = StringConvert::ToUInt32(option_arg, 0, 0, &success);
- if (!success)
- error.SetErrorStringWithFormat("invalid offset: '%s'", option_arg);
+ if (option_arg.getAsInteger(0, m_offset))
+ error.SetErrorStringWithFormat("invalid offset: '%s'",
+ option_arg.str().c_str());
break;
case 'c':
- m_count = StringConvert::ToUInt32(option_arg, 0, 0, &success);
- if (!success)
- error.SetErrorStringWithFormat("invalid offset: '%s'", option_arg);
+ if (option_arg.getAsInteger(0, m_count))
+ error.SetErrorStringWithFormat("invalid offset: '%s'",
+ option_arg.str().c_str());
break;
default:
error.SetErrorStringWithFormat("unrecognized option '%c'",
@@ -762,17 +761,16 @@ protected:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
char short_option = (char)m_getopt_table[option_idx].val;
- bool success = false;
switch (short_option) {
case 'o':
- m_offset = StringConvert::ToUInt32(option_arg, 0, 0, &success);
- if (!success)
- error.SetErrorStringWithFormat("invalid offset: '%s'", option_arg);
+ if (option_arg.getAsInteger(0, m_offset))
+ error.SetErrorStringWithFormat("invalid offset: '%s'",
+ option_arg.str().c_str());
break;
case 'd':
m_data.assign(option_arg);
@@ -1272,59 +1270,60 @@ protected:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
bool success = false;
+ uint32_t id = LLDB_INVALID_PROCESS_ID;
+ success = !option_arg.getAsInteger(0, id);
switch (short_option) {
- case 'p':
- match_info.GetProcessInfo().SetProcessID(StringConvert::ToUInt32(
- option_arg, LLDB_INVALID_PROCESS_ID, 0, &success));
+ case 'p': {
+ match_info.GetProcessInfo().SetProcessID(id);
if (!success)
error.SetErrorStringWithFormat("invalid process ID string: '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
-
+ }
case 'P':
- match_info.GetProcessInfo().SetParentProcessID(StringConvert::ToUInt32(
- option_arg, LLDB_INVALID_PROCESS_ID, 0, &success));
+ match_info.GetProcessInfo().SetParentProcessID(id);
if (!success)
error.SetErrorStringWithFormat(
- "invalid parent process ID string: '%s'", option_arg);
+ "invalid parent process ID string: '%s'",
+ option_arg.str().c_str());
break;
case 'u':
- match_info.GetProcessInfo().SetUserID(
- StringConvert::ToUInt32(option_arg, UINT32_MAX, 0, &success));
+ match_info.GetProcessInfo().SetUserID(success ? id : UINT32_MAX);
if (!success)
error.SetErrorStringWithFormat("invalid user ID string: '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
case 'U':
- match_info.GetProcessInfo().SetEffectiveUserID(
- StringConvert::ToUInt32(option_arg, UINT32_MAX, 0, &success));
+ match_info.GetProcessInfo().SetEffectiveUserID(success ? id
+ : UINT32_MAX);
if (!success)
error.SetErrorStringWithFormat(
- "invalid effective user ID string: '%s'", option_arg);
+ "invalid effective user ID string: '%s'",
+ option_arg.str().c_str());
break;
case 'g':
- match_info.GetProcessInfo().SetGroupID(
- StringConvert::ToUInt32(option_arg, UINT32_MAX, 0, &success));
+ match_info.GetProcessInfo().SetGroupID(success ? id : UINT32_MAX);
if (!success)
error.SetErrorStringWithFormat("invalid group ID string: '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
case 'G':
- match_info.GetProcessInfo().SetEffectiveGroupID(
- StringConvert::ToUInt32(option_arg, UINT32_MAX, 0, &success));
+ match_info.GetProcessInfo().SetEffectiveGroupID(success ? id
+ : UINT32_MAX);
if (!success)
error.SetErrorStringWithFormat(
- "invalid effective group ID string: '%s'", option_arg);
+ "invalid effective group ID string: '%s'",
+ option_arg.str().c_str());
break;
case 'a': {
@@ -1515,17 +1514,16 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
char short_option = (char)m_getopt_table[option_idx].val;
- bool success = false;
switch (short_option) {
case 'p': {
- lldb::pid_t pid = StringConvert::ToUInt32(
- option_arg, LLDB_INVALID_PROCESS_ID, 0, &success);
- if (!success || pid == LLDB_INVALID_PROCESS_ID) {
- error.SetErrorStringWithFormat("invalid process ID '%s'", option_arg);
+ lldb::pid_t pid = LLDB_INVALID_PROCESS_ID;
+ if (option_arg.getAsInteger(0, pid)) {
+ error.SetErrorStringWithFormat("invalid process ID '%s'",
+ option_arg.str().c_str());
} else {
attach_info.SetProcessID(pid);
}
@@ -1701,21 +1699,20 @@ public:
return llvm::makeArrayRef(g_platform_shell_options);
}
- Error SetOptionValue(uint32_t option_idx, const char *option_value,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const char short_option = (char)GetDefinitions()[option_idx].short_option;
switch (short_option) {
- case 't': {
- bool success;
- timeout = StringConvert::ToUInt32(option_value, 10, 10, &success);
- if (!success)
+ case 't':
+ timeout = 10;
+ if (option_arg.getAsInteger(10, timeout))
error.SetErrorStringWithFormat(
- "could not convert \"%s\" to a numeric value.", option_value);
+ "could not convert \"%s\" to a numeric value.",
+ option_arg.str().c_str());
break;
- }
default:
error.SetErrorStringWithFormat("invalid short option character '%c'",
short_option);
Modified: lldb/trunk/source/Commands/CommandObjectProcess.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectProcess.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectProcess.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectProcess.cpp Sat Nov 12 10:56:47 2016
@@ -337,21 +337,20 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- bool success = false;
switch (short_option) {
case 'c':
attach_info.SetContinueOnceAttached(true);
break;
case 'p': {
- lldb::pid_t pid = StringConvert::ToUInt32(
- option_arg, LLDB_INVALID_PROCESS_ID, 0, &success);
- if (!success || pid == LLDB_INVALID_PROCESS_ID) {
- error.SetErrorStringWithFormat("invalid process ID '%s'", option_arg);
+ lldb::pid_t pid;
+ if (option_arg.getAsInteger(0, pid)) {
+ error.SetErrorStringWithFormat("invalid process ID '%s'",
+ option_arg.str().c_str());
} else {
attach_info.SetProcessID(pid);
}
@@ -604,18 +603,16 @@ protected:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- bool success = false;
switch (short_option) {
case 'i':
- m_ignore = StringConvert::ToUInt32(option_arg, 0, 0, &success);
- if (!success)
+ if (option_arg.getAsInteger(0, m_ignore))
error.SetErrorStringWithFormat(
"invalid value for ignore option: \"%s\", should be a number.",
- option_arg);
+ option_arg.str().c_str());
break;
default:
@@ -755,20 +752,19 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- auto option_strref = llvm::StringRef::withNullAsEmpty(option_arg);
switch (short_option) {
case 's':
bool tmp_result;
bool success;
- tmp_result = Args::StringToBoolean(option_strref, false, &success);
+ tmp_result = Args::StringToBoolean(option_arg, false, &success);
if (!success)
error.SetErrorStringWithFormat("invalid boolean option: \"%s\"",
- option_arg);
+ option_arg.str().c_str());
else {
if (tmp_result)
m_keep_stopped = eLazyBoolYes;
@@ -859,7 +855,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -988,14 +984,14 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
switch (short_option) {
case 'i':
do_install = true;
- if (option_arg && option_arg[0])
+ if (!option_arg.empty())
install_path.SetFile(option_arg, false);
break;
default:
@@ -1382,7 +1378,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
Modified: lldb/trunk/source/Commands/CommandObjectRegister.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectRegister.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectRegister.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectRegister.cpp Sat Nov 12 10:56:47 2016
@@ -294,7 +294,6 @@ protected:
}
return error;
}
- Error SetOptionValue(uint32_t, const char *, ExecutionContext *) = delete;
// Instance variables to hold the values for command options.
OptionValueArray set_indexes;
Modified: lldb/trunk/source/Commands/CommandObjectSettings.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectSettings.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectSettings.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectSettings.cpp Sat Nov 12 10:56:47 2016
@@ -101,7 +101,7 @@ insert-before or insert-after.");
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
Modified: lldb/trunk/source/Commands/CommandObjectSource.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectSource.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectSource.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectSource.cpp Sat Nov 12 10:56:47 2016
@@ -59,30 +59,27 @@ class CommandObjectSourceInfo : public C
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = GetDefinitions()[option_idx].short_option;
switch (short_option) {
case 'l':
- start_line = StringConvert::ToUInt32(option_arg, 0);
- if (start_line == 0)
+ if (option_arg.getAsInteger(0, start_line))
error.SetErrorStringWithFormat("invalid line number: '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
case 'e':
- end_line = StringConvert::ToUInt32(option_arg, 0);
- if (end_line == 0)
+ if (option_arg.getAsInteger(0, end_line))
error.SetErrorStringWithFormat("invalid line number: '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
case 'c':
- num_lines = StringConvert::ToUInt32(option_arg, 0);
- if (num_lines == 0)
+ if (option_arg.getAsInteger(0, num_lines))
error.SetErrorStringWithFormat("invalid line count: '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
case 'f':
@@ -686,23 +683,21 @@ class CommandObjectSourceList : public C
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = GetDefinitions()[option_idx].short_option;
switch (short_option) {
case 'l':
- start_line = StringConvert::ToUInt32(option_arg, 0);
- if (start_line == 0)
+ if (option_arg.getAsInteger(0, start_line))
error.SetErrorStringWithFormat("invalid line number: '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
case 'c':
- num_lines = StringConvert::ToUInt32(option_arg, 0);
- if (num_lines == 0)
+ if (option_arg.getAsInteger(0, num_lines))
error.SetErrorStringWithFormat("invalid line count: '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
case 'f':
Modified: lldb/trunk/source/Commands/CommandObjectTarget.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectTarget.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectTarget.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectTarget.cpp Sat Nov 12 10:56:47 2016
@@ -1972,7 +1972,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -1980,8 +1980,8 @@ public:
switch (short_option) {
case 's':
m_sort_order = (SortOrder)Args::StringToOptionEnum(
- llvm::StringRef::withNullAsEmpty(option_arg),
- GetDefinitions()[option_idx].enum_values, eSortOrderNone, error);
+ option_arg, GetDefinitions()[option_idx].enum_values,
+ eSortOrderNone, error);
break;
default:
@@ -2802,7 +2802,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
@@ -2814,8 +2814,7 @@ public:
LLDB_INVALID_ADDRESS, &error);
} else {
unsigned long width = 0;
- if (option_arg)
- width = strtoul(option_arg, nullptr, 0);
+ option_arg.getAsInteger(0, width);
m_format_array.push_back(std::make_pair(short_option, width));
}
return error;
@@ -3166,7 +3165,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
@@ -3180,7 +3179,7 @@ public:
LLDB_INVALID_ADDRESS, &error);
if (m_addr == LLDB_INVALID_ADDRESS)
error.SetErrorStringWithFormat("invalid address string '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
}
@@ -3466,7 +3465,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
@@ -3480,10 +3479,9 @@ public:
} break;
case 'o':
- m_offset = StringConvert::ToUInt64(option_arg, LLDB_INVALID_ADDRESS);
- if (m_offset == LLDB_INVALID_ADDRESS)
+ if (option_arg.getAsInteger(0, m_offset))
error.SetErrorStringWithFormat("invalid offset string '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
case 's':
@@ -3501,10 +3499,9 @@ public:
break;
case 'l':
- m_line_number = StringConvert::ToUInt32(option_arg, UINT32_MAX);
- if (m_line_number == UINT32_MAX)
+ if (option_arg.getAsInteger(0, m_line_number))
error.SetErrorStringWithFormat("invalid line number string '%s'",
- option_arg);
+ option_arg.str().c_str());
else if (m_line_number == 0)
error.SetErrorString("zero is an invalid line number");
m_type = eLookupTypeFileLine;
@@ -4345,11 +4342,10 @@ public:
return llvm::makeArrayRef(g_target_stop_hook_add_options);
}
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- bool success;
switch (short_option) {
case 'c':
@@ -4358,20 +4354,18 @@ public:
break;
case 'e':
- m_line_end = StringConvert::ToUInt32(option_arg, UINT_MAX, 0, &success);
- if (!success) {
+ if (option_arg.getAsInteger(0, m_line_end)) {
error.SetErrorStringWithFormat("invalid end line number: \"%s\"",
- option_arg);
+ option_arg.str().c_str());
break;
}
m_sym_ctx_specified = true;
break;
case 'l':
- m_line_start = StringConvert::ToUInt32(option_arg, 0, 0, &success);
- if (!success) {
+ if (option_arg.getAsInteger(0, m_line_start)) {
error.SetErrorStringWithFormat("invalid start line number: \"%s\"",
- option_arg);
+ option_arg.str().c_str());
break;
}
m_sym_ctx_specified = true;
@@ -4398,11 +4392,9 @@ public:
break;
case 't':
- m_thread_id =
- StringConvert::ToUInt64(option_arg, LLDB_INVALID_THREAD_ID, 0);
- if (m_thread_id == LLDB_INVALID_THREAD_ID)
+ if (option_arg.getAsInteger(0, m_thread_id))
error.SetErrorStringWithFormat("invalid thread id string '%s'",
- option_arg);
+ option_arg.str().c_str());
m_thread_specified = true;
break;
@@ -4417,10 +4409,9 @@ public:
break;
case 'x':
- m_thread_index = StringConvert::ToUInt32(option_arg, UINT32_MAX, 0);
- if (m_thread_id == UINT32_MAX)
+ if (option_arg.getAsInteger(0, m_thread_index))
error.SetErrorStringWithFormat("invalid thread index string '%s'",
- option_arg);
+ option_arg.str().c_str());
m_thread_specified = true;
break;
Modified: lldb/trunk/source/Commands/CommandObjectThread.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectThread.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectThread.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectThread.cpp Sat Nov 12 10:56:47 2016
@@ -161,36 +161,30 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- auto option_strref = llvm::StringRef::withNullAsEmpty(option_arg);
switch (short_option) {
case 'c': {
- bool success;
- int32_t input_count =
- StringConvert::ToSInt32(option_arg, -1, 0, &success);
- if (!success)
+ int32_t input_count = 0;
+ if (option_arg.getAsInteger(0, m_count)) {
+ m_count = UINT32_MAX;
error.SetErrorStringWithFormat(
"invalid integer value for option '%c'", short_option);
- if (input_count < -1)
+ } else if (input_count < 0)
m_count = UINT32_MAX;
- else
- m_count = input_count;
} break;
- case 's': {
- bool success;
- m_start = StringConvert::ToUInt32(option_arg, 0, 0, &success);
- if (!success)
+ case 's':
+ if (option_arg.getAsInteger(0, m_start))
error.SetErrorStringWithFormat(
"invalid integer value for option '%c'", short_option);
- } break;
+ break;
case 'e': {
bool success;
m_extended_backtrace =
- Args::StringToBoolean(option_strref, false, &success);
+ Args::StringToBoolean(option_arg, false, &success);
if (!success)
error.SetErrorStringWithFormat(
"invalid boolean value for option '%c'", short_option);
@@ -335,17 +329,15 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- auto option_strref = llvm::StringRef::withNullAsEmpty(option_arg);
switch (short_option) {
case 'a': {
bool success;
- bool avoid_no_debug =
- Args::StringToBoolean(option_strref, true, &success);
+ bool avoid_no_debug = Args::StringToBoolean(option_arg, true, &success);
if (!success)
error.SetErrorStringWithFormat(
"invalid boolean value for option '%c'", short_option);
@@ -357,8 +349,7 @@ public:
case 'A': {
bool success;
- bool avoid_no_debug =
- Args::StringToBoolean(option_strref, true, &success);
+ bool avoid_no_debug = Args::StringToBoolean(option_arg, true, &success);
if (!success)
error.SetErrorStringWithFormat(
"invalid boolean value for option '%c'", short_option);
@@ -369,9 +360,9 @@ public:
} break;
case 'c':
- m_step_count = StringConvert::ToUInt32(option_arg, UINT32_MAX, 0);
- if (m_step_count == UINT32_MAX)
- error.SetErrorStringWithFormat("invalid step count '%s'", option_arg);
+ if (option_arg.getAsInteger(0, m_step_count))
+ error.SetErrorStringWithFormat("invalid step count '%s'",
+ option_arg.str().c_str());
break;
case 'C':
@@ -383,23 +374,18 @@ public:
OptionEnumValueElement *enum_values =
GetDefinitions()[option_idx].enum_values;
m_run_mode = (lldb::RunMode)Args::StringToOptionEnum(
- option_strref, enum_values, eOnlyDuringStepping, error);
+ option_arg, enum_values, eOnlyDuringStepping, error);
} break;
- case 'e': {
- if (strcmp(option_arg, "block") == 0) {
+ case 'e':
+ if (option_arg == "block") {
m_end_line_is_block_end = 1;
break;
}
- uint32_t tmp_end_line =
- StringConvert::ToUInt32(option_arg, UINT32_MAX, 0);
- if (tmp_end_line == UINT32_MAX)
+ if (option_arg.getAsInteger(0, m_end_line))
error.SetErrorStringWithFormat("invalid end line number '%s'",
- option_arg);
- else
- m_end_line = tmp_end_line;
+ option_arg.str().c_str());
break;
- } break;
case 'r':
m_avoid_regexp.clear();
@@ -921,7 +907,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -934,27 +920,24 @@ public:
m_until_addrs.push_back(tmp_addr);
} break;
case 't':
- m_thread_idx =
- StringConvert::ToUInt32(option_arg, LLDB_INVALID_INDEX32);
- if (m_thread_idx == LLDB_INVALID_INDEX32) {
+ if (option_arg.getAsInteger(0, m_thread_idx)) {
+ m_thread_idx = LLDB_INVALID_INDEX32;
error.SetErrorStringWithFormat("invalid thread index '%s'",
- option_arg);
+ option_arg.str().c_str());
}
break;
case 'f':
- m_frame_idx =
- StringConvert::ToUInt32(option_arg, LLDB_INVALID_FRAME_ID);
- if (m_frame_idx == LLDB_INVALID_FRAME_ID) {
+ if (option_arg.getAsInteger(0, m_frame_idx)) {
+ m_frame_idx = LLDB_INVALID_FRAME_ID;
error.SetErrorStringWithFormat("invalid frame index '%s'",
- option_arg);
+ option_arg.str().c_str());
}
break;
case 'm': {
OptionEnumValueElement *enum_values =
GetDefinitions()[option_idx].enum_values;
lldb::RunMode run_mode = (lldb::RunMode)Args::StringToOptionEnum(
- llvm::StringRef::withNullAsEmpty(option_arg), enum_values,
- eOnlyDuringStepping, error);
+ option_arg, enum_values, eOnlyDuringStepping, error);
if (error.Success()) {
if (run_mode == eAllThreads)
@@ -1339,7 +1322,7 @@ public:
m_json_stopinfo = false;
}
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
const int short_option = m_getopt_table[option_idx].val;
Error error;
@@ -1432,21 +1415,21 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- auto option_strref = llvm::StringRef::withNullAsEmpty(option_arg);
switch (short_option) {
case 'x': {
bool success;
- bool tmp_value = Args::StringToBoolean(option_strref, false, &success);
+ bool tmp_value = Args::StringToBoolean(option_arg, false, &success);
if (success)
m_from_expression = tmp_value;
else {
error.SetErrorStringWithFormat(
- "invalid boolean value '%s' for 'x' option", option_arg);
+ "invalid boolean value '%s' for 'x' option",
+ option_arg.str().c_str());
}
} break;
default:
@@ -1616,9 +1599,8 @@ public:
m_force = false;
}
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
- bool success;
const int short_option = m_getopt_table[option_idx].val;
Error error;
@@ -1629,14 +1611,12 @@ public:
return Error("only one source file expected.");
break;
case 'l':
- m_line_num = StringConvert::ToUInt32(option_arg, 0, 0, &success);
- if (!success || m_line_num == 0)
- return Error("invalid line number: '%s'.", option_arg);
+ if (option_arg.getAsInteger(0, m_line_num))
+ return Error("invalid line number: '%s'.", option_arg.str().c_str());
break;
case 'b':
- m_line_offset = StringConvert::ToSInt32(option_arg, 0, 0, &success);
- if (!success)
- return Error("invalid line offset: '%s'.", option_arg);
+ if (option_arg.getAsInteger(0, m_line_offset))
+ return Error("invalid line offset: '%s'.", option_arg.str().c_str());
break;
case 'a':
m_load_addr = Args::StringToAddress(execution_context, option_arg,
@@ -1764,7 +1744,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
Modified: lldb/trunk/source/Commands/CommandObjectType.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectType.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectType.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectType.cpp Sat Nov 12 10:56:47 2016
@@ -126,7 +126,7 @@ private:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override;
void OptionParsingStarting(ExecutionContext *execution_context) override;
@@ -320,7 +320,7 @@ private:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -328,11 +328,10 @@ private:
switch (short_option) {
case 'C':
- m_cascade = Args::StringToBoolean(
- llvm::StringRef::withNullAsEmpty(option_arg), true, &success);
+ m_cascade = Args::StringToBoolean(option_arg, true, &success);
if (!success)
error.SetErrorStringWithFormat("invalid value for cascade: %s",
- option_arg);
+ option_arg.str().c_str());
break;
case 'P':
handwrite_python = true;
@@ -599,7 +598,6 @@ private:
return error;
}
- Error SetOptionValue(uint32_t, const char *, ExecutionContext *) = delete;
// Instance variables to hold the values for command options.
@@ -770,7 +768,7 @@ protected:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -783,8 +781,7 @@ protected:
m_category = std::string(option_arg);
break;
case 'l':
- m_language = Language::GetLanguageTypeFromString(
- llvm::StringRef::withNullAsEmpty(option_arg));
+ m_language = Language::GetLanguageTypeFromString(option_arg);
break;
default:
error.SetErrorStringWithFormat("unrecognized option '%c'",
@@ -911,7 +908,7 @@ private:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -1027,19 +1024,17 @@ class CommandObjectTypeFormatterList : p
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- llvm::StringRef option_strref =
- llvm::StringRef::withNullAsEmpty(option_arg);
switch (short_option) {
case 'w':
- m_category_regex.SetCurrentValue(option_strref);
+ m_category_regex.SetCurrentValue(option_arg);
m_category_regex.SetOptionWasSet();
break;
case 'l':
- error = m_category_language.SetValueFromString(option_strref);
+ error = m_category_language.SetValueFromString(option_arg);
if (error.Success())
m_category_language.SetOptionWasSet();
break;
@@ -1249,7 +1244,7 @@ public:
#endif // LLDB_DISABLE_PYTHON
Error CommandObjectTypeSummaryAdd::CommandOptions::SetOptionValue(
- uint32_t option_idx, const char *option_arg,
+ uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -1257,11 +1252,10 @@ Error CommandObjectTypeSummaryAdd::Comma
switch (short_option) {
case 'C':
- m_flags.SetCascades(Args::StringToBoolean(
- llvm::StringRef::withNullAsEmpty(option_arg), true, &success));
+ m_flags.SetCascades(Args::StringToBoolean(option_arg, true, &success));
if (!success)
error.SetErrorStringWithFormat("invalid value for cascade: %s",
- option_arg);
+ option_arg.str().c_str());
break;
case 'e':
m_flags.SetDontShowChildren(false);
@@ -1288,14 +1282,14 @@ Error CommandObjectTypeSummaryAdd::Comma
m_regex = true;
break;
case 'n':
- m_name.SetCString(option_arg);
+ m_name.SetString(option_arg);
break;
case 'o':
- m_python_script = std::string(option_arg);
+ m_python_script = option_arg;
m_is_add_script = true;
break;
case 'F':
- m_python_function = std::string(option_arg);
+ m_python_function = option_arg;
m_is_add_script = true;
break;
case 'P':
@@ -1805,7 +1799,7 @@ class CommandObjectTypeCategoryDefine :
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -1815,8 +1809,7 @@ class CommandObjectTypeCategoryDefine :
m_define_enabled.SetValueFromString(llvm::StringRef("true"));
break;
case 'l':
- error = m_cate_language.SetValueFromString(
- llvm::StringRef::withNullAsEmpty(option_arg));
+ error = m_cate_language.SetValueFromString(option_arg);
break;
default:
error.SetErrorStringWithFormat("unrecognized option '%c'",
@@ -1910,19 +1903,18 @@ class CommandObjectTypeCategoryEnable :
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
switch (short_option) {
case 'l':
- if (option_arg) {
- m_language = Language::GetLanguageTypeFromString(
- llvm::StringRef::withNullAsEmpty(option_arg));
+ if (!option_arg.empty()) {
+ m_language = Language::GetLanguageTypeFromString(option_arg);
if (m_language == lldb::eLanguageTypeUnknown)
error.SetErrorStringWithFormat("unrecognized language '%s'",
- option_arg);
+ option_arg.str().c_str());
}
break;
default:
@@ -2088,19 +2080,18 @@ class CommandObjectTypeCategoryDisable :
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
switch (short_option) {
case 'l':
- if (option_arg) {
- m_language = Language::GetLanguageTypeFromString(
- llvm::StringRef::withNullAsEmpty(option_arg));
+ if (!option_arg.empty()) {
+ m_language = Language::GetLanguageTypeFromString(option_arg);
if (m_language == lldb::eLanguageTypeUnknown)
error.SetErrorStringWithFormat("unrecognized language '%s'",
- option_arg);
+ option_arg.str().c_str());
}
break;
default:
@@ -2521,7 +2512,7 @@ private:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -2529,11 +2520,10 @@ private:
switch (short_option) {
case 'C':
- m_cascade = Args::StringToBoolean(
- llvm::StringRef::withNullAsEmpty(option_arg), true, &success);
+ m_cascade = Args::StringToBoolean(option_arg, true, &success);
if (!success)
error.SetErrorStringWithFormat("invalid value for cascade: %s",
- option_arg);
+ option_arg.str().c_str());
break;
case 'c':
m_expr_paths.push_back(option_arg);
@@ -2820,7 +2810,6 @@ protected:
return error;
}
- Error SetOptionValue(uint32_t, const char *, ExecutionContext *) = delete;
void OptionParsingStarting(ExecutionContext *execution_context) override {
m_show_help = false;
Modified: lldb/trunk/source/Commands/CommandObjectWatchpoint.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectWatchpoint.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectWatchpoint.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectWatchpoint.cpp Sat Nov 12 10:56:47 2016
@@ -197,7 +197,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -561,17 +561,16 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
switch (short_option) {
case 'i':
- m_ignore_count = StringConvert::ToUInt32(option_arg, UINT32_MAX, 0);
- if (m_ignore_count == UINT32_MAX)
+ if (option_arg.getAsInteger(0, m_ignore_count))
error.SetErrorStringWithFormat("invalid ignore count '%s'",
- option_arg);
+ option_arg.str().c_str());
break;
default:
error.SetErrorStringWithFormat("unrecognized option '%c'",
@@ -690,17 +689,14 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
switch (short_option) {
case 'c':
- if (option_arg != nullptr)
- m_condition.assign(option_arg);
- else
- m_condition.clear();
+ m_condition = option_arg;
m_condition_passed = true;
break;
default:
Modified: lldb/trunk/source/Commands/CommandObjectWatchpointCommand.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectWatchpointCommand.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectWatchpointCommand.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectWatchpointCommand.cpp Sat Nov 12 10:56:47 2016
@@ -318,7 +318,7 @@ are no syntax errors may indicate that a
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
@@ -331,9 +331,8 @@ are no syntax errors may indicate that a
case 's':
m_script_language = (lldb::ScriptLanguage)Args::StringToOptionEnum(
- llvm::StringRef::withNullAsEmpty(option_arg),
- GetDefinitions()[option_idx].enum_values, eScriptLanguageNone,
- error);
+ option_arg, GetDefinitions()[option_idx].enum_values,
+ eScriptLanguageNone, error);
m_use_script_language = (m_script_language == eScriptLanguagePython ||
m_script_language == eScriptLanguageDefault);
@@ -341,11 +340,11 @@ are no syntax errors may indicate that a
case 'e': {
bool success = false;
- m_stop_on_error = Args::StringToBoolean(
- llvm::StringRef::withNullAsEmpty(option_arg), false, &success);
+ m_stop_on_error = Args::StringToBoolean(option_arg, false, &success);
if (!success)
error.SetErrorStringWithFormat(
- "invalid value for stop-on-error: \"%s\"", option_arg);
+ "invalid value for stop-on-error: \"%s\"",
+ option_arg.str().c_str());
} break;
case 'F':
Modified: lldb/trunk/source/Interpreter/Options.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Interpreter/Options.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Interpreter/Options.cpp (original)
+++ lldb/trunk/source/Interpreter/Options.cpp Sat Nov 12 10:56:47 2016
@@ -905,7 +905,7 @@ void OptionGroupOptions::Finalize() {
}
Error OptionGroupOptions::SetOptionValue(uint32_t option_idx,
- const char *option_value,
+ llvm::StringRef option_value,
ExecutionContext *execution_context) {
// After calling OptionGroupOptions::Append(...), you must finalize the groups
// by calling OptionGroupOptions::Finlize()
@@ -913,8 +913,8 @@ Error OptionGroupOptions::SetOptionValue
Error error;
if (option_idx < m_option_infos.size()) {
error = m_option_infos[option_idx].option_group->SetOptionValue(
- m_option_infos[option_idx].option_index,
- llvm::StringRef::withNullAsEmpty(option_value), execution_context);
+ m_option_infos[option_idx].option_index, option_value,
+ execution_context);
} else {
error.SetErrorString("invalid option index"); // Shouldn't happen...
Modified: lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp (original)
+++ lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp Sat Nov 12 10:56:47 2016
@@ -483,7 +483,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
Modified: lldb/trunk/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp (original)
+++ lldb/trunk/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp Sat Nov 12 10:56:47 2016
@@ -4155,23 +4155,23 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_val,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *exe_ctx) override {
Error err;
StreamString err_str;
const int short_option = m_getopt_table[option_idx].val;
switch (short_option) {
case 't':
- if (!ParseReductionTypes(option_val, err_str))
+ if (!ParseReductionTypes(option_arg, err_str))
err.SetErrorStringWithFormat(
- "Unable to deduce reduction types for %s: %s", option_val,
- err_str.GetData());
+ "Unable to deduce reduction types for %s: %s",
+ option_arg.str().c_str(), err_str.GetData());
break;
case 'c': {
auto coord = RSCoordinate{};
- if (!ParseCoordinate(option_val, coord))
+ if (!ParseCoordinate(option_arg, coord))
err.SetErrorStringWithFormat("unable to parse coordinate for %s",
- option_val);
+ option_arg.str().c_str());
else {
m_have_coord = true;
m_coord = coord;
@@ -4192,7 +4192,8 @@ public:
return llvm::makeArrayRef(g_renderscript_reduction_bp_set_options);
}
- bool ParseReductionTypes(const char *option_val, StreamString &err_str) {
+ bool ParseReductionTypes(llvm::StringRef option_val,
+ StreamString &err_str) {
m_kernel_types = RSReduceBreakpointResolver::eKernelTypeNone;
const auto reduce_name_to_type = [](llvm::StringRef name) -> int {
return llvm::StringSwitch<int>(name)
@@ -4215,7 +4216,7 @@ public:
assert(match_type_list.IsValid());
- if (!match_type_list.Execute(llvm::StringRef(option_val), &match)) {
+ if (!match_type_list.Execute(option_val, &match)) {
err_str.PutCString(
"a comma-separated list of kernel types is required");
return false;
@@ -4310,7 +4311,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *exe_ctx) override {
Error err;
const int short_option = m_getopt_table[option_idx].val;
@@ -4321,7 +4322,7 @@ public:
if (!ParseCoordinate(option_arg, coord))
err.SetErrorStringWithFormat(
"Couldn't parse coordinate '%s', should be in format 'x,y,z'.",
- option_arg);
+ option_arg.str().c_str());
else {
m_have_coord = true;
m_coord = coord;
@@ -4591,7 +4592,7 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *exe_ctx) override {
Error err;
const int short_option = m_getopt_table[option_idx].val;
@@ -4601,7 +4602,8 @@ public:
m_outfile.SetFile(option_arg, true);
if (m_outfile.Exists()) {
m_outfile.Clear();
- err.SetErrorStringWithFormat("file already exists: '%s'", option_arg);
+ err.SetErrorStringWithFormat("file already exists: '%s'",
+ option_arg.str().c_str());
}
break;
default:
@@ -4712,16 +4714,14 @@ public:
~CommandOptions() override = default;
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *exe_ctx) override {
Error err;
const int short_option = m_getopt_table[option_idx].val;
switch (short_option) {
case 'i':
- bool success;
- m_id = StringConvert::ToUInt32(option_arg, 0, 0, &success);
- if (!success)
+ if (option_arg.getAsInteger(0, m_id))
err.SetErrorStringWithFormat("invalid integer value for option '%c'",
short_option);
break;
Modified: lldb/trunk/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp (original)
+++ lldb/trunk/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp Sat Nov 12 10:56:47 2016
@@ -523,12 +523,11 @@ public:
m_filter_rules.clear();
}
- Error SetOptionValue(uint32_t option_idx, const char *option_arg,
+ Error SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) override {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- auto option_strref = llvm::StringRef::withNullAsEmpty(option_arg);
switch (short_option) {
case 'a':
m_include_any_process = true;
@@ -542,7 +541,7 @@ public:
break;
case 'b':
- m_broadcast_events = Args::StringToBoolean(option_strref, true, nullptr);
+ m_broadcast_events = Args::StringToBoolean(option_arg, true, nullptr);
break;
case 'c':
@@ -558,23 +557,23 @@ public:
break;
case 'e':
- m_echo_to_stderr = Args::StringToBoolean(option_strref, false, nullptr);
+ m_echo_to_stderr = Args::StringToBoolean(option_arg, false, nullptr);
break;
case 'f':
- return ParseFilterRule(option_strref);
+ return ParseFilterRule(option_arg);
case 'i':
m_include_info_level = true;
break;
case 'l':
- m_live_stream = Args::StringToBoolean(option_strref, false, nullptr);
+ m_live_stream = Args::StringToBoolean(option_arg, false, nullptr);
break;
case 'n':
m_filter_fall_through_accepts =
- Args::StringToBoolean(option_strref, true, nullptr);
+ Args::StringToBoolean(option_arg, true, nullptr);
break;
case 'r':
Modified: lldb/trunk/source/Target/Process.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Target/Process.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Target/Process.cpp (original)
+++ lldb/trunk/source/Target/Process.cpp Sat Nov 12 10:56:47 2016
@@ -412,11 +412,10 @@ void ProcessInstanceInfo::DumpAsTableRow
}
Error ProcessLaunchCommandOptions::SetOptionValue(
- uint32_t option_idx, const char *option_arg,
+ uint32_t option_idx, llvm::StringRef option_arg,
ExecutionContext *execution_context) {
Error error;
const int short_option = m_getopt_table[option_idx].val;
- auto option_strref = llvm::StringRef::withNullAsEmpty(option_arg);
switch (short_option) {
case 's': // Stop at program entry point
@@ -485,40 +484,38 @@ Error ProcessLaunchCommandOptions::SetOp
{
bool success;
const bool disable_aslr_arg =
- Args::StringToBoolean(option_strref, true, &success);
+ Args::StringToBoolean(option_arg, true, &success);
if (success)
disable_aslr = disable_aslr_arg ? eLazyBoolYes : eLazyBoolNo;
else
error.SetErrorStringWithFormat(
"Invalid boolean value for disable-aslr option: '%s'",
- option_arg ? option_arg : "<null>");
+ option_arg.empty() ? "<null>" : option_arg.str().c_str());
break;
}
case 'X': // shell expand args.
{
bool success;
- const bool expand_args =
- Args::StringToBoolean(option_strref, true, &success);
+ const bool expand_args = Args::StringToBoolean(option_arg, true, &success);
if (success)
launch_info.SetShellExpandArguments(expand_args);
else
error.SetErrorStringWithFormat(
"Invalid boolean value for shell-expand-args option: '%s'",
- option_arg ? option_arg : "<null>");
+ option_arg.empty() ? "<null>" : option_arg.str().c_str());
break;
}
case 'c':
- if (option_arg && option_arg[0])
+ if (!option_arg.empty())
launch_info.SetShell(FileSpec(option_arg, false));
else
launch_info.SetShell(HostInfo::GetDefaultShell());
break;
case 'v':
- launch_info.GetEnvironmentEntries().AppendArgument(
- llvm::StringRef::withNullAsEmpty(option_arg));
+ launch_info.GetEnvironmentEntries().AppendArgument(option_arg);
break;
default:
Modified: lldb/trunk/source/Target/ProcessLaunchInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Target/ProcessLaunchInfo.cpp?rev=286723&r1=286722&r2=286723&view=diff
==============================================================================
--- lldb/trunk/source/Target/ProcessLaunchInfo.cpp (original)
+++ lldb/trunk/source/Target/ProcessLaunchInfo.cpp Sat Nov 12 10:56:47 2016
@@ -142,11 +142,8 @@ const char *ProcessLaunchInfo::GetProces
return (m_plugin_name.empty() ? nullptr : m_plugin_name.c_str());
}
-void ProcessLaunchInfo::SetProcessPluginName(const char *plugin) {
- if (plugin && plugin[0])
- m_plugin_name.assign(plugin);
- else
- m_plugin_name.clear();
+void ProcessLaunchInfo::SetProcessPluginName(llvm::StringRef plugin) {
+ m_plugin_name = plugin;
}
const FileSpec &ProcessLaunchInfo::GetShell() const { return m_shell; }
More information about the lldb-commits
mailing list