From: svost Date: Sun, 9 Jan 2022 20:37:01 +0000 (+0300) Subject: Replace boost::variant with std::variant X-Git-Tag: nvc-v0.5.10~19 X-Git-Url: https://git.novaco.in/?p=novacoin.git;a=commitdiff_plain;h=fd3e29de89dadb40606f9b5c258b673ba9f24798 Replace boost::variant with std::variant --- diff --git a/src/base58.cpp b/src/base58.cpp index e8cde34..b6b7160 100644 --- a/src/base58.cpp +++ b/src/base58.cpp @@ -274,7 +274,7 @@ bool DecodeBase58Check(const std::string& str, std::vector& vchRe } namespace { - class CBitcoinAddressVisitor : public boost::static_visitor { + class CBitcoinAddressVisitor { private: CBitcoinAddress *addr; public: @@ -299,7 +299,7 @@ bool DecodeBase58Check(const std::string& str, std::vector& vchRe bool CBitcoinAddress::Set(const CTxDestination &dest) { - return boost::apply_visitor(CBitcoinAddressVisitor(this), dest); + return std::visit(CBitcoinAddressVisitor(this), dest); } bool CBitcoinAddress::Set(const CMalleablePubKey &mpk) { diff --git a/src/keystore.h b/src/keystore.h index 36149ba..4a1ce85 100644 --- a/src/keystore.h +++ b/src/keystore.h @@ -8,7 +8,8 @@ #include "crypter.h" #include "sync.h" #include -#include + +#include class CScript; @@ -25,7 +26,7 @@ public: * * A CTxDestination is the internal data type encoded in a CBitcoinAddress. */ -typedef boost::variant CTxDestination; +using CTxDestination = std::variant; /** A virtual base class for key stores */ class CKeyStore diff --git a/src/qt/multisiginputentry.cpp b/src/qt/multisiginputentry.cpp index 23458c2..fc3f270 100644 --- a/src/qt/multisiginputentry.cpp +++ b/src/qt/multisiginputentry.cpp @@ -158,7 +158,7 @@ void MultisigInputEntry::on_transactionOutput_currentIndexChanged(int index) CTxDestination dest; if(ExtractDestination(script, dest)) { - CScriptID scriptID = boost::get(dest); + CScriptID scriptID = std::get(dest); CScript redeemScript; if(model->getWallet()->GetCScript(scriptID, redeemScript)) ui->redeemScript->setText(HexStr(redeemScript.begin(), redeemScript.end()).c_str()); @@ -171,4 +171,4 @@ void MultisigInputEntry::on_transactionOutput_currentIndexChanged(int index) } emit updateAmount(); -} \ No newline at end of file +} diff --git a/src/rpcrawtransaction.cpp b/src/rpcrawtransaction.cpp index b064d0a..0b29059 100644 --- a/src/rpcrawtransaction.cpp +++ b/src/rpcrawtransaction.cpp @@ -227,7 +227,7 @@ Value listunspent(const Array& params, bool fHelp) CTxDestination address; if (ExtractDestination(pk, address)) { - const CScriptID& hash = boost::get(address); + const CScriptID& hash = std::get(address); CScript redeemScript; if (pwalletMain->GetCScript(hash, redeemScript)) entry.push_back(Pair("redeemScript", HexStr(redeemScript.begin(), redeemScript.end()))); diff --git a/src/rpcwallet.cpp b/src/rpcwallet.cpp index 5f9c6b5..e75fe87 100644 --- a/src/rpcwallet.cpp +++ b/src/rpcwallet.cpp @@ -1758,7 +1758,7 @@ Value validateaddress(const Array& params, bool fHelp) ret.push_back(Pair("ismine", mine != MINE_NO)); if (mine != MINE_NO) { ret.push_back(Pair("watchonly", mine == MINE_WATCH_ONLY)); - Object detail = boost::apply_visitor(DescribeAddressVisitor(mine), dest); + Object detail = std::visit(DescribeAddressVisitor(mine), dest); ret.insert(ret.end(), detail.begin(), detail.end()); } if (pwalletMain->mapAddressBook.count(address)) diff --git a/src/script.cpp b/src/script.cpp index 736fdb0..67be71d 100644 --- a/src/script.cpp +++ b/src/script.cpp @@ -1780,7 +1780,7 @@ public: int nRequired; if (ExtractDestinations(script, type, vDest, nRequired)) { for (const CTxDestination &dest : vDest) - boost::apply_visitor(*this, dest); + std::visit(*this, dest); } } @@ -2161,7 +2161,7 @@ public: void CScript::SetDestination(const CTxDestination& dest) { - boost::apply_visitor(CScriptVisitor(this), dest); + std::visit(CScriptVisitor(this), dest); } void CScript::SetAddress(const CBitcoinAddress& dest)