summaryrefslogtreecommitdiff
path: root/lib/kernel/rite.mli
diff options
context:
space:
mode:
Diffstat (limited to 'lib/kernel/rite.mli')
-rw-r--r--lib/kernel/rite.mli27
1 files changed, 27 insertions, 0 deletions
diff --git a/lib/kernel/rite.mli b/lib/kernel/rite.mli
index 39538d0..0dcf17e 100644
--- a/lib/kernel/rite.mli
+++ b/lib/kernel/rite.mli
@@ -17,6 +17,33 @@ type ('s, 'r) t = {
into rite-agnostic code and be silently wrong for a Julian-reckoning
rite. Read by {!Layer.index} to resolve
{!Date_spec.Easter_offset}. *)
+ fixed_key : Date.t -> (int * int) option;
+ (** The (month, day) under which a FIXED sanctoral entry ({!Layer.on_date})
+ is looked up for this civil date. [Some (month, day)] identity for
+ every rite with no reason to differ -- a Byzantine or other
+ non-Roman rite supplies nothing beyond that, and its output is
+ therefore byte-identical to a rite that predates this field
+ entirely. [None] means no fixed entry can ever be found for this
+ date, regardless of what {!Layer.index} holds.
+
+ Exists for the Roman calendarium's own bissextile (leap-year)
+ footnote (February, docs/research/LT.txt:5011-5014): the
+ intercalary day is inserted by DOUBLING the sixth kalends of March
+ (civil 24 February in a common year), not by appending a 29th day
+ at the month's end, so every fixed feast dated at or after that
+ kalends position is kept one civil day later than usual, and 24
+ February itself carries no fixed entry that year. This is a fact
+ about the ROMAN rite's own kalends reckoning, not a universal
+ computus rule -- a rite with no such convention (or none at all,
+ the default above) must not have it hardcoded into rite-agnostic
+ code, the same reason {!easter} above is rite-supplied rather than
+ chosen here. See rite_ef/temporal_ef.ml's [bissextile_fixed_key]
+ for the concrete Roman implementation and its full citation.
+
+ Deliberately untouched: the MOVABLE half of {!Layer.on_date}'s
+ lookup ({!Date_spec.Easter_offset}, {!Date_spec.Nth_weekday}) --
+ this field's contract is fixed-date reckoning only, and nothing in
+ the calendarium footnote concerns Easter-relative dates. *)
rules : ('s, 'r) Precedence.rules;
season_runs : 's list;
(** the expected run-length-compressed season sequence over one liturgical