aboutsummaryrefslogtreecommitdiff
path: root/lib/rites/rite_ef/lectionary_ef.mli
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-08-15 00:16:35 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-08-15 00:16:35 +0200
commit124d7e2261c721c4a49f7203efc276088c7cb217 (patch)
tree9aa82ff189c924e9327236d77acd6891114108cb /lib/rites/rite_ef/lectionary_ef.mli
parentf1d90a83ece4d8301061e8247e23ec2af8293ab4 (diff)
downloadcolitur-124d7e2261c721c4a49f7203efc276088c7cb217.tar.gz
colitur-124d7e2261c721c4a49f7203efc276088c7cb217.zip
kernel+ef: resolve readings, chain steps 1 and 2
Liturgical_day.citations has read "always empty until Plan 4" since Plan 3; it is now filled. Rite.t gains a readings function, rite-supplied for the same reason transfer_target is: what a day with no proper falls back to is a rubric, not a universal. Calendar calls it and passes its own temporal function as the callback the rite needs to reach another date. Steps 1 and 2 only: the observed celebration's own proper, else the day's own temporal slug. Nothing encodes "Lent has daily propers" -- the presence of an entry is the discriminator.
Diffstat (limited to 'lib/rites/rite_ef/lectionary_ef.mli')
-rw-r--r--lib/rites/rite_ef/lectionary_ef.mli15
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/rites/rite_ef/lectionary_ef.mli b/lib/rites/rite_ef/lectionary_ef.mli
new file mode 100644
index 0000000..fe9359e
--- /dev/null
+++ b/lib/rites/rite_ef/lectionary_ef.mli
@@ -0,0 +1,15 @@
+open Colitur_kernel
+
+(** The EF lectionary resolution chain. All rubric knowledge about what a day
+ with no proper falls back to lives here, not in the kernel.
+
+ Steps 1 and 2 only (Task 4): the observed celebration's own proper, else
+ the day's own temporal slug in the lectionary. A day matching neither
+ gets [] for now -- the ferial fallback to the preceding Sunday (Task 5)
+ and the Commons (Task 6) are not built here. *)
+val readings :
+ observed:Vocab_ef.rank Celebration.t ->
+ temporal:(Vocab_ef.season, Vocab_ef.rank) Temporal.t ->
+ date:Date.t ->
+ temporal_at:(Date.t -> (Vocab_ef.season, Vocab_ef.rank) Temporal.t) ->
+ Citation.t list