//! Typed merge strategies for folding per-variant overrides.
/// How a `Dispatcher<V, C, O>` combines successive overrides as
/// it folds over a list of variants.
///
/// The default `OverrideLast` mirrors Nix attrset `//` (later
/// wins). `AccumulateList` mirrors `++` (concatenate). Custom
/// strategies are handled by the consumer's `O` type implementing
/// `Default + std::ops::Add` (or whatever shape fits).