diff options
| author | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-11 19:02:08 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-11 19:02:08 +0200 |
| commit | 8ab24da337a10993b98696df5d499706318beb8e (patch) | |
| tree | 140183b7fa246cbe5d148d7deb4d2412b6a91e23 /lib/kernel/celebration.mli | |
| parent | 0506388da160a15ceddb0cea1a697d737103d5c4 (diff) | |
| download | colitur-8ab24da337a10993b98696df5d499706318beb8e.tar.gz colitur-8ab24da337a10993b98696df5d499706318beb8e.zip | |
kernel(celebration): distinguish a feast from a commemoration-only entry
The 1960 reform reduced many feasts to a bare commemoration. They keep a rank,
because RG 111 orders admitted commemorations by dignity, but they can never be
the observed day. Modelled as a separate status rather than a fifth rank: RG 8
fixes the classes at four.
Diffstat (limited to 'lib/kernel/celebration.mli')
| -rw-r--r-- | lib/kernel/celebration.mli | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/lib/kernel/celebration.mli b/lib/kernel/celebration.mli index 1c84d35..a3c2960 100644 --- a/lib/kernel/celebration.mli +++ b/lib/kernel/celebration.mli @@ -1,8 +1,15 @@ +(** Whether this celebration can be the observed day at all. The 1960 reform + reduced many feasts to a bare commemoration; they retain a rank (RG 111 + orders admitted commemorations by dignity) but can never be observed. NOT + a fifth rank: RG 8 fixes the classes at four. *) +type status = Feast | Commemoration_only [@@deriving sexp] + (** A celebration. Parameterised by the rite's rank type only. *) type 'r t = { slug : Slug.t; names : Names.t; rank : 'r; + status : status; colour : Colour.t; subject : Subject.t; citations : Citation.t list; @@ -10,7 +17,8 @@ type 'r t = { } [@@deriving sexp] -(** [subject] defaults to [Subject.Temporal], [names] to empty, [citations] to []. *) +(** [status] defaults to [Feast], [subject] to [Subject.Temporal], [names] to + empty, [citations] to []. *) val make : - slug:Slug.t -> ?names:Names.t -> rank:'r -> colour:Colour.t -> + slug:Slug.t -> ?names:Names.t -> rank:'r -> ?status:status -> colour:Colour.t -> ?subject:Subject.t -> ?citations:Citation.t list -> layer:string -> unit -> 'r t |
