}
namespace {
- class CBitcoinAddressVisitor : public boost::static_visitor<bool> {
+ class CBitcoinAddressVisitor {
private:
CBitcoinAddress *addr;
public:
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) {
#include "crypter.h"
#include "sync.h"
#include <boost/signals2/signal.hpp>
-#include <boost/variant.hpp>
+
+#include <variant>
class CScript;
*
* A CTxDestination is the internal data type encoded in a CBitcoinAddress.
*/
-typedef boost::variant<CNoDestination, CKeyID, CScriptID> CTxDestination;
+using CTxDestination = std::variant<CNoDestination, CKeyID, CScriptID>;
/** A virtual base class for key stores */
class CKeyStore
CTxDestination dest;
if(ExtractDestination(script, dest))
{
- CScriptID scriptID = boost::get<CScriptID>(dest);
+ CScriptID scriptID = std::get<CScriptID>(dest);
CScript redeemScript;
if(model->getWallet()->GetCScript(scriptID, redeemScript))
ui->redeemScript->setText(HexStr(redeemScript.begin(), redeemScript.end()).c_str());
}
emit updateAmount();
-}
\ No newline at end of file
+}
CTxDestination address;
if (ExtractDestination(pk, address))
{
- const CScriptID& hash = boost::get<CScriptID>(address);
+ const CScriptID& hash = std::get<CScriptID>(address);
CScript redeemScript;
if (pwalletMain->GetCScript(hash, redeemScript))
entry.push_back(Pair("redeemScript", HexStr(redeemScript.begin(), redeemScript.end())));
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))
int nRequired;
if (ExtractDestinations(script, type, vDest, nRequired)) {
for (const CTxDestination &dest : vDest)
- boost::apply_visitor(*this, dest);
+ std::visit(*this, dest);
}
}
void CScript::SetDestination(const CTxDestination& dest)
{
- boost::apply_visitor(CScriptVisitor(this), dest);
+ std::visit(CScriptVisitor(this), dest);
}
void CScript::SetAddress(const CBitcoinAddress& dest)