mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-01-10 03:47:29 -03:00
clusterlin: rename Intersect -> IntersectPrefixes
This makes it clearer what the function does.
This commit is contained in:
parent
9774a958b5
commit
0e52728a2d
2 changed files with 7 additions and 7 deletions
|
@ -333,12 +333,12 @@ public:
|
|||
* of the linearization that has a feerate not below subset's.
|
||||
*
|
||||
* This is a crucial operation in guaranteeing improvements to linearizations. If subset has
|
||||
* a feerate not below GetChunk(0)'s, then moving Intersect(subset) to the front of (what
|
||||
* remains of) the linearization is guaranteed not to make it worse at any point.
|
||||
* a feerate not below GetChunk(0)'s, then moving IntersectPrefixes(subset) to the front of
|
||||
* (what remains of) the linearization is guaranteed not to make it worse at any point.
|
||||
*
|
||||
* See https://delvingbitcoin.org/t/introduction-to-cluster-linearization/1032 for background.
|
||||
*/
|
||||
SetInfo<SetType> Intersect(const SetInfo<SetType>& subset) const noexcept
|
||||
SetInfo<SetType> IntersectPrefixes(const SetInfo<SetType>& subset) const noexcept
|
||||
{
|
||||
Assume(subset.transactions.IsSubsetOf(m_todo));
|
||||
SetInfo<SetType> accumulator;
|
||||
|
@ -719,7 +719,7 @@ std::pair<std::vector<ClusterIndex>, bool> Linearize(const DepGraph<SetType>& de
|
|||
// sure we don't pick something that makes us unable to reach further diagram points
|
||||
// of the old linearization.
|
||||
if (old_chunking.NumChunksLeft() > 0) {
|
||||
best = old_chunking.Intersect(best);
|
||||
best = old_chunking.IntersectPrefixes(best);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -560,10 +560,10 @@ FUZZ_TARGET(clusterlin_linearization_chunking)
|
|||
}
|
||||
assert(combined == todo);
|
||||
|
||||
// Verify the expected properties of LinearizationChunking::Intersect:
|
||||
auto intersect = chunking.Intersect(subset);
|
||||
// Verify the expected properties of LinearizationChunking::IntersectPrefixes:
|
||||
auto intersect = chunking.IntersectPrefixes(subset);
|
||||
// - Intersecting again doesn't change the result.
|
||||
assert(chunking.Intersect(intersect) == intersect);
|
||||
assert(chunking.IntersectPrefixes(intersect) == intersect);
|
||||
// - The intersection is topological.
|
||||
TestBitSet intersect_anc;
|
||||
for (auto idx : intersect.transactions) {
|
||||
|
|
Loading…
Reference in a new issue