#[non_exhaustive]pub enum Priority {
Optional,
Secondary,
Essential,
}Expand description
What a member is worth when there is not room for all of them.
Written for table columns and no longer only theirs. Three shapes ask the
same question and this answers all three: a table too narrow for its
columns, a row too narrow for its parts (see RowPart::priority), and a
group of regions sharing one run of room – goingson’s tab strip and the
Region::Band beside it, which is the case wiki layout-room-and-fallback
was ruled on. It is what any member of a group is worth, not a table
concept, and Fallback::Shed is what reads it.
The doc below is the column argument, which is where the type was measured;
the sentence that gave it away is Priority::Essential’s, which was
already written about a row.
Ordered: Priority::Optional drops first, Priority::Essential never
drops. This replaces addressing columns by position, which is what both
webview apps do today and is a live bug rather than only verbosity. goingson
hides mobile columns with nth-child(n+5) against a seven-column table, so
inserting a column silently hides the wrong one.
#[non_exhaustive], same reasoning as Width. Note the ordering is the
whole point of the type, so a new tier has to be declared in its place in
the sequence rather than appended.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Optional
Dropped first.
Secondary
Dropped once the optional members are gone.
Essential
Never dropped. Without it the group does not identify itself.