cluster_linearize

Algorithms and data structures for ordering (linearizing) clusters of dependent transactions.

Types

NameDescription
DepGraph Data structure that holds a transaction graph's preprocessed data (fee, size, ancestors, descendants).
SFLDefaultCostModel A default cost model for SFL for SetType=BitSet<64>, based on benchmarks.
SetInfo A set of transactions together with their aggregate feerate.
SpanningForestState Class to represent the internal state of the spanning-forest linearization (SFL) algorithm.

Type Aliases

NameDescription
DepGraphIndex Data type to represent transaction indices in DepGraphs and the clusters they represent.
IndexTxOrder Simple default transaction ordering function for SpanningForestState::GetLinearization() and Linearize(), which just sorts by DepGraphIndex.

Functions

NameDescription
ChunkLinearization Compute the feerates of the chunks of linearization. Identical to ChunkLinearizationInfo, but only returns the chunk feerates, not the corresponding transaction sets.
ChunkLinearizationInfo Compute the chunks of linearization as SetInfos.
Linearize Find or improve a linearization for a cluster.
PostLinearize Improve a given linearization.
swap Swap two SetInfo objects.
operator== Equality operators

Concepts

NameDescription
StrongComparator Concept for function objects that return std::strong_ordering when invoked with two Args.