diff options
Diffstat (limited to 'lib/kernel')
| -rw-r--r-- | lib/kernel/calendar.ml | 4 | ||||
| -rw-r--r-- | lib/kernel/rite.ml | 6 | ||||
| -rw-r--r-- | lib/kernel/rite.mli | 14 |
3 files changed, 23 insertions, 1 deletions
diff --git a/lib/kernel/calendar.ml b/lib/kernel/calendar.ml index cffdf69..724641d 100644 --- a/lib/kernel/calendar.ml +++ b/lib/kernel/calendar.ml @@ -435,7 +435,9 @@ let build_day (rite : ('s, 'r) Rite.t) (idx : 'r Layer.by_date) transferred_in; transferred_out; omitted; - citations = []; + citations = + rite.Rite.readings ~observed:resolution.Precedence.observed.Precedence.cel ~temporal ~date + ~temporal_at:rite.Rite.temporal; } let year (rite : ('s, 'r) Rite.t) (layer : 'r Layer.t) (y : int) : diff --git a/lib/kernel/rite.ml b/lib/kernel/rite.ml index 89fceb6..91326a6 100644 --- a/lib/kernel/rite.ml +++ b/lib/kernel/rite.ml @@ -11,4 +11,10 @@ type ('s, 'r) t = { season_runs : 's list; transfer_target : 'r Precedence.candidate -> Date.t -> (Date.t -> 'r Celebration.t) -> Date.t; + readings : + observed:'r Celebration.t -> + temporal:('s, 'r) Temporal.t -> + date:Date.t -> + temporal_at:(Date.t -> ('s, 'r) Temporal.t) -> + Citation.t list; } diff --git a/lib/kernel/rite.mli b/lib/kernel/rite.mli index ffe9471..a41e034 100644 --- a/lib/kernel/rite.mli +++ b/lib/kernel/rite.mli @@ -59,4 +59,18 @@ type ('s, 'r) t = { [transfer_target] for a concrete termination argument (a structural step bound, not an appeal to the real calendar's own structure). *) + readings : + observed:'r Celebration.t -> + temporal:('s, 'r) Temporal.t -> + date:Date.t -> + temporal_at:(Date.t -> ('s, 'r) Temporal.t) -> + Citation.t list; + (** The day's Epistle and Gospel citations, or []. Rite-supplied for the + same reason [transfer_target] is: what a day with no proper of its + own falls back to is a rubric of a particular rite, not a universal. + + [temporal_at] is a callback so the rite can reach another date's + temporal identity (the preceding Sunday's, for the ferial rule) + without re-implementing the temporal cycle -- the same shape + [transfer_target]'s own [occupant] callback established. *) } |
