From faa8f68943615785a2855676cf96e0e96f3cc6bd Mon Sep 17 00:00:00 2001 From: MarcoFalke Date: Mon, 4 Jan 2021 11:20:02 +0100 Subject: Replace boost::variant with std::variant --- src/script/descriptor.cpp | 4 ++-- src/script/signingprovider.cpp | 8 ++++---- src/script/standard.cpp | 9 ++++----- src/script/standard.h | 6 ++---- 4 files changed, 12 insertions(+), 15 deletions(-) (limited to 'src/script') diff --git a/src/script/descriptor.cpp b/src/script/descriptor.cpp index e5ba9ba6d2..9e4b8a9dd6 100644 --- a/src/script/descriptor.cpp +++ b/src/script/descriptor.cpp @@ -565,7 +565,7 @@ public: Optional GetOutputType() const override { - switch (m_destination.which()) { + switch (m_destination.index()) { case 1 /* PKHash */: case 2 /* ScriptHash */: return OutputType::LEGACY; case 3 /* WitnessV0ScriptHash */: @@ -593,7 +593,7 @@ public: { CTxDestination dest; ExtractDestination(m_script, dest); - switch (dest.which()) { + switch (dest.index()) { case 1 /* PKHash */: case 2 /* ScriptHash */: return OutputType::LEGACY; case 3 /* WitnessV0ScriptHash */: diff --git a/src/script/signingprovider.cpp b/src/script/signingprovider.cpp index 26d081f853..9781ec32af 100644 --- a/src/script/signingprovider.cpp +++ b/src/script/signingprovider.cpp @@ -179,18 +179,18 @@ CKeyID GetKeyForDestination(const SigningProvider& store, const CTxDestination& { // Only supports destinations which map to single public keys, i.e. P2PKH, // P2WPKH, and P2SH-P2WPKH. - if (auto id = boost::get(&dest)) { + if (auto id = std::get_if(&dest)) { return ToKeyID(*id); } - if (auto witness_id = boost::get(&dest)) { + if (auto witness_id = std::get_if(&dest)) { return ToKeyID(*witness_id); } - if (auto script_hash = boost::get(&dest)) { + if (auto script_hash = std::get_if(&dest)) { CScript script; CScriptID script_id(*script_hash); CTxDestination inner_dest; if (store.GetCScript(script_id, script) && ExtractDestination(script, inner_dest)) { - if (auto inner_witness_id = boost::get(&inner_dest)) { + if (auto inner_witness_id = std::get_if(&inner_dest)) { return ToKeyID(*inner_witness_id); } } diff --git a/src/script/standard.cpp b/src/script/standard.cpp index 57d68c7ce9..7967c01858 100644 --- a/src/script/standard.cpp +++ b/src/script/standard.cpp @@ -261,9 +261,8 @@ bool ExtractDestinations(const CScript& scriptPubKey, TxoutType& typeRet, std::v return true; } -namespace -{ -class CScriptVisitor : public boost::static_visitor +namespace { +class CScriptVisitor { public: CScript operator()(const CNoDestination& dest) const @@ -300,7 +299,7 @@ public: CScript GetScriptForDestination(const CTxDestination& dest) { - return boost::apply_visitor(CScriptVisitor(), dest); + return std::visit(CScriptVisitor(), dest); } CScript GetScriptForRawPubKey(const CPubKey& pubKey) @@ -320,5 +319,5 @@ CScript GetScriptForMultisig(int nRequired, const std::vector& keys) } bool IsValidDestination(const CTxDestination& dest) { - return dest.which() != 0; + return dest.index() != 0; } diff --git a/src/script/standard.h b/src/script/standard.h index 4d1ef61964..d5d87392ad 100644 --- a/src/script/standard.h +++ b/src/script/standard.h @@ -9,10 +9,8 @@ #include