diff options
Diffstat (limited to 'lib/rites/rite_ef/precedence_ef.ml')
| -rw-r--r-- | lib/rites/rite_ef/precedence_ef.ml | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/lib/rites/rite_ef/precedence_ef.ml b/lib/rites/rite_ef/precedence_ef.ml index d8d64a8..02181ed 100644 --- a/lib/rites/rite_ef/precedence_ef.ml +++ b/lib/rites/rite_ef/precedence_ef.ml @@ -243,13 +243,17 @@ let contains_substring s ~needle = let is_sunday_slug slug = contains_substring slug ~needle:sunday_marker -(* RG 33's "any Sunday or a I-class feast": every RG 91 entry that can ever - outrank a II-class vigil (entry 21) without itself being a Sunday is I - class by the table's own structure (entries 1-13), so [rank = Class1] - alone already covers every way a I-class vigil (entries 5, 9 -- Nativity, - Pentecost) can be impeded at all; the slug check is what a II-class vigil - impeded by an ordinary Sunday (entry 15, rank Class2) needs, since that - winner's own rank is not Class1. *) +(* RG 33's own two conditions, taken directly from its text ("any Sunday or + a I-class feast") -- NOT derived from anything about which RG 91 entries + can numerically outrank a vigil. [rank = Class1] is the "I-class feast" + half. [is_sunday_slug] is the "any Sunday" half, and it is not redundant + with the rank check: RG 91 entries 14 and 16-20 (Feasts of the Lord II + class, universal/proper/indult II-class feasts, days within the Nativity + octave) are all [Class2], all outrank a II-class vigil (entry 21), and + none of them is a Sunday -- a winner of that shape satisfies neither + condition here, so [impedes_vigil] correctly returns [false] and such a + vigil falls through to RG 95's ordinary commemorate-or-omit branch + instead of RG 33's omission, exactly as the rubric requires. *) let impedes_vigil (winner : Vocab_ef.rank Precedence.candidate) = let cel = winner.Precedence.cel in cel.Celebration.rank = Vocab_ef.Class1 |
