Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Inputs belonging to no curve, for Aggregation::ByCurve on an axis
that carries them — an FX spot, a vol node. Grouping them under a made-up
curve would name a curve that does not exist.
One contribution belonging to no curve or carrying no date, for
Aggregation::Ladder: a vol node, a recovery, a correlation point, an
FX spot, a parametric curve’s level. Labelled by the input itself,
because a Point label of a curve alone, or of nothing, would leave
every such row of the ladder reading the same.
The curve — a display label taken from the key the contribution was
reached under, never a column’s identity. Absent for an input
belonging to no curve.
The curve this row was reached under, where it was reached under one:
a by-curve row’s curve, a point’s curve, an input’s curve. A total, a
bucket and an uncurved group carry none.