1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
/// A solar-calendar date using tyme-compatible Julian/Gregorian reform semantics.
///
/// Conversion APIs support solar years `1..=9999`. Dates before
/// `1582-10-15` use Julian-calendar semantics. The historical Gregorian reform
/// gap `1582-10-05..=1582-10-14` is invalid, matching tyme4rs.
/// A date in the Chinese lunar calendar.
///
/// Lunar-month fact APIs support lunar years `-1..=9999`. `lunar_to_solar`
/// additionally requires the resulting solar date to fall within supported
/// solar years `1..=9999`.
///
/// The derived [`Ord`] is structural field order (`year`, `month`, `day`,
/// `is_leap_month`), not chronological lunar-calendar order. In leap-month
/// years this can disagree with real calendar sequence across the regular/leap
/// month boundary: for example, regular `2020-04-30` sorts after leap
/// `2020-04-01` because `day` is compared before `is_leap_month`, while
/// chronologically the leap month follows the regular month. Convert to
/// [`SolarDate`] via [`crate::lunar_to_solar`] for chronological comparison.