MCPcopy Create free account
hub / github.com/bitcoin/bitcoin / CompareMainOrder

Method CompareMainOrder

src/txgraph.cpp:2762–2781  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2760}
2761
2762std::strong_ordering TxGraphImpl::CompareMainOrder(const Ref& a, const Ref& b) noexcept
2763{
2764 // The references must not be empty.
2765 Assume(GetRefGraph(a) == this);
2766 Assume(GetRefGraph(b) == this);
2767 // Apply dependencies in main.
2768 ApplyDependencies(0);
2769 Assume(m_main_clusterset.m_deps_to_add.empty());
2770 // Make both involved Clusters acceptable, so chunk feerates are relevant.
2771 const auto& entry_a = m_entries[GetRefIndex(a)];
2772 const auto& entry_b = m_entries[GetRefIndex(b)];
2773 const auto& locator_a = entry_a.m_locator[0];
2774 const auto& locator_b = entry_b.m_locator[0];
2775 Assume(locator_a.IsPresent());
2776 Assume(locator_b.IsPresent());
2777 MakeAcceptable(*locator_a.cluster, /*level=*/0);
2778 MakeAcceptable(*locator_b.cluster, /*level=*/0);
2779 // Invoke comparison logic.
2780 return CompareMainTransactions(GetRefIndex(a), GetRefIndex(b));
2781}
2782
2783TxGraph::GraphIndex TxGraphImpl::CountDistinctClusters(std::span<const Ref* const> refs, Level level_select) noexcept
2784{

Callers 3

FUZZ_TARGETFunction · 0.80

Calls 2

IsPresentMethod · 0.80
emptyMethod · 0.45

Tested by 1

FUZZ_TARGETFunction · 0.64