From 635740a512bd066c5d6db9dc51b208051e6af031 Mon Sep 17 00:00:00 2001 From: Colin LeMahieu Date: Thu, 10 Oct 2024 14:28:29 +0200 Subject: [PATCH] Adding type aliases to store classes. --- nano/node/wallet.cpp | 17 +++++++++-------- nano/node/wallet.hpp | 11 +++++++---- nano/store/CMakeLists.txt | 1 + nano/store/account.hpp | 13 ++++++++----- nano/store/block.hpp | 11 +++++++---- nano/store/confirmation_height.hpp | 11 +++++++---- nano/store/final.hpp | 11 +++++++---- nano/store/lmdb/account.cpp | 12 ++++++------ nano/store/lmdb/account.hpp | 10 +++++----- nano/store/lmdb/block.cpp | 11 ++++++----- nano/store/lmdb/block.hpp | 8 ++++---- nano/store/lmdb/confirmation_height.cpp | 10 +++++----- nano/store/lmdb/confirmation_height.hpp | 8 ++++---- nano/store/lmdb/final_vote.cpp | 10 +++++----- nano/store/lmdb/final_vote.hpp | 8 ++++---- nano/store/lmdb/online_weight.cpp | 8 ++++---- nano/store/lmdb/online_weight.hpp | 6 +++--- nano/store/lmdb/peer.cpp | 6 +++--- nano/store/lmdb/peer.hpp | 4 ++-- nano/store/lmdb/pending.cpp | 10 +++++----- nano/store/lmdb/pending.hpp | 8 ++++---- nano/store/lmdb/pruned.cpp | 10 +++++----- nano/store/lmdb/pruned.hpp | 8 ++++---- nano/store/lmdb/rep_weight.cpp | 10 +++++----- nano/store/lmdb/rep_weight.hpp | 8 ++++---- nano/store/online_weight.hpp | 9 ++++++--- nano/store/peer.hpp | 7 +++++-- nano/store/pending.hpp | 8 ++++---- nano/store/pruned.hpp | 11 +++++++---- nano/store/rep_weight.hpp | 11 +++++++---- nano/store/rocksdb/account.cpp | 12 ++++++------ nano/store/rocksdb/account.hpp | 10 +++++----- nano/store/rocksdb/block.cpp | 17 ++++++++++++----- nano/store/rocksdb/block.hpp | 8 ++++---- nano/store/rocksdb/confirmation_height.cpp | 10 +++++----- nano/store/rocksdb/confirmation_height.hpp | 8 ++++---- nano/store/rocksdb/final_vote.cpp | 10 +++++----- nano/store/rocksdb/final_vote.hpp | 8 ++++---- nano/store/rocksdb/online_weight.cpp | 8 ++++---- nano/store/rocksdb/online_weight.hpp | 6 +++--- nano/store/rocksdb/peer.cpp | 6 +++--- nano/store/rocksdb/peer.hpp | 4 ++-- nano/store/rocksdb/pending.cpp | 10 +++++----- nano/store/rocksdb/pending.hpp | 8 ++++---- nano/store/rocksdb/pruned.cpp | 10 +++++----- nano/store/rocksdb/pruned.hpp | 8 ++++---- nano/store/rocksdb/rep_weight.cpp | 12 ++++++------ nano/store/rocksdb/rep_weight.hpp | 8 ++++---- 48 files changed, 238 insertions(+), 201 deletions(-) diff --git a/nano/node/wallet.cpp b/nano/node/wallet.cpp index 716f78ee..a1f46c78 100644 --- a/nano/node/wallet.cpp +++ b/nano/node/wallet.cpp @@ -1753,22 +1753,22 @@ std::unordered_map> nano::wallets nano::uint128_t const nano::wallets::generate_priority = std::numeric_limits::max (); nano::uint128_t const nano::wallets::high_priority = std::numeric_limits::max () - 1; -nano::store::iterator nano::wallet_store::begin (store::transaction const & transaction_a) +auto nano::wallet_store::begin (store::transaction const & transaction_a) -> iterator { - store::iterator result (std::make_unique> (transaction_a, env, handle, nano::store::lmdb::db_val (nano::account (special_count)))); + iterator result (std::make_unique> (transaction_a, env, handle, nano::store::lmdb::db_val (nano::account (special_count)))); return result; } -nano::store::iterator nano::wallet_store::begin (store::transaction const & transaction_a, nano::account const & key) +auto nano::wallet_store::begin (store::transaction const & transaction_a, nano::account const & key) -> iterator { - store::iterator result (std::make_unique> (transaction_a, env, handle, nano::store::lmdb::db_val (key))); + iterator result (std::make_unique> (transaction_a, env, handle, nano::store::lmdb::db_val (key))); return result; } -nano::store::iterator nano::wallet_store::find (store::transaction const & transaction_a, nano::account const & key) +auto nano::wallet_store::find (store::transaction const & transaction_a, nano::account const & key) -> iterator { auto result (begin (transaction_a, key)); - store::iterator end (nullptr); + iterator end{ nullptr }; if (result != end) { if (result->first == key) @@ -1787,10 +1787,11 @@ nano::store::iterator nano::wallet_store::fin return result; } -nano::store::iterator nano::wallet_store::end () +auto nano::wallet_store::end () -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } + nano::mdb_wallets_store::mdb_wallets_store (std::filesystem::path const & path_a, nano::lmdb_config const & lmdb_config_a) : environment (error, path_a, nano::store::lmdb::env::options::make ().set_config (lmdb_config_a).override_config_sync (nano::lmdb_config::sync_strategy::always).override_config_map_size (1ULL * 1024 * 1024 * 1024)) { diff --git a/nano/node/wallet.hpp b/nano/node/wallet.hpp index 7ef86efb..ef26f4b0 100644 --- a/nano/node/wallet.hpp +++ b/nano/node/wallet.hpp @@ -57,6 +57,9 @@ enum class key_type class wallet_store final { +public: + using iterator = store::iterator; + public: wallet_store (bool &, nano::kdf &, store::transaction &, store::lmdb::env &, nano::account, unsigned, std::string const &); wallet_store (bool &, nano::kdf &, store::transaction &, store::lmdb::env &, nano::account, unsigned, std::string const &, std::string const &); @@ -89,10 +92,10 @@ public: bool fetch (store::transaction const &, nano::account const &, nano::raw_key &); bool exists (store::transaction const &, nano::account const &); void destroy (store::transaction const &); - store::iterator find (store::transaction const &, nano::account const &); - store::iterator begin (store::transaction const &, nano::account const &); - store::iterator begin (store::transaction const &); - store::iterator end (); + iterator find (store::transaction const &, nano::account const &); + iterator begin (store::transaction const &, nano::account const &); + iterator begin (store::transaction const &); + iterator end (); void derive_key (nano::raw_key &, store::transaction const &, std::string const &); void serialize_json (store::transaction const &, std::string &); void write_backup (store::transaction const &, std::filesystem::path const &); diff --git a/nano/store/CMakeLists.txt b/nano/store/CMakeLists.txt index 19ae4cf2..c44d7fc0 100644 --- a/nano/store/CMakeLists.txt +++ b/nano/store/CMakeLists.txt @@ -32,6 +32,7 @@ add_library( peer.hpp pending.hpp pruned.hpp + rep_weight.hpp rocksdb/account.hpp rocksdb/block.hpp rocksdb/confirmation_height.hpp diff --git a/nano/store/account.hpp b/nano/store/account.hpp index 749cd9c8..ffa05de0 100644 --- a/nano/store/account.hpp +++ b/nano/store/account.hpp @@ -19,6 +19,9 @@ namespace nano::store */ class account { +public: + using iterator = store::iterator; + public: virtual void put (store::write_transaction const &, nano::account const &, nano::account_info const &) = 0; virtual bool get (store::transaction const &, nano::account const &, nano::account_info &) = 0; @@ -26,10 +29,10 @@ public: virtual void del (store::write_transaction const &, nano::account const &) = 0; virtual bool exists (store::transaction const &, nano::account const &) = 0; virtual size_t count (store::transaction const &) = 0; - virtual iterator begin (store::transaction const &, nano::account const &) const = 0; - virtual iterator begin (store::transaction const &) const = 0; - virtual iterator rbegin (store::transaction const &) const = 0; - virtual iterator end () const = 0; - virtual void for_each_par (std::function, iterator)> const &) const = 0; + virtual iterator begin (store::transaction const &, nano::account const &) const = 0; + virtual iterator begin (store::transaction const &) const = 0; + virtual iterator rbegin (store::transaction const &) const = 0; + virtual iterator end () const = 0; + virtual void for_each_par (std::function const &) const = 0; }; } // namespace nano::store diff --git a/nano/store/block.hpp b/nano/store/block.hpp index 17f92669..acd2ba72 100644 --- a/nano/store/block.hpp +++ b/nano/store/block.hpp @@ -21,6 +21,9 @@ namespace nano::store */ class block { +public: + using iterator = store::iterator; + public: virtual void put (store::write_transaction const &, nano::block_hash const &, nano::block const &) = 0; virtual void raw_put (store::write_transaction const &, std::vector const &, nano::block_hash const &) = 0; @@ -31,9 +34,9 @@ public: virtual void del (store::write_transaction const &, nano::block_hash const &) = 0; virtual bool exists (store::transaction const &, nano::block_hash const &) = 0; virtual uint64_t count (store::transaction const &) = 0; - virtual iterator begin (store::transaction const &, nano::block_hash const &) const = 0; - virtual iterator begin (store::transaction const &) const = 0; - virtual iterator end () const = 0; - virtual void for_each_par (std::function, iterator)> const & action_a) const = 0; + virtual iterator begin (store::transaction const &, nano::block_hash const &) const = 0; + virtual iterator begin (store::transaction const &) const = 0; + virtual iterator end () const = 0; + virtual void for_each_par (std::function const & action_a) const = 0; }; } // namespace nano::store diff --git a/nano/store/confirmation_height.hpp b/nano/store/confirmation_height.hpp index f0cb5ee7..5569bec7 100644 --- a/nano/store/confirmation_height.hpp +++ b/nano/store/confirmation_height.hpp @@ -17,6 +17,9 @@ namespace nano::store */ class confirmation_height { +public: + using iterator = store::iterator; + public: virtual void put (store::write_transaction const & transaction_a, nano::account const & account_a, nano::confirmation_height_info const & confirmation_height_info_a) = 0; @@ -32,9 +35,9 @@ public: virtual uint64_t count (store::transaction const & transaction_a) = 0; virtual void clear (store::write_transaction const &, nano::account const &) = 0; virtual void clear (store::write_transaction const &) = 0; - virtual iterator begin (store::transaction const & transaction_a, nano::account const & account_a) const = 0; - virtual iterator begin (store::transaction const & transaction_a) const = 0; - virtual iterator end () const = 0; - virtual void for_each_par (std::function, iterator)> const &) const = 0; + virtual iterator begin (store::transaction const & transaction_a, nano::account const & account_a) const = 0; + virtual iterator begin (store::transaction const & transaction_a) const = 0; + virtual iterator end () const = 0; + virtual void for_each_par (std::function const &) const = 0; }; } // namespace nano::store diff --git a/nano/store/final.hpp b/nano/store/final.hpp index 1b9f1599..677159dd 100644 --- a/nano/store/final.hpp +++ b/nano/store/final.hpp @@ -17,6 +17,9 @@ namespace nano::store */ class final_vote { +public: + using iterator = store::iterator; + public: virtual bool put (store::write_transaction const & transaction_a, nano::qualified_root const & root_a, nano::block_hash const & hash_a) = 0; virtual std::vector get (store::transaction const & transaction_a, nano::root const & root_a) = 0; @@ -24,9 +27,9 @@ public: virtual size_t count (store::transaction const & transaction_a) const = 0; virtual void clear (store::write_transaction const &, nano::root const &) = 0; virtual void clear (store::write_transaction const &) = 0; - virtual store::iterator begin (store::transaction const & transaction_a, nano::qualified_root const & root_a) const = 0; - virtual store::iterator begin (store::transaction const & transaction_a) const = 0; - virtual store::iterator end () const = 0; - virtual void for_each_par (std::function, store::iterator)> const & action_a) const = 0; + virtual iterator begin (store::transaction const & transaction_a, nano::qualified_root const & root_a) const = 0; + virtual iterator begin (store::transaction const & transaction_a) const = 0; + virtual iterator end () const = 0; + virtual void for_each_par (std::function const & action_a) const = 0; }; } // namespace nano::store diff --git a/nano/store/lmdb/account.cpp b/nano/store/lmdb/account.cpp index 19a35c8e..e01ce623 100644 --- a/nano/store/lmdb/account.cpp +++ b/nano/store/lmdb/account.cpp @@ -43,27 +43,27 @@ size_t nano::store::lmdb::account::count (store::transaction const & transaction return store.count (transaction_a, tables::accounts); } -nano::store::iterator nano::store::lmdb::account::begin (store::transaction const & transaction, nano::account const & account) const +auto nano::store::lmdb::account::begin (store::transaction const & transaction, nano::account const & account) const -> iterator { return store.make_iterator (transaction, tables::accounts, account); } -nano::store::iterator nano::store::lmdb::account::begin (store::transaction const & transaction) const +auto nano::store::lmdb::account::begin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::accounts); } -nano::store::iterator nano::store::lmdb::account::rbegin (store::transaction const & transaction_a) const +auto nano::store::lmdb::account::rbegin (store::transaction const & transaction_a) const -> iterator { return store.make_iterator (transaction_a, tables::accounts, false); } -nano::store::iterator nano::store::lmdb::account::end () const +auto nano::store::lmdb::account::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } -void nano::store::lmdb::account::for_each_par (std::function, store::iterator)> const & action_a) const +void nano::store::lmdb::account::for_each_par (std::function const & action_a) const { parallel_traversal ( [&action_a, this] (nano::uint256_t const & start, nano::uint256_t const & end, bool const is_last) { diff --git a/nano/store/lmdb/account.hpp b/nano/store/lmdb/account.hpp index 6faaf3cf..6650f19f 100644 --- a/nano/store/lmdb/account.hpp +++ b/nano/store/lmdb/account.hpp @@ -22,11 +22,11 @@ public: void del (store::write_transaction const & transaction_a, nano::account const & account_a) override; bool exists (store::transaction const & transaction_a, nano::account const & account_a) override; size_t count (store::transaction const & transaction_a) override; - store::iterator begin (store::transaction const & transaction_a, nano::account const & account_a) const override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator rbegin (store::transaction const & transaction_a) const override; - store::iterator end () const override; - void for_each_par (std::function, store::iterator)> const & action_a) const override; + iterator begin (store::transaction const & transaction_a, nano::account const & account_a) const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator rbegin (store::transaction const & transaction_a) const override; + iterator end () const override; + void for_each_par (std::function const & action_a) const override; /** * Maps account v1 to account information, head, rep, open, balance, timestamp and block count. (Removed) diff --git a/nano/store/lmdb/block.cpp b/nano/store/lmdb/block.cpp index 9d3e308a..461e0b99 100644 --- a/nano/store/lmdb/block.cpp +++ b/nano/store/lmdb/block.cpp @@ -134,22 +134,23 @@ uint64_t nano::store::lmdb::block::count (store::transaction const & transaction { return store.count (transaction_a, tables::blocks); } -nano::store::iterator nano::store::lmdb::block::begin (store::transaction const & transaction) const + +auto nano::store::lmdb::block::begin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::blocks); } -nano::store::iterator nano::store::lmdb::block::begin (store::transaction const & transaction, nano::block_hash const & hash) const +auto nano::store::lmdb::block::begin (store::transaction const & transaction, nano::block_hash const & hash) const -> iterator { return store.make_iterator (transaction, tables::blocks, hash); } -nano::store::iterator nano::store::lmdb::block::end () const +auto nano::store::lmdb::block::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } -void nano::store::lmdb::block::for_each_par (std::function, store::iterator)> const & action_a) const +void nano::store::lmdb::block::for_each_par (std::function const & action_a) const { parallel_traversal ( [&action_a, this] (nano::uint256_t const & start, nano::uint256_t const & end, bool const is_last) { diff --git a/nano/store/lmdb/block.hpp b/nano/store/lmdb/block.hpp index 575803d8..25949451 100644 --- a/nano/store/lmdb/block.hpp +++ b/nano/store/lmdb/block.hpp @@ -31,10 +31,10 @@ public: void del (store::write_transaction const & transaction_a, nano::block_hash const & hash_a) override; bool exists (store::transaction const & transaction_a, nano::block_hash const & hash_a) override; uint64_t count (store::transaction const & transaction_a) override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator begin (store::transaction const & transaction_a, nano::block_hash const & hash_a) const override; - store::iterator end () const override; - void for_each_par (std::function, store::iterator)> const & action_a) const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator begin (store::transaction const & transaction_a, nano::block_hash const & hash_a) const override; + iterator end () const override; + void for_each_par (std::function const & action_a) const override; /** * Contains block_sideband and block for all block types (legacy send/change/open/receive & state blocks) diff --git a/nano/store/lmdb/confirmation_height.cpp b/nano/store/lmdb/confirmation_height.cpp index 1ce01eda..234c5684 100644 --- a/nano/store/lmdb/confirmation_height.cpp +++ b/nano/store/lmdb/confirmation_height.cpp @@ -59,22 +59,22 @@ void nano::store::lmdb::confirmation_height::clear (store::write_transaction con store.drop (transaction_a, nano::tables::confirmation_height); } -nano::store::iterator nano::store::lmdb::confirmation_height::begin (store::transaction const & transaction, nano::account const & account) const +auto nano::store::lmdb::confirmation_height::begin (store::transaction const & transaction, nano::account const & account) const -> iterator { return store.make_iterator (transaction, tables::confirmation_height, account); } -nano::store::iterator nano::store::lmdb::confirmation_height::begin (store::transaction const & transaction) const +auto nano::store::lmdb::confirmation_height::begin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::confirmation_height); } -nano::store::iterator nano::store::lmdb::confirmation_height::end () const +auto nano::store::lmdb::confirmation_height::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } -void nano::store::lmdb::confirmation_height::for_each_par (std::function, store::iterator)> const & action_a) const +void nano::store::lmdb::confirmation_height::for_each_par (std::function const & action_a) const { parallel_traversal ( [&action_a, this] (nano::uint256_t const & start, nano::uint256_t const & end, bool const is_last) { diff --git a/nano/store/lmdb/confirmation_height.hpp b/nano/store/lmdb/confirmation_height.hpp index 4674f811..de353245 100644 --- a/nano/store/lmdb/confirmation_height.hpp +++ b/nano/store/lmdb/confirmation_height.hpp @@ -23,10 +23,10 @@ public: uint64_t count (store::transaction const & transaction_a) override; void clear (store::write_transaction const & transaction_a, nano::account const & account_a) override; void clear (store::write_transaction const & transaction_a) override; - store::iterator begin (store::transaction const & transaction_a, nano::account const & account_a) const override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator end () const override; - void for_each_par (std::function, store::iterator)> const & action_a) const override; + iterator begin (store::transaction const & transaction_a, nano::account const & account_a) const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator end () const override; + void for_each_par (std::function const & action_a) const override; /* * Confirmation height of an account, and the hash for the block at that height diff --git a/nano/store/lmdb/final_vote.cpp b/nano/store/lmdb/final_vote.cpp index 2ae93bd5..a26153d1 100644 --- a/nano/store/lmdb/final_vote.cpp +++ b/nano/store/lmdb/final_vote.cpp @@ -64,22 +64,22 @@ void nano::store::lmdb::final_vote::clear (store::write_transaction const & tran store.drop (transaction_a, nano::tables::final_votes); } -nano::store::iterator nano::store::lmdb::final_vote::begin (store::transaction const & transaction, nano::qualified_root const & root) const +auto nano::store::lmdb::final_vote::begin (store::transaction const & transaction, nano::qualified_root const & root) const -> iterator { return store.make_iterator (transaction, tables::final_votes, root); } -nano::store::iterator nano::store::lmdb::final_vote::begin (store::transaction const & transaction) const +auto nano::store::lmdb::final_vote::begin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::final_votes); } -nano::store::iterator nano::store::lmdb::final_vote::end () const +auto nano::store::lmdb::final_vote::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } -void nano::store::lmdb::final_vote::for_each_par (std::function, store::iterator)> const & action_a) const +void nano::store::lmdb::final_vote::for_each_par (std::function const & action_a) const { parallel_traversal ( [&action_a, this] (nano::uint512_t const & start, nano::uint512_t const & end, bool const is_last) { diff --git a/nano/store/lmdb/final_vote.hpp b/nano/store/lmdb/final_vote.hpp index 92fc5253..896ab5d6 100644 --- a/nano/store/lmdb/final_vote.hpp +++ b/nano/store/lmdb/final_vote.hpp @@ -23,10 +23,10 @@ public: size_t count (store::transaction const & transaction_a) const override; void clear (store::write_transaction const & transaction_a, nano::root const & root_a) override; void clear (store::write_transaction const & transaction_a) override; - store::iterator begin (store::transaction const & transaction_a, nano::qualified_root const & root_a) const override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator end () const override; - void for_each_par (std::function, store::iterator)> const & action_a) const override; + iterator begin (store::transaction const & transaction_a, nano::qualified_root const & root_a) const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator end () const override; + void for_each_par (std::function const & action_a) const override; /** * Maps root to block hash for generated final votes. diff --git a/nano/store/lmdb/online_weight.cpp b/nano/store/lmdb/online_weight.cpp index 647aaf34..c9e553a0 100644 --- a/nano/store/lmdb/online_weight.cpp +++ b/nano/store/lmdb/online_weight.cpp @@ -18,19 +18,19 @@ void nano::store::lmdb::online_weight::del (store::write_transaction const & tra store.release_assert_success (status); } -nano::store::iterator nano::store::lmdb::online_weight::begin (store::transaction const & transaction) const +auto nano::store::lmdb::online_weight::begin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::online_weight); } -nano::store::iterator nano::store::lmdb::online_weight::rbegin (store::transaction const & transaction) const +auto nano::store::lmdb::online_weight::rbegin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::online_weight, false); } -nano::store::iterator nano::store::lmdb::online_weight::end () const +auto nano::store::lmdb::online_weight::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } size_t nano::store::lmdb::online_weight::count (store::transaction const & transaction) const diff --git a/nano/store/lmdb/online_weight.hpp b/nano/store/lmdb/online_weight.hpp index 0567c63d..fe281035 100644 --- a/nano/store/lmdb/online_weight.hpp +++ b/nano/store/lmdb/online_weight.hpp @@ -15,9 +15,9 @@ public: explicit online_weight (nano::store::lmdb::component & store_a); void put (store::write_transaction const & transaction_a, uint64_t time_a, nano::amount const & amount_a) override; void del (store::write_transaction const & transaction_a, uint64_t time_a) override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator rbegin (store::transaction const & transaction_a) const override; - store::iterator end () const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator rbegin (store::transaction const & transaction_a) const override; + iterator end () const override; size_t count (store::transaction const & transaction_a) const override; void clear (store::write_transaction const & transaction_a) override; diff --git a/nano/store/lmdb/peer.cpp b/nano/store/lmdb/peer.cpp index c43412d9..a91cd300 100644 --- a/nano/store/lmdb/peer.cpp +++ b/nano/store/lmdb/peer.cpp @@ -45,12 +45,12 @@ void nano::store::lmdb::peer::clear (store::write_transaction const & transactio store.release_assert_success (status); } -nano::store::iterator nano::store::lmdb::peer::begin (store::transaction const & transaction) const +auto nano::store::lmdb::peer::begin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::peers); } -nano::store::iterator nano::store::lmdb::peer::end () const +auto nano::store::lmdb::peer::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } diff --git a/nano/store/lmdb/peer.hpp b/nano/store/lmdb/peer.hpp index 8197c00b..db39eb51 100644 --- a/nano/store/lmdb/peer.hpp +++ b/nano/store/lmdb/peer.hpp @@ -19,8 +19,8 @@ public: bool exists (store::transaction const &, nano::endpoint_key const & endpoint) const override; size_t count (store::transaction const &) const override; void clear (store::write_transaction const &) override; - store::iterator begin (store::transaction const &) const override; - store::iterator end () const override; + iterator begin (store::transaction const &) const override; + iterator end () const override; /* * Endpoints for peers diff --git a/nano/store/lmdb/pending.cpp b/nano/store/lmdb/pending.cpp index cabb7089..925203d5 100644 --- a/nano/store/lmdb/pending.cpp +++ b/nano/store/lmdb/pending.cpp @@ -45,22 +45,22 @@ bool nano::store::lmdb::pending::any (store::transaction const & transaction_a, return iterator != end () && nano::pending_key (iterator->first).account == account_a; } -nano::store::iterator nano::store::lmdb::pending::begin (store::transaction const & transaction_a, nano::pending_key const & key_a) const +auto nano::store::lmdb::pending::begin (store::transaction const & transaction_a, nano::pending_key const & key_a) const -> iterator { return store.make_iterator (transaction_a, tables::pending, key_a); } -nano::store::iterator nano::store::lmdb::pending::begin (store::transaction const & transaction_a) const +auto nano::store::lmdb::pending::begin (store::transaction const & transaction_a) const -> iterator { return store.make_iterator (transaction_a, tables::pending); } -nano::store::iterator nano::store::lmdb::pending::end () const +auto nano::store::lmdb::pending::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } -void nano::store::lmdb::pending::for_each_par (std::function, store::iterator)> const & action_a) const +void nano::store::lmdb::pending::for_each_par (std::function const & action_a) const { parallel_traversal ( [&action_a, this] (nano::uint512_t const & start, nano::uint512_t const & end, bool const is_last) { diff --git a/nano/store/lmdb/pending.hpp b/nano/store/lmdb/pending.hpp index 13cd9172..46b5f794 100644 --- a/nano/store/lmdb/pending.hpp +++ b/nano/store/lmdb/pending.hpp @@ -22,10 +22,10 @@ public: std::optional get (store::transaction const & transaction_a, nano::pending_key const & key_a) override; bool exists (store::transaction const & transaction_a, nano::pending_key const & key_a) override; bool any (store::transaction const & transaction_a, nano::account const & account_a) override; - store::iterator begin (store::transaction const & transaction_a, nano::pending_key const & key_a) const override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator end () const override; - void for_each_par (std::function, store::iterator)> const & action_a) const override; + iterator begin (store::transaction const & transaction_a, nano::pending_key const & key_a) const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator end () const override; + void for_each_par (std::function const & action_a) const override; /** * Maps min_version 0 (destination account, pending block) to (source account, amount). (Removed) diff --git a/nano/store/lmdb/pruned.cpp b/nano/store/lmdb/pruned.cpp index 2be19c24..30bf1e0b 100644 --- a/nano/store/lmdb/pruned.cpp +++ b/nano/store/lmdb/pruned.cpp @@ -45,22 +45,22 @@ void nano::store::lmdb::pruned::clear (store::write_transaction const & transact store.release_assert_success (status); } -nano::store::iterator nano::store::lmdb::pruned::begin (store::transaction const & transaction, nano::block_hash const & hash) const +auto nano::store::lmdb::pruned::begin (store::transaction const & transaction, nano::block_hash const & hash) const -> iterator { return store.make_iterator (transaction, tables::pruned, hash); } -nano::store::iterator nano::store::lmdb::pruned::begin (store::transaction const & transaction) const +auto nano::store::lmdb::pruned::begin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::pruned); } -nano::store::iterator nano::store::lmdb::pruned::end () const +auto nano::store::lmdb::pruned::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } -void nano::store::lmdb::pruned::for_each_par (std::function, store::iterator)> const & action_a) const +void nano::store::lmdb::pruned::for_each_par (std::function const & action_a) const { parallel_traversal ( [&action_a, this] (nano::uint256_t const & start, nano::uint256_t const & end, bool const is_last) { diff --git a/nano/store/lmdb/pruned.hpp b/nano/store/lmdb/pruned.hpp index 0aa2d7fc..de1be14a 100644 --- a/nano/store/lmdb/pruned.hpp +++ b/nano/store/lmdb/pruned.hpp @@ -19,10 +19,10 @@ public: nano::block_hash random (store::transaction const & transaction_a) override; size_t count (store::transaction const & transaction_a) const override; void clear (store::write_transaction const & transaction_a) override; - store::iterator begin (store::transaction const & transaction_a, nano::block_hash const & hash_a) const override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator end () const override; - void for_each_par (std::function, store::iterator)> const & action_a) const override; + iterator begin (store::transaction const & transaction_a, nano::block_hash const & hash_a) const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator end () const override; + void for_each_par (std::function const & action_a) const override; /** * Pruned blocks hashes diff --git a/nano/store/lmdb/rep_weight.cpp b/nano/store/lmdb/rep_weight.cpp index 529efae6..d01d204d 100644 --- a/nano/store/lmdb/rep_weight.cpp +++ b/nano/store/lmdb/rep_weight.cpp @@ -43,22 +43,22 @@ void nano::store::lmdb::rep_weight::del (store::write_transaction const & txn_a, store.release_assert_success (status); } -nano::store::iterator nano::store::lmdb::rep_weight::begin (store::transaction const & transaction_a, nano::account const & representative_a) const +auto nano::store::lmdb::rep_weight::begin (store::transaction const & transaction_a, nano::account const & representative_a) const -> iterator { return store.make_iterator (transaction_a, tables::rep_weights, representative_a); } -nano::store::iterator nano::store::lmdb::rep_weight::begin (store::transaction const & transaction_a) const +auto nano::store::lmdb::rep_weight::begin (store::transaction const & transaction_a) const -> iterator { return store.make_iterator (transaction_a, tables::rep_weights); } -nano::store::iterator nano::store::lmdb::rep_weight::end () const +auto nano::store::lmdb::rep_weight::end () const -> iterator { - return nano::store::iterator (nullptr); + return iterator{ nullptr }; } -void nano::store::lmdb::rep_weight::for_each_par (std::function, store::iterator)> const & action_a) const +void nano::store::lmdb::rep_weight::for_each_par (std::function const & action_a) const { parallel_traversal ( [&action_a, this] (nano::uint256_t const & start, nano::uint256_t const & end, bool const is_last) { diff --git a/nano/store/lmdb/rep_weight.hpp b/nano/store/lmdb/rep_weight.hpp index 2a6ef53c..809b23ae 100644 --- a/nano/store/lmdb/rep_weight.hpp +++ b/nano/store/lmdb/rep_weight.hpp @@ -20,10 +20,10 @@ public: nano::uint128_t get (store::transaction const & txn_a, nano::account const & representative_a) override; void put (store::write_transaction const & txn_a, nano::account const & representative_a, nano::uint128_t const & weight_a) override; void del (store::write_transaction const &, nano::account const & representative_a) override; - store::iterator begin (store::transaction const & transaction_a, nano::account const & representative_a) const override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator end () const override; - void for_each_par (std::function, store::iterator)> const & action_a) const override; + iterator begin (store::transaction const & transaction_a, nano::account const & representative_a) const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator end () const override; + void for_each_par (std::function const & action_a) const override; /** * Representative weights diff --git a/nano/store/online_weight.hpp b/nano/store/online_weight.hpp index aa17938e..595a5151 100644 --- a/nano/store/online_weight.hpp +++ b/nano/store/online_weight.hpp @@ -17,12 +17,15 @@ namespace nano::store */ class online_weight { +public: + using iterator = store::iterator; + public: virtual void put (store::write_transaction const &, uint64_t, nano::amount const &) = 0; virtual void del (store::write_transaction const &, uint64_t) = 0; - virtual store::iterator begin (store::transaction const &) const = 0; - virtual store::iterator rbegin (store::transaction const &) const = 0; - virtual store::iterator end () const = 0; + virtual iterator begin (store::transaction const &) const = 0; + virtual iterator rbegin (store::transaction const &) const = 0; + virtual iterator end () const = 0; virtual size_t count (store::transaction const &) const = 0; virtual void clear (store::write_transaction const &) = 0; }; diff --git a/nano/store/peer.hpp b/nano/store/peer.hpp index 82f9a538..58e3c1d1 100644 --- a/nano/store/peer.hpp +++ b/nano/store/peer.hpp @@ -17,6 +17,9 @@ namespace nano::store */ class peer { +public: + using iterator = store::iterator; + public: /// Returns true if the peer was inserted, false if it was already in the container virtual void put (store::write_transaction const &, nano::endpoint_key const & endpoint, nano::millis_t timestamp) = 0; @@ -25,7 +28,7 @@ public: virtual bool exists (store::transaction const &, nano::endpoint_key const & endpoint) const = 0; virtual size_t count (store::transaction const &) const = 0; virtual void clear (store::write_transaction const &) = 0; - virtual store::iterator begin (store::transaction const &) const = 0; - virtual store::iterator end () const = 0; + virtual iterator begin (store::transaction const &) const = 0; + virtual iterator end () const = 0; }; } // namespace nano::store diff --git a/nano/store/pending.hpp b/nano/store/pending.hpp index 23272cba..771bfba5 100644 --- a/nano/store/pending.hpp +++ b/nano/store/pending.hpp @@ -29,9 +29,9 @@ public: virtual std::optional get (store::transaction const &, nano::pending_key const &) = 0; virtual bool exists (store::transaction const &, nano::pending_key const &) = 0; virtual bool any (store::transaction const &, nano::account const &) = 0; - virtual store::iterator begin (store::transaction const &, nano::pending_key const &) const = 0; - virtual store::iterator begin (store::transaction const &) const = 0; - virtual store::iterator end () const = 0; - virtual void for_each_par (std::function, store::iterator)> const & action_a) const = 0; + virtual iterator begin (store::transaction const &, nano::pending_key const &) const = 0; + virtual iterator begin (store::transaction const &) const = 0; + virtual iterator end () const = 0; + virtual void for_each_par (std::function const & action_a) const = 0; }; } // namespace nano::store diff --git a/nano/store/pruned.hpp b/nano/store/pruned.hpp index cc40c812..5899c3d0 100644 --- a/nano/store/pruned.hpp +++ b/nano/store/pruned.hpp @@ -17,6 +17,9 @@ namespace nano::store */ class pruned { +public: + using iterator = store::iterator; + public: virtual void put (store::write_transaction const & transaction_a, nano::block_hash const & hash_a) = 0; virtual void del (store::write_transaction const & transaction_a, nano::block_hash const & hash_a) = 0; @@ -24,9 +27,9 @@ public: virtual nano::block_hash random (store::transaction const & transaction_a) = 0; virtual size_t count (store::transaction const & transaction_a) const = 0; virtual void clear (store::write_transaction const &) = 0; - virtual store::iterator begin (store::transaction const & transaction_a, nano::block_hash const & hash_a) const = 0; - virtual store::iterator begin (store::transaction const & transaction_a) const = 0; - virtual store::iterator end () const = 0; - virtual void for_each_par (std::function, store::iterator)> const & action_a) const = 0; + virtual iterator begin (store::transaction const & transaction_a, nano::block_hash const & hash_a) const = 0; + virtual iterator begin (store::transaction const & transaction_a) const = 0; + virtual iterator end () const = 0; + virtual void for_each_par (std::function const & action_a) const = 0; }; } // namespace nano::store diff --git a/nano/store/rep_weight.hpp b/nano/store/rep_weight.hpp index 72ac9f84..5d8fdb80 100644 --- a/nano/store/rep_weight.hpp +++ b/nano/store/rep_weight.hpp @@ -18,15 +18,18 @@ namespace nano::store */ class rep_weight { +public: + using iterator = store::iterator; + public: virtual ~rep_weight (){}; virtual uint64_t count (store::transaction const & txn_a) = 0; virtual nano::uint128_t get (store::transaction const & txn_a, nano::account const & representative_a) = 0; virtual void put (store::write_transaction const & txn_a, nano::account const & representative_a, nano::uint128_t const & weight_a) = 0; virtual void del (store::write_transaction const &, nano::account const & representative_a) = 0; - virtual store::iterator begin (store::transaction const & transaction_a, nano::account const & representative_a) const = 0; - virtual store::iterator begin (store::transaction const & transaction_a) const = 0; - virtual store::iterator end () const = 0; - virtual void for_each_par (std::function, store::iterator)> const & action_a) const = 0; + virtual iterator begin (store::transaction const & transaction_a, nano::account const & representative_a) const = 0; + virtual iterator begin (store::transaction const & transaction_a) const = 0; + virtual iterator end () const = 0; + virtual void for_each_par (std::function const & action_a) const = 0; }; } diff --git a/nano/store/rocksdb/account.cpp b/nano/store/rocksdb/account.cpp index 8ee01b98..9040f22e 100644 --- a/nano/store/rocksdb/account.cpp +++ b/nano/store/rocksdb/account.cpp @@ -42,27 +42,27 @@ size_t nano::store::rocksdb::account::count (store::transaction const & transact return store.count (transaction_a, tables::accounts); } -nano::store::iterator nano::store::rocksdb::account::begin (store::transaction const & transaction, nano::account const & account) const +auto nano::store::rocksdb::account::begin (store::transaction const & transaction, nano::account const & account) const -> iterator { return store.make_iterator (transaction, tables::accounts, account); } -nano::store::iterator nano::store::rocksdb::account::begin (store::transaction const & transaction) const +auto nano::store::rocksdb::account::begin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::accounts); } -nano::store::iterator nano::store::rocksdb::account::rbegin (store::transaction const & transaction_a) const +auto nano::store::rocksdb::account::rbegin (store::transaction const & transaction_a) const -> iterator { return store.make_iterator (transaction_a, tables::accounts, false); } -nano::store::iterator nano::store::rocksdb::account::end () const +auto nano::store::rocksdb::account::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } -void nano::store::rocksdb::account::for_each_par (std::function, store::iterator)> const & action_a) const +void nano::store::rocksdb::account::for_each_par (std::function const & action_a) const { parallel_traversal ( [&action_a, this] (nano::uint256_t const & start, nano::uint256_t const & end, bool const is_last) { diff --git a/nano/store/rocksdb/account.hpp b/nano/store/rocksdb/account.hpp index df5752b4..1b2c068d 100644 --- a/nano/store/rocksdb/account.hpp +++ b/nano/store/rocksdb/account.hpp @@ -20,10 +20,10 @@ public: void del (store::write_transaction const & transaction_a, nano::account const & account_a) override; bool exists (store::transaction const & transaction_a, nano::account const & account_a) override; size_t count (store::transaction const & transaction_a) override; - store::iterator begin (store::transaction const & transaction_a, nano::account const & account_a) const override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator rbegin (store::transaction const & transaction_a) const override; - store::iterator end () const override; - void for_each_par (std::function, store::iterator)> const & action_a) const override; + iterator begin (store::transaction const & transaction_a, nano::account const & account_a) const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator rbegin (store::transaction const & transaction_a) const override; + iterator end () const override; + void for_each_par (std::function const & action_a) const override; }; } // namespace nano::store::rocksdb diff --git a/nano/store/rocksdb/block.cpp b/nano/store/rocksdb/block.cpp index 10ca4067..7532193a 100644 --- a/nano/store/rocksdb/block.cpp +++ b/nano/store/rocksdb/block.cpp @@ -133,22 +133,23 @@ uint64_t nano::store::rocksdb::block::count (store::transaction const & transact { return store.count (transaction_a, tables::blocks); } -nano::store::iterator nano::store::rocksdb::block::begin (store::transaction const & transaction) const + +auto nano::store::rocksdb::block::begin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::blocks); } -nano::store::iterator nano::store::rocksdb::block::begin (store::transaction const & transaction, nano::block_hash const & hash) const +auto nano::store::rocksdb::block::begin (store::transaction const & transaction, nano::block_hash const & hash) const -> iterator { return store.make_iterator (transaction, tables::blocks, hash); } -nano::store::iterator nano::store::rocksdb::block::end () const +auto nano::store::rocksdb::block::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } -void nano::store::rocksdb::block::for_each_par (std::function, store::iterator)> const & action_a) const +void nano::store::rocksdb::block::for_each_par (std::function const & action_a) const { parallel_traversal ( [&action_a, this] (nano::uint256_t const & start, nano::uint256_t const & end, bool const is_last) { @@ -179,6 +180,7 @@ nano::block_predecessor_rocksdb_set::block_predecessor_rocksdb_set (store::write block_store{ block_store_a } { } + void nano::block_predecessor_rocksdb_set::fill_value (nano::block const & block_a) { auto hash = block_a.hash (); @@ -190,22 +192,27 @@ void nano::block_predecessor_rocksdb_set::fill_value (nano::block const & block_ std::copy (hash.bytes.begin (), hash.bytes.end (), data.begin () + block_store.block_successor_offset (transaction, value.size (), type)); block_store.raw_put (transaction, data, block_a.previous ()); } + void nano::block_predecessor_rocksdb_set::send_block (nano::send_block const & block_a) { fill_value (block_a); } + void nano::block_predecessor_rocksdb_set::receive_block (nano::receive_block const & block_a) { fill_value (block_a); } + void nano::block_predecessor_rocksdb_set::open_block (nano::open_block const & block_a) { // Open blocks don't have a predecessor } + void nano::block_predecessor_rocksdb_set::change_block (nano::change_block const & block_a) { fill_value (block_a); } + void nano::block_predecessor_rocksdb_set::state_block (nano::state_block const & block_a) { if (!block_a.previous ().is_zero ()) diff --git a/nano/store/rocksdb/block.hpp b/nano/store/rocksdb/block.hpp index 7df264a2..0a093f1c 100644 --- a/nano/store/rocksdb/block.hpp +++ b/nano/store/rocksdb/block.hpp @@ -29,10 +29,10 @@ public: void del (store::write_transaction const & transaction_a, nano::block_hash const & hash_a) override; bool exists (store::transaction const & transaction_a, nano::block_hash const & hash_a) override; uint64_t count (store::transaction const & transaction_a) override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator begin (store::transaction const & transaction_a, nano::block_hash const & hash_a) const override; - store::iterator end () const override; - void for_each_par (std::function, store::iterator)> const & action_a) const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator begin (store::transaction const & transaction_a, nano::block_hash const & hash_a) const override; + iterator end () const override; + void for_each_par (std::function const & action_a) const override; protected: void block_raw_get (store::transaction const & transaction_a, nano::block_hash const & hash_a, nano::store::rocksdb::db_val & value) const; diff --git a/nano/store/rocksdb/confirmation_height.cpp b/nano/store/rocksdb/confirmation_height.cpp index 380cd80e..eea42023 100644 --- a/nano/store/rocksdb/confirmation_height.cpp +++ b/nano/store/rocksdb/confirmation_height.cpp @@ -59,22 +59,22 @@ void nano::store::rocksdb::confirmation_height::clear (store::write_transaction store.drop (transaction, nano::tables::confirmation_height); } -nano::store::iterator nano::store::rocksdb::confirmation_height::begin (store::transaction const & transaction, nano::account const & account) const +auto nano::store::rocksdb::confirmation_height::begin (store::transaction const & transaction, nano::account const & account) const -> iterator { return store.make_iterator (transaction, tables::confirmation_height, account); } -nano::store::iterator nano::store::rocksdb::confirmation_height::begin (store::transaction const & transaction) const +auto nano::store::rocksdb::confirmation_height::begin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::confirmation_height); } -nano::store::iterator nano::store::rocksdb::confirmation_height::end () const +auto nano::store::rocksdb::confirmation_height::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } -void nano::store::rocksdb::confirmation_height::for_each_par (std::function, store::iterator)> const & action_a) const +void nano::store::rocksdb::confirmation_height::for_each_par (std::function const & action_a) const { parallel_traversal ( [&action_a, this] (nano::uint256_t const & start, nano::uint256_t const & end, bool const is_last) { diff --git a/nano/store/rocksdb/confirmation_height.hpp b/nano/store/rocksdb/confirmation_height.hpp index 95d73004..050ceef9 100644 --- a/nano/store/rocksdb/confirmation_height.hpp +++ b/nano/store/rocksdb/confirmation_height.hpp @@ -21,9 +21,9 @@ public: uint64_t count (store::transaction const & transaction_a) override; void clear (store::write_transaction const & transaction_a, nano::account const & account_a) override; void clear (store::write_transaction const & transaction_a) override; - store::iterator begin (store::transaction const & transaction_a, nano::account const & account_a) const override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator end () const override; - void for_each_par (std::function, store::iterator)> const & action_a) const override; + iterator begin (store::transaction const & transaction_a, nano::account const & account_a) const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator end () const override; + void for_each_par (std::function const & action_a) const override; }; } // namespace nano::store::rocksdb diff --git a/nano/store/rocksdb/final_vote.cpp b/nano/store/rocksdb/final_vote.cpp index 121da333..3979b16c 100644 --- a/nano/store/rocksdb/final_vote.cpp +++ b/nano/store/rocksdb/final_vote.cpp @@ -64,22 +64,22 @@ void nano::store::rocksdb::final_vote::clear (store::write_transaction const & t store.drop (transaction_a, nano::tables::final_votes); } -nano::store::iterator nano::store::rocksdb::final_vote::begin (store::transaction const & transaction, nano::qualified_root const & root) const +auto nano::store::rocksdb::final_vote::begin (store::transaction const & transaction, nano::qualified_root const & root) const -> iterator { return store.make_iterator (transaction, tables::final_votes, root); } -nano::store::iterator nano::store::rocksdb::final_vote::begin (store::transaction const & transaction) const +auto nano::store::rocksdb::final_vote::begin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::final_votes); } -nano::store::iterator nano::store::rocksdb::final_vote::end () const +auto nano::store::rocksdb::final_vote::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } -void nano::store::rocksdb::final_vote::for_each_par (std::function, store::iterator)> const & action_a) const +void nano::store::rocksdb::final_vote::for_each_par (std::function const & action_a) const { parallel_traversal ( [&action_a, this] (nano::uint512_t const & start, nano::uint512_t const & end, bool const is_last) { diff --git a/nano/store/rocksdb/final_vote.hpp b/nano/store/rocksdb/final_vote.hpp index d730ec08..0ffa549f 100644 --- a/nano/store/rocksdb/final_vote.hpp +++ b/nano/store/rocksdb/final_vote.hpp @@ -21,9 +21,9 @@ public: size_t count (store::transaction const & transaction_a) const override; void clear (store::write_transaction const & transaction_a, nano::root const & root_a) override; void clear (store::write_transaction const & transaction_a) override; - store::iterator begin (store::transaction const & transaction_a, nano::qualified_root const & root_a) const override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator end () const override; - void for_each_par (std::function, store::iterator)> const & action_a) const override; + iterator begin (store::transaction const & transaction_a, nano::qualified_root const & root_a) const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator end () const override; + void for_each_par (std::function const & action_a) const override; }; } // namespace nano::store::rocksdb diff --git a/nano/store/rocksdb/online_weight.cpp b/nano/store/rocksdb/online_weight.cpp index c6f7e1da..42250c68 100644 --- a/nano/store/rocksdb/online_weight.cpp +++ b/nano/store/rocksdb/online_weight.cpp @@ -18,19 +18,19 @@ void nano::store::rocksdb::online_weight::del (store::write_transaction const & store.release_assert_success (status); } -nano::store::iterator nano::store::rocksdb::online_weight::begin (store::transaction const & transaction) const +auto nano::store::rocksdb::online_weight::begin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::online_weight); } -nano::store::iterator nano::store::rocksdb::online_weight::rbegin (store::transaction const & transaction) const +auto nano::store::rocksdb::online_weight::rbegin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::online_weight, false); } -nano::store::iterator nano::store::rocksdb::online_weight::end () const +auto nano::store::rocksdb::online_weight::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } size_t nano::store::rocksdb::online_weight::count (store::transaction const & transaction) const diff --git a/nano/store/rocksdb/online_weight.hpp b/nano/store/rocksdb/online_weight.hpp index 68718f3e..4d940ffd 100644 --- a/nano/store/rocksdb/online_weight.hpp +++ b/nano/store/rocksdb/online_weight.hpp @@ -17,9 +17,9 @@ public: explicit online_weight (nano::store::rocksdb::component & store_a); void put (store::write_transaction const & transaction_a, uint64_t time_a, nano::amount const & amount_a) override; void del (store::write_transaction const & transaction_a, uint64_t time_a) override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator rbegin (store::transaction const & transaction_a) const override; - store::iterator end () const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator rbegin (store::transaction const & transaction_a) const override; + iterator end () const override; size_t count (store::transaction const & transaction_a) const override; void clear (store::write_transaction const & transaction_a) override; }; diff --git a/nano/store/rocksdb/peer.cpp b/nano/store/rocksdb/peer.cpp index af226e8a..71fa3ccc 100644 --- a/nano/store/rocksdb/peer.cpp +++ b/nano/store/rocksdb/peer.cpp @@ -45,12 +45,12 @@ void nano::store::rocksdb::peer::clear (store::write_transaction const & transac store.release_assert_success (status); } -nano::store::iterator nano::store::rocksdb::peer::begin (store::transaction const & transaction) const +auto nano::store::rocksdb::peer::begin (store::transaction const & transaction) const -> iterator { return store.make_iterator (transaction, tables::peers); } -nano::store::iterator nano::store::rocksdb::peer::end () const +auto nano::store::rocksdb::peer::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } diff --git a/nano/store/rocksdb/peer.hpp b/nano/store/rocksdb/peer.hpp index a4ce7286..30e57644 100644 --- a/nano/store/rocksdb/peer.hpp +++ b/nano/store/rocksdb/peer.hpp @@ -21,7 +21,7 @@ public: bool exists (store::transaction const &, nano::endpoint_key const & endpoint) const override; size_t count (store::transaction const &) const override; void clear (store::write_transaction const &) override; - store::iterator begin (store::transaction const &) const override; - store::iterator end () const override; + iterator begin (store::transaction const &) const override; + iterator end () const override; }; } // namespace nano::store::rocksdb diff --git a/nano/store/rocksdb/pending.cpp b/nano/store/rocksdb/pending.cpp index 27efe5e6..3286cd8f 100644 --- a/nano/store/rocksdb/pending.cpp +++ b/nano/store/rocksdb/pending.cpp @@ -45,22 +45,22 @@ bool nano::store::rocksdb::pending::any (store::transaction const & transaction_ return iterator != end () && nano::pending_key (iterator->first).account == account_a; } -nano::store::iterator nano::store::rocksdb::pending::begin (store::transaction const & transaction_a, nano::pending_key const & key_a) const +auto nano::store::rocksdb::pending::begin (store::transaction const & transaction_a, nano::pending_key const & key_a) const -> iterator { return store.template make_iterator (transaction_a, tables::pending, key_a); } -nano::store::iterator nano::store::rocksdb::pending::begin (store::transaction const & transaction_a) const +auto nano::store::rocksdb::pending::begin (store::transaction const & transaction_a) const -> iterator { return store.template make_iterator (transaction_a, tables::pending); } -nano::store::iterator nano::store::rocksdb::pending::end () const +auto nano::store::rocksdb::pending::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } -void nano::store::rocksdb::pending::for_each_par (std::function, store::iterator)> const & action_a) const +void nano::store::rocksdb::pending::for_each_par (std::function const & action_a) const { parallel_traversal ( [&action_a, this] (nano::uint512_t const & start, nano::uint512_t const & end, bool const is_last) { diff --git a/nano/store/rocksdb/pending.hpp b/nano/store/rocksdb/pending.hpp index 0ee4ced5..4b98b0f0 100644 --- a/nano/store/rocksdb/pending.hpp +++ b/nano/store/rocksdb/pending.hpp @@ -16,9 +16,9 @@ public: std::optional get (store::transaction const & transaction_a, nano::pending_key const & key_a) override; bool exists (store::transaction const & transaction_a, nano::pending_key const & key_a) override; bool any (store::transaction const & transaction_a, nano::account const & account_a) override; - store::iterator begin (store::transaction const & transaction_a, nano::pending_key const & key_a) const override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator end () const override; - void for_each_par (std::function, store::iterator)> const & action_a) const override; + iterator begin (store::transaction const & transaction_a, nano::pending_key const & key_a) const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator end () const override; + void for_each_par (std::function const & action_a) const override; }; } // namespace nano::store::rocksdb diff --git a/nano/store/rocksdb/pruned.cpp b/nano/store/rocksdb/pruned.cpp index 41d7fbb5..572f17e3 100644 --- a/nano/store/rocksdb/pruned.cpp +++ b/nano/store/rocksdb/pruned.cpp @@ -45,22 +45,22 @@ void nano::store::rocksdb::pruned::clear (store::write_transaction const & trans store.release_assert_success (status); } -nano::store::iterator nano::store::rocksdb::pruned::begin (store::transaction const & transaction_a, nano::block_hash const & hash_a) const +auto nano::store::rocksdb::pruned::begin (store::transaction const & transaction_a, nano::block_hash const & hash_a) const -> iterator { return store.make_iterator (transaction_a, tables::pruned, hash_a); } -nano::store::iterator nano::store::rocksdb::pruned::begin (store::transaction const & transaction_a) const +auto nano::store::rocksdb::pruned::begin (store::transaction const & transaction_a) const -> iterator { return store.make_iterator (transaction_a, tables::pruned); } -nano::store::iterator nano::store::rocksdb::pruned::end () const +auto nano::store::rocksdb::pruned::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } -void nano::store::rocksdb::pruned::for_each_par (std::function, store::iterator)> const & action_a) const +void nano::store::rocksdb::pruned::for_each_par (std::function const & action_a) const { parallel_traversal ( [&action_a, this] (nano::uint256_t const & start, nano::uint256_t const & end, bool const is_last) { diff --git a/nano/store/rocksdb/pruned.hpp b/nano/store/rocksdb/pruned.hpp index aa5db1fb..0dc84b84 100644 --- a/nano/store/rocksdb/pruned.hpp +++ b/nano/store/rocksdb/pruned.hpp @@ -21,9 +21,9 @@ public: nano::block_hash random (store::transaction const & transaction_a) override; size_t count (store::transaction const & transaction_a) const override; void clear (store::write_transaction const & transaction_a) override; - store::iterator begin (store::transaction const & transaction_a, nano::block_hash const & hash_a) const override; - store::iterator begin (store::transaction const & transaction_a) const override; - store::iterator end () const override; - void for_each_par (std::function, store::iterator)> const & action_a) const override; + iterator begin (store::transaction const & transaction_a, nano::block_hash const & hash_a) const override; + iterator begin (store::transaction const & transaction_a) const override; + iterator end () const override; + void for_each_par (std::function const & action_a) const override; }; } // namespace nano::store::rocksdb diff --git a/nano/store/rocksdb/rep_weight.cpp b/nano/store/rocksdb/rep_weight.cpp index 7f29e61e..68d4684c 100644 --- a/nano/store/rocksdb/rep_weight.cpp +++ b/nano/store/rocksdb/rep_weight.cpp @@ -42,26 +42,26 @@ void nano::store::rocksdb::rep_weight::del (store::write_transaction const & txn store.release_assert_success (status); } -nano::store::iterator nano::store::rocksdb::rep_weight::begin (store::transaction const & txn_a, nano::account const & representative_a) const +auto nano::store::rocksdb::rep_weight::begin (store::transaction const & txn_a, nano::account const & representative_a) const -> iterator { return store.make_iterator (txn_a, tables::rep_weights, representative_a); } -nano::store::iterator nano::store::rocksdb::rep_weight::begin (store::transaction const & txn_a) const +auto nano::store::rocksdb::rep_weight::begin (store::transaction const & txn_a) const -> iterator { return store.make_iterator (txn_a, tables::rep_weights); } -nano::store::iterator nano::store::rocksdb::rep_weight::end () const +auto nano::store::rocksdb::rep_weight::end () const -> iterator { - return store::iterator (nullptr); + return iterator{ nullptr }; } -void nano::store::rocksdb::rep_weight::for_each_par (std::function, store::iterator)> const & action_a) const +void nano::store::rocksdb::rep_weight::for_each_par (std::function const & action_a) const { parallel_traversal ( [&action_a, this] (nano::uint256_t const & start, nano::uint256_t const & end, bool const is_last) { auto transaction (this->store.tx_begin_read ()); action_a (transaction, this->begin (transaction, start), !is_last ? this->begin (transaction, end) : this->end ()); }); -} \ No newline at end of file +} diff --git a/nano/store/rocksdb/rep_weight.hpp b/nano/store/rocksdb/rep_weight.hpp index c86f2715..76e54226 100644 --- a/nano/store/rocksdb/rep_weight.hpp +++ b/nano/store/rocksdb/rep_weight.hpp @@ -19,9 +19,9 @@ public: nano::uint128_t get (store::transaction const & txn_a, nano::account const & representative_a) override; void put (store::write_transaction const & txn_a, nano::account const & representative_a, nano::uint128_t const & weight_a) override; void del (store::write_transaction const &, nano::account const & representative_a) override; - store::iterator begin (store::transaction const & txn_a, nano::account const & representative_a) const override; - store::iterator begin (store::transaction const & txn_a) const override; - store::iterator end () const override; - void for_each_par (std::function, store::iterator)> const & action_a) const override; + iterator begin (store::transaction const & txn_a, nano::account const & representative_a) const override; + iterator begin (store::transaction const & txn_a) const override; + iterator end () const override; + void for_each_par (std::function const & action_a) const override; }; }