diff options
author | William Casarin <jb55@jb55.com> | 2020-05-01 20:03:43 -0700 |
---|---|---|
committer | fanquake <fanquake@gmail.com> | 2021-09-29 09:40:10 +0800 |
commit | 2ba4ddf31d27bebc144b3729479967b40bbe0b6a (patch) | |
tree | 6be2168585922040490ea0b56f982de1bf40cf6b /src/test | |
parent | 3c776fdcec176ffaa2056633fa2b4e737cda29ce (diff) |
bloom: use Span instead of std::vector for `insert` and `contains`
We can avoid many unnecessary std::vector allocations by changing
CBloomFilter to take Spans instead of std::vector's for the `insert`
and `contains` operations.
CBloomFilter currently converts types such as CDataStream and uint256
to std::vector on `insert` and `contains`. This is unnecessary because
CDataStreams and uint256 are already std::vectors internally. We just
need a way to point to the right data within those types. Span gives
us this ability.
Signed-off-by: William Casarin <jb55@jb55.com>
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/bloom_tests.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/test/bloom_tests.cpp b/src/test/bloom_tests.cpp index 5a98558240..23ef2062ef 100644 --- a/src/test/bloom_tests.cpp +++ b/src/test/bloom_tests.cpp @@ -83,7 +83,7 @@ BOOST_AUTO_TEST_CASE(bloom_create_insert_key) CBloomFilter filter(2, 0.001, 0, BLOOM_UPDATE_ALL); filter.insert(vchPubKey); uint160 hash = pubkey.GetID(); - filter.insert(std::vector<unsigned char>(hash.begin(), hash.end())); + filter.insert(hash); CDataStream stream(SER_NETWORK, PROTOCOL_VERSION); stream << filter; |