aboutsummaryrefslogtreecommitdiff
path: root/src/outputtype.cpp
diff options
context:
space:
mode:
authorfanquake <fanquake@gmail.com>2021-08-04 13:38:36 +0800
committerfanquake <fanquake@gmail.com>2021-08-04 19:20:32 +0800
commit32fa49a18497a9b8c72e36a72ae96e7b23930223 (patch)
tree5cb3394183c123b5e0db66a7694c6afa99a8565e /src/outputtype.cpp
parent3308c61091b6b7cb22569f3abadea6d001295c90 (diff)
downloadbitcoin-32fa49a18497a9b8c72e36a72ae96e7b23930223.tar.xz
make ParseOutputType return a std::optional<OutputType>
Diffstat (limited to 'src/outputtype.cpp')
-rw-r--r--src/outputtype.cpp17
1 files changed, 7 insertions, 10 deletions
diff --git a/src/outputtype.cpp b/src/outputtype.cpp
index 8ede7b9974..b5f1df9792 100644
--- a/src/outputtype.cpp
+++ b/src/outputtype.cpp
@@ -13,6 +13,7 @@
#include <util/vector.h>
#include <assert.h>
+#include <optional>
#include <string>
static const std::string OUTPUT_TYPE_STRING_LEGACY = "legacy";
@@ -20,22 +21,18 @@ static const std::string OUTPUT_TYPE_STRING_P2SH_SEGWIT = "p2sh-segwit";
static const std::string OUTPUT_TYPE_STRING_BECH32 = "bech32";
static const std::string OUTPUT_TYPE_STRING_BECH32M = "bech32m";
-bool ParseOutputType(const std::string& type, OutputType& output_type)
+std::optional<OutputType> ParseOutputType(const std::string& type)
{
if (type == OUTPUT_TYPE_STRING_LEGACY) {
- output_type = OutputType::LEGACY;
- return true;
+ return OutputType::LEGACY;
} else if (type == OUTPUT_TYPE_STRING_P2SH_SEGWIT) {
- output_type = OutputType::P2SH_SEGWIT;
- return true;
+ return OutputType::P2SH_SEGWIT;
} else if (type == OUTPUT_TYPE_STRING_BECH32) {
- output_type = OutputType::BECH32;
- return true;
+ return OutputType::BECH32;
} else if (type == OUTPUT_TYPE_STRING_BECH32M) {
- output_type = OutputType::BECH32M;
- return true;
+ return OutputType::BECH32M;
}
- return false;
+ return std::nullopt;
}
const std::string& FormatOutputType(OutputType type)