summaryrefslogtreecommitdiff
path: root/lib/citation/parse.mli
diff options
context:
space:
mode:
Diffstat (limited to 'lib/citation/parse.mli')
-rw-r--r--lib/citation/parse.mli9
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/citation/parse.mli b/lib/citation/parse.mli
index 3d1053c..ea38d24 100644
--- a/lib/citation/parse.mli
+++ b/lib/citation/parse.mli
@@ -8,7 +8,14 @@
([John 18:1-40; 19:1-42]) and really does list disjoint verse ranges
within a chapter ([Dan 13:1-9, 15-17, 19-30, 33-62]). *)
-type verse_range = { first : int; last : int option }
+(** A verse number, plus an optional trailing sub-verse letter run ([""] for
+ the overwhelming majority -- see parse.ml's own citation): ["11a"] is
+ [{ n = 11; suffix = "a" }], preserved through parsing and rendering
+ rather than dropped, so a reader never loses precision the source text
+ actually carried. *)
+type verse_num = { n : int; suffix : string }
+
+type verse_range = { first : verse_num; last : verse_num option }
type part = { chapter : int; verses : verse_range list }
type t = { book : Book.id; parts : part list }