Skip to content

Commit 8ecac08

Browse files
committed
Use ResultPtr<unique_ptr> instead of Result<unique_ptr>
1 parent 96809f6 commit 8ecac08

File tree

6 files changed

+18
-30
lines changed

6 files changed

+18
-30
lines changed

src/addrdb.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@ void ReadFromStream(AddrMan& addr, DataStream& ssPeers)
186186
DeserializeDB(ssPeers, addr, false);
187187
}
188188

189-
util::Result<std::unique_ptr<AddrMan>> LoadAddrman(const NetGroupManager& netgroupman, const ArgsManager& args)
189+
util::ResultPtr<std::unique_ptr<AddrMan>> LoadAddrman(const NetGroupManager& netgroupman, const ArgsManager& args)
190190
{
191191
auto check_addrman = std::clamp<int32_t>(args.GetIntArg("-checkaddrman", DEFAULT_ADDRMAN_CONSISTENCY_CHECKS), 0, 1000000);
192192
auto addrman{std::make_unique<AddrMan>(netgroupman, /*deterministic=*/false, /*consistency_check_ratio=*/check_addrman)};

src/addrdb.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ class CBanDB
4949
};
5050

5151
/** Returns an error string on failure */
52-
util::Result<std::unique_ptr<AddrMan>> LoadAddrman(const NetGroupManager& netgroupman, const ArgsManager& args);
52+
util::ResultPtr<std::unique_ptr<AddrMan>> LoadAddrman(const NetGroupManager& netgroupman, const ArgsManager& args);
5353

5454
/**
5555
* Dump the anchor IP address database (anchors.dat)

src/init.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1241,7 +1241,7 @@ bool AppInitMain(NodeContext& node, interfaces::BlockAndHeaderTipInfo* tip_info)
12411241
uiInterface.InitMessage(_("Loading P2P addresses…").translated);
12421242
auto addrman{LoadAddrman(*node.netgroupman, args)};
12431243
if (!addrman) return InitError(util::ErrorString(addrman));
1244-
node.addrman = std::move(*addrman);
1244+
node.addrman = std::move(addrman.value());
12451245
}
12461246

12471247
assert(!node.banman);

src/interfaces/wallet.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -323,16 +323,16 @@ class WalletLoader : public ChainClient
323323
{
324324
public:
325325
//! Create new wallet.
326-
virtual util::Result<std::unique_ptr<Wallet>> createWallet(const std::string& name, const SecureString& passphrase, uint64_t wallet_creation_flags, std::vector<bilingual_str>& warnings) = 0;
326+
virtual util::ResultPtr<std::unique_ptr<Wallet>> createWallet(const std::string& name, const SecureString& passphrase, uint64_t wallet_creation_flags, std::vector<bilingual_str>& warnings) = 0;
327327

328328
//! Load existing wallet.
329-
virtual util::Result<std::unique_ptr<Wallet>> loadWallet(const std::string& name, std::vector<bilingual_str>& warnings) = 0;
329+
virtual util::ResultPtr<std::unique_ptr<Wallet>> loadWallet(const std::string& name, std::vector<bilingual_str>& warnings) = 0;
330330

331331
//! Return default wallet directory.
332332
virtual std::string getWalletDir() = 0;
333333

334334
//! Restore backup wallet
335-
virtual util::Result<std::unique_ptr<Wallet>> restoreWallet(const fs::path& backup_file, const std::string& wallet_name, std::vector<bilingual_str>& warnings) = 0;
335+
virtual util::ResultPtr<std::unique_ptr<Wallet>> restoreWallet(const fs::path& backup_file, const std::string& wallet_name, std::vector<bilingual_str>& warnings) = 0;
336336

337337
//! Migrate a wallet
338338
virtual util::Result<WalletMigrationResult> migrateWallet(const std::string& name, const SecureString& passphrase) = 0;

src/qt/walletcontroller.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -266,7 +266,7 @@ void CreateWalletActivity::createWallet()
266266
auto wallet{node().walletLoader().createWallet(name, m_passphrase, flags, m_warning_message)};
267267

268268
if (wallet) {
269-
m_wallet_model = m_wallet_controller->getOrCreateWallet(std::move(*wallet));
269+
m_wallet_model = m_wallet_controller->getOrCreateWallet(std::move(wallet.value()));
270270
} else {
271271
m_error_message = util::ErrorString(wallet);
272272
}
@@ -355,7 +355,7 @@ void OpenWalletActivity::open(const std::string& path)
355355
auto wallet{node().walletLoader().loadWallet(path, m_warning_message)};
356356

357357
if (wallet) {
358-
m_wallet_model = m_wallet_controller->getOrCreateWallet(std::move(*wallet));
358+
m_wallet_model = m_wallet_controller->getOrCreateWallet(std::move(wallet.value()));
359359
} else {
360360
m_error_message = util::ErrorString(wallet);
361361
}
@@ -408,7 +408,7 @@ void RestoreWalletActivity::restore(const fs::path& backup_file, const std::stri
408408
auto wallet{node().walletLoader().restoreWallet(backup_file, wallet_name, m_warning_message)};
409409

410410
if (wallet) {
411-
m_wallet_model = m_wallet_controller->getOrCreateWallet(std::move(*wallet));
411+
m_wallet_model = m_wallet_controller->getOrCreateWallet(std::move(wallet.value()));
412412
} else {
413413
m_error_message = util::ErrorString(wallet);
414414
}

src/wallet/interfaces.cpp

Lines changed: 9 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -597,7 +597,7 @@ class WalletLoaderImpl : public WalletLoader
597597
void schedulerMockForward(std::chrono::seconds delta) override { Assert(m_context.scheduler)->MockForward(delta); }
598598

599599
//! WalletLoader methods
600-
util::Result<std::unique_ptr<Wallet>> createWallet(const std::string& name, const SecureString& passphrase, uint64_t wallet_creation_flags, std::vector<bilingual_str>& warnings) override
600+
util::ResultPtr<std::unique_ptr<Wallet>> createWallet(const std::string& name, const SecureString& passphrase, uint64_t wallet_creation_flags, std::vector<bilingual_str>& warnings) override
601601
{
602602
DatabaseOptions options;
603603
DatabaseStatus status;
@@ -606,37 +606,25 @@ class WalletLoaderImpl : public WalletLoader
606606
options.create_flags = wallet_creation_flags;
607607
options.create_passphrase = passphrase;
608608
bilingual_str error;
609-
std::unique_ptr<Wallet> wallet{MakeWallet(m_context, CreateWallet(m_context, name, /*load_on_start=*/true, options, status, error, warnings))};
610-
if (wallet) {
611-
return wallet;
612-
} else {
613-
return util::Error{error};
614-
}
609+
util::ResultPtr<std::unique_ptr<Wallet>> wallet{MakeWallet(m_context, CreateWallet(m_context, name, /*load_on_start=*/true, options, status, error, warnings))};
610+
return wallet ? std::move(wallet) : util::Error{error};
615611
}
616-
util::Result<std::unique_ptr<Wallet>> loadWallet(const std::string& name, std::vector<bilingual_str>& warnings) override
612+
util::ResultPtr<std::unique_ptr<Wallet>> loadWallet(const std::string& name, std::vector<bilingual_str>& warnings) override
617613
{
618614
DatabaseOptions options;
619615
DatabaseStatus status;
620616
ReadDatabaseArgs(*m_context.args, options);
621617
options.require_existing = true;
622618
bilingual_str error;
623-
std::unique_ptr<Wallet> wallet{MakeWallet(m_context, LoadWallet(m_context, name, /*load_on_start=*/true, options, status, error, warnings))};
624-
if (wallet) {
625-
return wallet;
626-
} else {
627-
return util::Error{error};
628-
}
619+
util::ResultPtr<std::unique_ptr<Wallet>> wallet{MakeWallet(m_context, LoadWallet(m_context, name, /*load_on_start=*/true, options, status, error, warnings))};
620+
return wallet ? std::move(wallet) : util::Error{error};
629621
}
630-
util::Result<std::unique_ptr<Wallet>> restoreWallet(const fs::path& backup_file, const std::string& wallet_name, std::vector<bilingual_str>& warnings) override
622+
util::ResultPtr<std::unique_ptr<Wallet>> restoreWallet(const fs::path& backup_file, const std::string& wallet_name, std::vector<bilingual_str>& warnings) override
631623
{
632624
DatabaseStatus status;
633625
bilingual_str error;
634-
std::unique_ptr<Wallet> wallet{MakeWallet(m_context, RestoreWallet(m_context, backup_file, wallet_name, /*load_on_start=*/true, status, error, warnings))};
635-
if (wallet) {
636-
return wallet;
637-
} else {
638-
return util::Error{error};
639-
}
626+
util::ResultPtr<std::unique_ptr<Wallet>> wallet{MakeWallet(m_context, RestoreWallet(m_context, backup_file, wallet_name, /*load_on_start=*/true, status, error, warnings))};
627+
return wallet ? std::move(wallet) : util::Error{error};
640628
}
641629
util::Result<WalletMigrationResult> migrateWallet(const std::string& name, const SecureString& passphrase) override
642630
{

0 commit comments

Comments
 (0)