#[non_exhaustive]pub enum Column {
Group,
Threads,
Metric,
Baseline,
Candidate,
Delta,
Pct,
Arrow,
Value,
Tags,
Uptime,
SortBy,
}Expand description
One column slot in the rendered diff/show table. The renderer
iterates the resolved Column vec to build both the
header row and each data row, dispatching cell construction
per variant. Order in the slice is the rendered order — the
renderer never re-sorts.
Column variants are uniform across compare and show even
though show’s Column::Baseline, Column::Candidate,
Column::Delta, Column::Pct, Column::Arrow are
meaningless for a single snapshot. The show entry point
rejects those names at CLI parse time so an operator never
reaches the renderer with a mismatched column set.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Group
The group-by axis label (rendered header is “pcomm”,
“cgroup”, “comm-pattern”, or “comm” per GroupBy).
Threads
Thread-count cell (N when the count matches across
snapshots, A->B arrow form otherwise).
Metric
Metric name with bracketed tag suffix.
Baseline
Baseline value (compare only).
Candidate
Candidate value (compare only).
Delta
Signed delta (compare only).
Pct
Percentage delta (compare only).
Arrow
Single-cell <baseline> -> <candidate> (compare only).
Mutually exclusive with Baseline/Candidate (the arrow
cell already shows both); coexists with Delta/Pct,
which remain separate numeric columns.
Value
Aggregated value cell (show only).
Tags
Bracketed tag suffix (sched_class + config_gates + dead).
Off by default — opt in with --columns ...,tags.
Uptime
Relative uptime: group age as a percentage of the oldest thread in the snapshot. 100% = as old as the oldest thread, 0% = just spawned. Color gradient: green ≥75%, yellow 50–75%, red <50% (>2x younger than the oldest).
SortBy
Sort-by metric summary column. Shows the –sort-by metric’s baseline→candidate (delta%) per group. Only present when –sort-by is set.
Implementations§
Source§impl Column
impl Column
Sourcepub fn cli_name(self) -> &'static str
pub fn cli_name(self) -> &'static str
Canonical CLI name. Round-trips through
parse_columns.
Sourcepub fn header(self, group_header: &'static str) -> &'static str
pub fn header(self, group_header: &'static str) -> &'static str
Header cell text. The group axis carries a per-GroupBy
label (pcomm, cgroup, etc.); other columns echo
Self::cli_name.
Trait Implementations§
impl Copy for Column
impl Eq for Column
impl StructuralPartialEq for Column
Auto Trait Implementations§
impl Freeze for Column
impl RefUnwindSafe for Column
impl Send for Column
impl Sync for Column
impl Unpin for Column
impl UnwindSafe for Column
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more