// Copyright (c) 2018-2020 The Bitcoin Core developers
// Distributed under the MIT software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
#include
#include
class CWallet;
namespace interfaces {
class Chain;
class Handler;
class Wallet;
}
class DummyWalletInit : public WalletInitInterface {
public:
bool HasWalletSupport() const override {return false;}
void AddWalletOptions(ArgsManager& argsman) const override;
bool ParameterInteraction() const override {return true;}
void Construct(NodeContext& node) const override {LogPrintf("No wallet support compiled in!\n");}
};
void DummyWalletInit::AddWalletOptions(ArgsManager& argsman) const
{
argsman.AddHiddenArgs({
"-addresstype",
"-avoidpartialspends",
"-changetype",
"-disablewallet",
"-discardfee=",
"-fallbackfee=",
"-keypool=",
"-maxapsfee=",
"-maxtxfee=",
"-mintxfee=",
"-paytxfee=",
"-rescan",
"-salvagewallet",
"-spendzeroconfchange",
"-txconfirmtarget=",
"-wallet=",
"-walletbroadcast",
"-walletdir=",
"-walletnotify=",
"-walletrbf",
"-dblogsize=",
"-flushwallet",
"-privdb",
"-walletrejectlongchains",
});
}
const WalletInitInterface& g_wallet_init_interface = DummyWalletInit();
namespace interfaces {
std::unique_ptr MakeWallet(const std::shared_ptr& wallet)
{
throw std::logic_error("Wallet function called in non-wallet build.");
}
} // namespace interfaces