aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Commands/CommandObjectWatchpoint.cpp
diff options
context:
space:
mode:
authorPete Lawrence <plawrence@apple.com>2023-10-30 10:21:00 -1000
committerGitHub <noreply@github.com>2023-10-30 13:21:00 -0700
commit92d8a28cc665d73d9d679b8c014dd04f95d1df18 (patch)
tree19b3a218ad57e05a911da01c0f4f80ca3c0a4bd4 /lldb/source/Commands/CommandObjectWatchpoint.cpp
parent2446439f51cf0d2dfb11c823436a930de7a4b8a2 (diff)
downloadllvm-92d8a28cc665d73d9d679b8c014dd04f95d1df18.zip
llvm-92d8a28cc665d73d9d679b8c014dd04f95d1df18.tar.gz
llvm-92d8a28cc665d73d9d679b8c014dd04f95d1df18.tar.bz2
[lldb] Part 2 of 2 - Refactor `CommandObject::DoExecute(...)` return `void` (not `bool`) (#69991)
[lldb] Part 2 of 2 - Refactor `CommandObject::DoExecute(...)` to return `void` instead of ~~`bool`~~ Justifications: - The code doesn't ultimately apply the `true`/`false` return values. - The methods already pass around a `CommandReturnObject`, typically with a `result` parameter. - Each command return object already contains: - A more precise status - The error code(s) that apply to that status Part 1 refactors the `CommandObject::Execute(...)` method. - See [https://github.com/llvm/llvm-project/pull/69989](https://github.com/llvm/llvm-project/pull/69989) rdar://117378957
Diffstat (limited to 'lldb/source/Commands/CommandObjectWatchpoint.cpp')
-rw-r--r--lldb/source/Commands/CommandObjectWatchpoint.cpp84
1 files changed, 34 insertions, 50 deletions
diff --git a/lldb/source/Commands/CommandObjectWatchpoint.cpp b/lldb/source/Commands/CommandObjectWatchpoint.cpp
index dc5be0d..cd1d226 100644
--- a/lldb/source/Commands/CommandObjectWatchpoint.cpp
+++ b/lldb/source/Commands/CommandObjectWatchpoint.cpp
@@ -207,7 +207,7 @@ public:
};
protected:
- bool DoExecute(Args &command, CommandReturnObject &result) override {
+ void DoExecute(Args &command, CommandReturnObject &result) override {
Target *target = &GetSelectedTarget();
if (target->GetProcessSP() && target->GetProcessSP()->IsAlive()) {
@@ -230,7 +230,7 @@ protected:
if (num_watchpoints == 0) {
result.AppendMessage("No watchpoints currently set.");
result.SetStatus(eReturnStatusSuccessFinishNoResult);
- return true;
+ return;
}
Stream &output_stream = result.GetOutputStream();
@@ -249,7 +249,7 @@ protected:
if (!CommandObjectMultiwordWatchpoint::VerifyWatchpointIDs(
target, command, wp_ids)) {
result.AppendError("Invalid watchpoints specification.");
- return false;
+ return;
}
const size_t size = wp_ids.size();
@@ -260,8 +260,6 @@ protected:
result.SetStatus(eReturnStatusSuccessFinishNoResult);
}
}
-
- return result.Succeeded();
}
private:
@@ -297,10 +295,10 @@ public:
}
protected:
- bool DoExecute(Args &command, CommandReturnObject &result) override {
+ void DoExecute(Args &command, CommandReturnObject &result) override {
Target *target = &GetSelectedTarget();
if (!CheckTargetForWatchpointOperations(target, result))
- return false;
+ return;
std::unique_lock<std::recursive_mutex> lock;
target->GetWatchpointList().GetListMutex(lock);
@@ -311,7 +309,7 @@ protected:
if (num_watchpoints == 0) {
result.AppendError("No watchpoints exist to be enabled.");
- return false;
+ return;
}
if (command.GetArgumentCount() == 0) {
@@ -327,7 +325,7 @@ protected:
if (!CommandObjectMultiwordWatchpoint::VerifyWatchpointIDs(
target, command, wp_ids)) {
result.AppendError("Invalid watchpoints specification.");
- return false;
+ return;
}
int count = 0;
@@ -338,8 +336,6 @@ protected:
result.AppendMessageWithFormat("%d watchpoints enabled.\n", count);
result.SetStatus(eReturnStatusSuccessFinishNoResult);
}
-
- return result.Succeeded();
}
};
@@ -373,10 +369,10 @@ public:
}
protected:
- bool DoExecute(Args &command, CommandReturnObject &result) override {
+ void DoExecute(Args &command, CommandReturnObject &result) override {
Target *target = &GetSelectedTarget();
if (!CheckTargetForWatchpointOperations(target, result))
- return false;
+ return;
std::unique_lock<std::recursive_mutex> lock;
target->GetWatchpointList().GetListMutex(lock);
@@ -386,7 +382,7 @@ protected:
if (num_watchpoints == 0) {
result.AppendError("No watchpoints exist to be disabled.");
- return false;
+ return;
}
if (command.GetArgumentCount() == 0) {
@@ -405,7 +401,7 @@ protected:
if (!CommandObjectMultiwordWatchpoint::VerifyWatchpointIDs(
target, command, wp_ids)) {
result.AppendError("Invalid watchpoints specification.");
- return false;
+ return;
}
int count = 0;
@@ -416,8 +412,6 @@ protected:
result.AppendMessageWithFormat("%d watchpoints disabled.\n", count);
result.SetStatus(eReturnStatusSuccessFinishNoResult);
}
-
- return result.Succeeded();
}
};
@@ -489,10 +483,10 @@ public:
};
protected:
- bool DoExecute(Args &command, CommandReturnObject &result) override {
+ void DoExecute(Args &command, CommandReturnObject &result) override {
Target *target = &GetSelectedTarget();
if (!CheckTargetForWatchpointOperations(target, result))
- return false;
+ return;
std::unique_lock<std::recursive_mutex> lock;
target->GetWatchpointList().GetListMutex(lock);
@@ -503,7 +497,7 @@ protected:
if (num_watchpoints == 0) {
result.AppendError("No watchpoints exist to be deleted.");
- return false;
+ return;
}
if (command.empty()) {
@@ -519,7 +513,7 @@ protected:
(uint64_t)num_watchpoints);
}
result.SetStatus(eReturnStatusSuccessFinishNoResult);
- return result.Succeeded();
+ return;
}
// Particular watchpoints selected; delete them.
@@ -527,7 +521,7 @@ protected:
if (!CommandObjectMultiwordWatchpoint::VerifyWatchpointIDs(target, command,
wp_ids)) {
result.AppendError("Invalid watchpoints specification.");
- return false;
+ return;
}
int count = 0;
@@ -537,8 +531,6 @@ protected:
++count;
result.AppendMessageWithFormat("%d watchpoints deleted.\n", count);
result.SetStatus(eReturnStatusSuccessFinishNoResult);
-
- return result.Succeeded();
}
private:
@@ -616,10 +608,10 @@ public:
};
protected:
- bool DoExecute(Args &command, CommandReturnObject &result) override {
+ void DoExecute(Args &command, CommandReturnObject &result) override {
Target *target = &GetSelectedTarget();
if (!CheckTargetForWatchpointOperations(target, result))
- return false;
+ return;
std::unique_lock<std::recursive_mutex> lock;
target->GetWatchpointList().GetListMutex(lock);
@@ -630,7 +622,7 @@ protected:
if (num_watchpoints == 0) {
result.AppendError("No watchpoints exist to be ignored.");
- return false;
+ return;
}
if (command.GetArgumentCount() == 0) {
@@ -645,7 +637,7 @@ protected:
if (!CommandObjectMultiwordWatchpoint::VerifyWatchpointIDs(
target, command, wp_ids)) {
result.AppendError("Invalid watchpoints specification.");
- return false;
+ return;
}
int count = 0;
@@ -656,8 +648,6 @@ protected:
result.AppendMessageWithFormat("%d watchpoints ignored.\n", count);
result.SetStatus(eReturnStatusSuccessFinishNoResult);
}
-
- return result.Succeeded();
}
private:
@@ -742,10 +732,10 @@ public:
};
protected:
- bool DoExecute(Args &command, CommandReturnObject &result) override {
+ void DoExecute(Args &command, CommandReturnObject &result) override {
Target *target = &GetSelectedTarget();
if (!CheckTargetForWatchpointOperations(target, result))
- return false;
+ return;
std::unique_lock<std::recursive_mutex> lock;
target->GetWatchpointList().GetListMutex(lock);
@@ -756,7 +746,7 @@ protected:
if (num_watchpoints == 0) {
result.AppendError("No watchpoints exist to be modified.");
- return false;
+ return;
}
if (command.GetArgumentCount() == 0) {
@@ -769,7 +759,7 @@ protected:
if (!CommandObjectMultiwordWatchpoint::VerifyWatchpointIDs(
target, command, wp_ids)) {
result.AppendError("Invalid watchpoints specification.");
- return false;
+ return;
}
int count = 0;
@@ -784,8 +774,6 @@ protected:
result.AppendMessageWithFormat("%d watchpoints modified.\n", count);
result.SetStatus(eReturnStatusSuccessFinishNoResult);
}
-
- return result.Succeeded();
}
private:
@@ -866,7 +854,7 @@ protected:
return variable_list.GetSize() - old_size;
}
- bool DoExecute(Args &command, CommandReturnObject &result) override {
+ void DoExecute(Args &command, CommandReturnObject &result) override {
Target *target = GetDebugger().GetSelectedTarget().get();
StackFrame *frame = m_exe_ctx.GetFramePtr();
@@ -875,7 +863,7 @@ protected:
if (command.GetArgumentCount() <= 0) {
result.AppendError("required argument missing; "
"specify your program variable to watch for");
- return false;
+ return;
}
// If no '-w' is specified, default to '-w modify'.
@@ -895,7 +883,7 @@ protected:
// A simple watch variable gesture allows only one argument.
if (command.GetArgumentCount() != 1) {
result.AppendError("specify exactly one variable to watch for");
- return false;
+ return;
}
// Things have checked out ok...
@@ -943,7 +931,7 @@ protected:
result.AppendErrorWithFormat("unable to find any variable "
"expression path that matches '%s'",
command.GetArgumentAtIndex(0));
- return false;
+ return;
}
// Now it's time to create the watchpoint.
@@ -975,7 +963,7 @@ protected:
addr, static_cast<uint64_t>(size), command.GetArgumentAtIndex(0));
if (const char *error_message = error.AsCString(nullptr))
result.AppendError(error_message);
- return result.Succeeded();
+ return;
}
watch_sp->SetWatchSpec(command.GetArgumentAtIndex(0));
@@ -994,8 +982,6 @@ protected:
watch_sp->GetDescription(&output_stream, lldb::eDescriptionLevelFull);
output_stream.EOL();
result.SetStatus(eReturnStatusSuccessFinishResult);
-
- return result.Succeeded();
}
private:
@@ -1061,7 +1047,7 @@ Examples:
Options *GetOptions() override { return &m_option_group; }
protected:
- bool DoExecute(llvm::StringRef raw_command,
+ void DoExecute(llvm::StringRef raw_command,
CommandReturnObject &result) override {
auto exe_ctx = GetCommandInterpreter().GetExecutionContext();
m_option_group.NotifyOptionParsingStarting(
@@ -1077,14 +1063,14 @@ protected:
if (args.HasArgs())
if (!ParseOptionsAndNotify(args.GetArgs(), result, m_option_group,
exe_ctx))
- return false;
+ return;
// If no argument is present, issue an error message. There's no way to
// set a watchpoint.
if (raw_command.trim().empty()) {
result.AppendError("required argument missing; specify an expression "
"to evaluate into the address to watch for");
- return false;
+ return;
}
// If no '-w' is specified, default to '-w write'.
@@ -1116,7 +1102,7 @@ protected:
result.AppendErrorWithFormat("expression evaluated: \n%s", expr.data());
if (valobj_sp && !valobj_sp->GetError().Success())
result.AppendError(valobj_sp->GetError().AsCString());
- return false;
+ return;
}
// Get the address to watch.
@@ -1124,7 +1110,7 @@ protected:
addr = valobj_sp->GetValueAsUnsigned(0, &success);
if (!success) {
result.AppendError("expression did not evaluate to an address");
- return false;
+ return;
}
if (m_option_watchpoint.watch_size != 0)
@@ -1173,8 +1159,6 @@ protected:
if (error.AsCString(nullptr))
result.AppendError(error.AsCString());
}
-
- return result.Succeeded();
}
private: