pub enum StaticTemporalNavigationSelection {
Natal,
PreDecadal,
Decadal {
decadal_index: usize,
},
Yearly {
decadal_index: usize,
year_index: u8,
},
Monthly {
decadal_index: usize,
year_index: u8,
month_index: u8,
},
Daily {
decadal_index: usize,
year_index: u8,
month_index: u8,
day_index: u8,
},
Hourly {
decadal_index: usize,
year_index: u8,
month_index: u8,
day_index: u8,
hour_index: u8,
},
}Expand description
A renderer-neutral, hierarchical drill-down selection for the bottom panel.
A renderer (TUI/GUI) reports which bottom-panel cell the user chose as an
index path (大限 → 流年 → 流月 → 流日 → 流时); core resolves the indices to
concrete lunar/solar coordinates and prepares the matching
StaticChartViewSnapshot. Each deeper variant carries its ancestors’
indices. The renderer never derives the overlay, the lunar labels, or the
month/day validity itself.
Indices: year_index 0..=9 (within the 大限’s 10 years); month_index 0..=11
(lunar month 正月..腊月); day_index 0..=29 (lunar day 初一..三十); hour_index
0..=11 (double-hour 子..亥).
Variants§
Natal
本命 — the natal slice with no temporal overlay.
PreDecadal
限前 — the span before the first 大限. Carries no overlay; natal base.
Decadal
大限 — the selected decadal period; enables the 流年 row.
Yearly
流年/小限 — a year within the selected 大限; enables the 流月 row.
Fields
Monthly
流月 — a lunar month of the selected 流年; enables the 流日 row.
Fields
Daily
流日 — a lunar day of the selected 流月; enables the 流时 row.
Fields
Hourly
流时 — a double-hour of the selected 流日.
Implementations§
Sourcepub const fn decadal_index(&self) -> Option<usize>
pub const fn decadal_index(&self) -> Option<usize>
The selected decadal period index, if the path reaches 大限.
Sourcepub const fn year_index(&self) -> Option<u8>
pub const fn year_index(&self) -> Option<u8>
The selected year index, if the path reaches 流年.
Sourcepub const fn month_index(&self) -> Option<u8>
pub const fn month_index(&self) -> Option<u8>
The selected lunar-month index, if the path reaches 流月.
Sourcepub const fn day_index(&self) -> Option<u8>
pub const fn day_index(&self) -> Option<u8>
The selected lunar-day index, if the path reaches 流日.
Sourcepub const fn hour_index(&self) -> Option<u8>
pub const fn hour_index(&self) -> Option<u8>
The selected double-hour index, if the path reaches 流时.
Trait Implementations§
Source§fn clone(&self) -> StaticTemporalNavigationSelection
fn clone(&self) -> StaticTemporalNavigationSelection
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§fn default() -> StaticTemporalNavigationSelection
fn default() -> StaticTemporalNavigationSelection
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§fn eq(&self, other: &StaticTemporalNavigationSelection) -> bool
fn eq(&self, other: &StaticTemporalNavigationSelection) -> bool
self and other values to be equal, and is used by ==.