parse.bend checks
raw source on the hub · import 0x2a08fdaf2b3aa16ae55ed9f5bb4a08ba/parse.bend as Parse
8 imports
import Base import ./books.bend as Books import ./normalize.bend as Norm import ./share.bend as Share import ./complete.bend as Comp import ./context.bend as Ctx import ./route.bend as Route import ./ref_token.bend as Tok
Types
type BookSt source · line 41 · raw
Data
BookCheckBookSt
BookDecide@stop:Bool -> BookSt
BookTakeBookSt
type DigSt source · line 74 · raw
Data
DigCheckDigSt
DigDecide@is_d:Bool -> DigSt
DigTakeDigSt
type RangeKind source · line 152 · raw
Data
SingleRangeKind
ChapterRangeKind
SameChapterRangeKind
ChapterRangeRangeKind
CrossReferenceRangeKind
type ParseErr source · line 159 · raw
Data
EmptyParseErr
BadBookParseErr
BadFormatParseErr
BadNumberParseErr
CapChapter@book:String -> @max:U32 -> @got:U32 -> ParseErr
CapVerse@book:String -> @chapter:U32 -> @max:U32 -> @got:U32 -> ParseErr
ReversedParseErr
type Parsed source · line 168 · raw
Data
Parsed@canonical:String -> @display:String -> @book:String -> @end_book:String -> @chapter:U32 -> @verse:Maybe<&2, U32> -> @end_chapter:U32 -> @end_verse:Maybe<&2, U32> -> @kind:RangeKind -> Parsed
type DecSt source · line 872 · raw
Data
Single recursive decoder — Maybe results passed as DecSt fields (no computed match)
DecCopyDecSt
DecClass@c:Char -> @is_pct:Bool -> @is_plus:Bool -> DecSt
DecPctDecSt
DecNib1@m:Maybe<&2, U32> -> @spill:Char -> DecSt
DecHi@hi:U32 -> DecSt
DecNib2@hi:U32 -> @m:Maybe<&2, U32> -> @spill:Char -> DecSt
DecApply@hi:U32 -> @lo:U32 -> DecSt
type CutSt source · line 938 · raw
Data
CutCheckCutSt
CutDecide@stop:Bool -> CutSt
CutTakeCutSt
type TrPh source · line 1011 · raw
Data
TrStart@h:Char -> @is_a:Bool -> TrPh
TrAlphaTrPh
TrClass@h:Char -> @is_a:Bool -> @is_dot:Bool -> TrPh
TrCommit@ok:Bool -> TrPh
type ShPh source · line 1150 · raw
Data
ShScanShPh
ShEq@eq:Bool -> ShPh
type FaPh source · line 1268 · raw
Data
FaScan@prev_alnum:Bool -> FaPh
FaBound@prev_alnum:Bool -> @ok:Bool -> FaPh
FaTryUrlFaPh
FaAfterUrl@+utok:String -> @empty:Bool -> FaPh
FaTryRefFaPh
FaAfterRef@+rtok:String -> @empty:Bool -> FaPh
FaGot@+tok:String -> @acc:List<&2, Parsed> -> @seen:List<&2, String> -> @empty:Bool -> FaPh
FaAdvanceFaPh
type PlfPh source · line 1509 · raw
Data
After --linkify: optional --src <tag> / --rewrite-existing (rewrite ignored on single-ref path).
PlfGo@+src:String -> PlfPh
PlfNeedSrcPlfPh
PlfHead@+src:String -> @is_rw:Bool -> @is_src:Bool -> @+h:String -> PlfPh
Definitions
def char1 source · line 10 · raw
@+c:Char -> String
def is_book_stop_flags source · line 13 · raw
@+has_letter:Bool -> @is_d:Bool -> @is_a:Bool -> @is_s:Bool -> Bool
def is_book_stop source · line 28 · raw
@+has_letter:Bool -> @+c:Char -> Bool
def next_has_letter_go source · line 31 · raw
@has_letter:Bool -> @is_a:Bool -> Bool
def next_has_letter source · line 38 · raw
@+has_letter:Bool -> @+c:Char -> Bool
def take_book_go source · line 46 · raw
@fuel:Nat -> @st:BookSt -> @rest:String -> @acc:String -> @+has_letter:Bool -> Pair(String, String)
def take_book source · line 71 · raw
@+s:String -> Pair(String, String)
def take_digits_go source · line 79 · raw
@fuel:Nat -> @st:DigSt -> @rest:String -> @acc:String -> Pair(String, String)
def take_digits source · line 104 · raw
@+s:String -> Pair(String, String)
def is_colon_or_dot source · line 107 · raw
@+c:Char -> Bool
def drop_head source · line 110 · raw
@s:String -> String
def drop_cv_sep_go source · line 117 · raw
@+s:String -> @drop:Bool -> String
def drop_cv_sep source · line 124 · raw
@+s:String -> String
def drop_dash_go source · line 131 · raw
@+s:String -> @drop:Bool -> String
def drop_dash source · line 138 · raw
@+s:String -> String
def is_dash_head source · line 145 · raw
@s:String -> Bool
def require_u32_nz source · line 181 · raw
@n:U32 -> @z:Bool -> Result<&1, &1, ParseErr, U32>
def require_u32_go source · line 188 · raw
@m:Maybe<&2, U32> -> Result<&1, &1, ParseErr, U32>
def require_u32 source · line 195 · raw
@s:String -> Result<&1, &1, ParseErr, U32>
def check_ch_le source · line 198 · raw
@+book:String -> @+ch:U32 -> @+max:U32 -> @ok:Bool -> Result<&1, &1, ParseErr, Unit>
def check_ch_go source · line 205 · raw
@+book:String -> @+ch:U32 -> @m:Maybe<&2, U32> -> Result<&1, &1, ParseErr, Unit>
def check_ch source · line 212 · raw
@+book:String -> @+ch:U32 -> Result<&1, &1, ParseErr, Unit>
def check_vs_le source · line 215 · raw
@+book:String -> @+ch:U32 -> @+v:U32 -> @+max:U32 -> @ok:Bool -> Result<&1, &1, ParseErr, Unit>
def check_vs_go source · line 222 · raw
@+book:String -> @+ch:U32 -> @+v:U32 -> @m:Maybe<&2, U32> -> Result<&1, &1, ParseErr, Unit>
def check_vs source · line 229 · raw
@+book:String -> @+ch:U32 -> @+v:U32 -> Result<&1, &1, ParseErr, Unit>
def fmt_osis_part source · line 232 · raw
@+book:String -> @+ch:U32 -> @v:Maybe<&2, U32> -> String
def fmt_same_canonical source · line 242 · raw
@+book:String -> @+ch:U32 -> @a:U32 -> @ev:Maybe<&2, U32> -> String
def fmt_canonical_same source · line 249 · raw
@+book:String -> @+ch:U32 -> @v:Maybe<&2, U32> -> @ev:Maybe<&2, U32> -> String
def fmt_canonical_cross source · line 256 · raw
@+book:String -> @+end_book:String -> @+ch:U32 -> @+v:Maybe<&2, U32> -> @+ech:U32 -> @+ev:Maybe<&2, U32> -> String
def fmt_canonical source · line 259 · raw
@+book:String -> @+end_book:String -> @+ch:U32 -> @+v:Maybe<&2, U32> -> @+ech:U32 -> @+ev:Maybe<&2, U32> -> @+kind:RangeKind -> String
def fmt_display_verse source · line 272 · raw
@+name:String -> @+ch:U32 -> @v:Maybe<&2, U32> -> String
def fmt_display_same2 source · line 282 · raw
@+name:String -> @+ch:U32 -> @a:U32 -> @ev:Maybe<&2, U32> -> String
def fmt_display_same source · line 295 · raw
@+name:String -> @+ch:U32 -> @v:Maybe<&2, U32> -> @ev:Maybe<&2, U32> -> String
def fmt_cv_part source · line 302 · raw
@+ch:U32 -> @v:Maybe<&2, U32> -> String
def fmt_display_cross_same source · line 309 · raw
@+name:String -> @+ch:U32 -> @+v:Maybe<&2, U32> -> @+ech:U32 -> @+ev:Maybe<&2, U32> -> String
def fmt_display_cross_diff source · line 315 · raw
@+nb:String -> @+neb:String -> @+ch:U32 -> @+v:Maybe<&2, U32> -> @+ech:U32 -> @+ev:Maybe<&2, U32> -> String
def fmt_display_cross_go source · line 321 · raw
@+same:Bool -> @+book:String -> @+end_book:String -> @+ch:U32 -> @+v:Maybe<&2, U32> -> @+ech:U32 -> @+ev:Maybe<&2, U32> -> String
def fmt_display_cross source · line 328 · raw
@+book:String -> @+end_book:String -> @+ch:U32 -> @+v:Maybe<&2, U32> -> @+ech:U32 -> @+ev:Maybe<&2, U32> -> String
def fmt_display_with source · line 331 · raw
@+book:String -> @+end_book:String -> @+ch:U32 -> @+v:Maybe<&2, U32> -> @+ech:U32 -> @+ev:Maybe<&2, U32> -> @+kind:RangeKind -> String
def fmt_display source · line 347 · raw
@+book:String -> @+end_book:String -> @+ch:U32 -> @+v:Maybe<&2, U32> -> @+ech:U32 -> @+ev:Maybe<&2, U32> -> @+kind:RangeKind -> String
def mk_parsed source · line 350 · raw
@+book:String -> @+end_book:String -> @+ch:U32 -> @+v:Maybe<&2, U32> -> @+ech:U32 -> @+ev:Maybe<&2, U32> -> @+kind:RangeKind -> Parsed
def mk_same source · line 357 · raw
@+book:String -> @+ch:U32 -> @+v:Maybe<&2, U32> -> @+ech:U32 -> @+ev:Maybe<&2, U32> -> @+kind:RangeKind -> Parsed
def finish_ch_ok source · line 360 · raw
@+book:String -> @+ch:U32 -> @+ech:U32 -> @+kind:RangeKind -> @rev:Bool -> Result<&1, &1, ParseErr, Parsed>
def finish_ch_after source · line 367 · raw
@+book:String -> @+ch:U32 -> @+ech:U32 -> @+kind:RangeKind -> @r:Result<&1, &1, ParseErr, Unit> -> Result<&1, &1, ParseErr, Parsed>
def finish_ch_match source · line 374 · raw
@+book:String -> @+ch:U32 -> @+ech:U32 -> @+kind:RangeKind -> @r:Result<&1, &1, ParseErr, Unit> -> Result<&1, &1, ParseErr, Parsed>
def finish_ch source · line 381 · raw
@+book:String -> @+ch:U32 -> @+ech:U32 -> @+kind:RangeKind -> Result<&1, &1, ParseErr, Parsed>
def finish_vs_end_ok source · line 384 · raw
@+book:String -> @+ch:U32 -> @+vn:U32 -> @+en:U32 -> @rev:Bool -> Result<&1, &1, ParseErr, Parsed>
def finish_vs_end source · line 391 · raw
@+book:String -> @+ch:U32 -> @+vn:U32 -> @+en:U32 -> @r:Result<&1, &1, ParseErr, Unit> -> Result<&1, &1, ParseErr, Parsed>
def finish_vs_ev source · line 398 · raw
@+book:String -> @+ch:U32 -> @+vn:U32 -> @ev:Maybe<&2, U32> -> Result<&1, &1, ParseErr, Parsed>
def finish_vs_after_vn source · line 405 · raw
@+book:String -> @+ch:U32 -> @+vn:U32 -> @ev:Maybe<&2, U32> -> @r:Result<&1, &1, ParseErr, Unit> -> Result<&1, &1, ParseErr, Parsed>
def finish_vs_match source · line 412 · raw
@+book:String -> @+ch:U32 -> @+vn:U32 -> @ev:Maybe<&2, U32> -> @r:Result<&1, &1, ParseErr, Unit> -> Result<&1, &1, ParseErr, Parsed>
def finish_vs source · line 419 · raw
@+book:String -> @+ch:U32 -> @+vn:U32 -> @ev:Maybe<&2, U32> -> Result<&1, &1, ParseErr, Parsed>
def is_cv_sep_head source · line 422 · raw
@s:String -> Bool
def is_book_num_char source · line 429 · raw
@+c:Char -> Bool
def alpha_head_s source · line 435 · raw
@s:String -> Bool
def bookish_head source · line 442 · raw
@s:String -> Bool
def verse_ord_start source · line 449 · raw
@v:Maybe<&2, U32> -> U32
def verse_ord_end source · line 456 · raw
@v:Maybe<&2, U32> -> U32
def rev_same_book source · line 463 · raw
@+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+ev:Maybe<&2, U32> -> @ch_lt:Bool -> @ch_eq:Bool -> Bool
def rev_orders source · line 474 · raw
@+so:U32 -> @+eo:U32 -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+ev:Maybe<&2, U32> -> @book_lt:Bool -> @book_eq:Bool -> Bool
def rev_orders_m source · line 485 · raw
@+so:U32 -> @eo_m:Maybe<&2, U32> -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+ev:Maybe<&2, U32> -> Result<&1, &1, ParseErr, Bool>
def rev_books_m source · line 492 · raw
@so_m:Maybe<&2, U32> -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+ev:Maybe<&2, U32> -> Result<&1, &1, ParseErr, Bool>
def is_reversed_cross source · line 499 · raw
@+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+eb:String -> @+ec:U32 -> @+ev:Maybe<&2, U32> -> Result<&1, &1, ParseErr, Bool>
def finish_cross_ok source · line 502 · raw
@+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+ev:Maybe<&2, U32> -> @rev:Bool -> Result<&1, &1, ParseErr, Parsed>
def finish_cross_after_rev source · line 509 · raw
@+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+ev:Maybe<&2, U32> -> @r:Result<&1, &1, ParseErr, Bool> -> Result<&1, &1, ParseErr, Parsed>
def finish_cross_ev source · line 516 · raw
@+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+ev:Maybe<&2, U32> -> @r:Result<&1, &1, ParseErr, Unit> -> Result<&1, &1, ParseErr, Parsed>
def finish_cross_ec_ev source · line 523 · raw
@ev:Maybe<&2, U32> -> @+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> Result<&1, &1, ParseErr, Parsed>
def finish_cross_ec source · line 530 · raw
@+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+ev:Maybe<&2, U32> -> @r:Result<&1, &1, ParseErr, Unit> -> Result<&1, &1, ParseErr, Parsed>
def finish_cross_sc source · line 537 · raw
@+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+ev:Maybe<&2, U32> -> @r:Result<&1, &1, ParseErr, Unit> -> Result<&1, &1, ParseErr, Parsed>
def finish_cross_sv_m source · line 544 · raw
@sv:Maybe<&2, U32> -> @+sb:String -> @+eb:String -> @+sc:U32 -> @+ec:U32 -> @+ev:Maybe<&2, U32> -> Result<&1, &1, ParseErr, Parsed>
def finish_cross_sv source · line 551 · raw
@+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+ev:Maybe<&2, U32> -> @r:Result<&1, &1, ParseErr, Unit> -> Result<&1, &1, ParseErr, Parsed>
def finish_cross source · line 558 · raw
@+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+ev:Maybe<&2, U32> -> Result<&1, &1, ParseErr, Parsed>
def parse_end_verse_num source · line 561 · raw
@+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @r:Result<&1, &1, ParseErr, U32> -> Result<&1, &1, ParseErr, Parsed>
def parse_end_verse_vs source · line 568 · raw
@empty_vs:Bool -> @+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+vs:String -> Result<&1, &1, ParseErr, Parsed>
def parse_end_verse_rest source · line 575 · raw
@rest_empty:Bool -> @+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+vs:String -> Result<&1, &1, ParseErr, Parsed>
def parse_end_verse_pair source · line 582 · raw
@+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @pair:Pair(String, String) -> Result<&1, &1, ParseErr, Parsed>
def parse_end_after_ch source · line 587 · raw
@+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+rest:String -> @empty:Bool -> @sep:Bool -> Result<&1, &1, ParseErr, Parsed>
def parse_end_ch_num source · line 598 · raw
@+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+rest0:String -> @r:Result<&1, &1, ParseErr, U32> -> Result<&1, &1, ParseErr, Parsed>
def parse_end_tail_ch source · line 605 · raw
@empty:Bool -> @+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ch_s:String -> @+rest0:String -> Result<&1, &1, ParseErr, Parsed>
def parse_end_tail_pair source · line 612 · raw
@+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @pair:Pair(String, String) -> Result<&1, &1, ParseErr, Parsed>
def parse_end_tail source · line 617 · raw
@+sb:String -> @+eb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+tail:String -> Result<&1, &1, ParseErr, Parsed>
def parse_cross_second_book_code source · line 620 · raw
@+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+rest:String -> @m:Maybe<&2, String> -> Result<&1, &1, ParseErr, Parsed>
def parse_cross_second_book_pair source · line 627 · raw
@+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @pair:Pair(String, String) -> Result<&1, &1, ParseErr, Parsed>
def parse_cross_second_book source · line 632 · raw
@+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+rest:String -> Result<&1, &1, ParseErr, Parsed>
def parse_cross_cv_verse source · line 635 · raw
@+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @r:Result<&1, &1, ParseErr, U32> -> Result<&1, &1, ParseErr, Parsed>
def parse_cross_cv_vs source · line 642 · raw
@empty_vs:Bool -> @+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+vs:String -> Result<&1, &1, ParseErr, Parsed>
def parse_cross_cv_rest source · line 649 · raw
@rest_empty:Bool -> @+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @+vs:String -> Result<&1, &1, ParseErr, Parsed>
def parse_cross_cv_pair source · line 656 · raw
@+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+ec:U32 -> @pair:Pair(String, String) -> Result<&1, &1, ParseErr, Parsed>
def parse_cross_cv_ech source · line 661 · raw
@+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+rest_after_sep:String -> @r:Result<&1, &1, ParseErr, U32> -> Result<&1, &1, ParseErr, Parsed>
def parse_after_verse_ev source · line 668 · raw
@+book:String -> @+ch:U32 -> @+vn:U32 -> @r:Result<&1, &1, ParseErr, U32> -> Result<&1, &1, ParseErr, Parsed>
def parse_chapter_range_num source · line 675 · raw
@+book:String -> @+ch:U32 -> @r:Result<&1, &1, ParseErr, U32> -> Result<&1, &1, ParseErr, Parsed>
def parse_range_digits_same source · line 682 · raw
@+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+digs:String -> Result<&1, &1, ParseErr, Parsed>
def parse_range_digits_allow source · line 689 · raw
@allow:Bool -> @+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+digs:String -> Result<&1, &1, ParseErr, Parsed>
def parse_range_digits_sep source · line 696 · raw
@sep:Bool -> @+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+digs:String -> @+rest2:String -> Result<&1, &1, ParseErr, Parsed>
def parse_range_digits_rest source · line 703 · raw
@rest_empty:Bool -> @+allow_same_ch_digits:Bool -> @+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+digs:String -> @+rest2:String -> Result<&1, &1, ParseErr, Parsed>
def parse_range_after_digs source · line 710 · raw
@digs_empty:Bool -> @+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+allow_same_ch_digits:Bool -> @+digs:String -> @+rest2:String -> Result<&1, &1, ParseErr, Parsed>
def parse_range_after_dash_pair source · line 717 · raw
@+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+allow_same_ch_digits:Bool -> @pair:Pair(String, String) -> Result<&1, &1, ParseErr, Parsed>
def parse_range_after_dash_go source · line 722 · raw
@bookish:Bool -> @+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+allow_same_ch_digits:Bool -> @+rest:String -> Result<&1, &1, ParseErr, Parsed>
def parse_range_after_dash source · line 729 · raw
@+sb:String -> @+sc:U32 -> @+sv:Maybe<&2, U32> -> @+allow_same_ch_digits:Bool -> @+rest:String -> Result<&1, &1, ParseErr, Parsed>
def parse_after_verse_num_go source · line 733 · raw
@+book:String -> @+ch:U32 -> @+vn:U32 -> @+rest:String -> @empty:Bool -> Result<&1, &1, ParseErr, Parsed>
def parse_after_verse_num_trim source · line 740 · raw
@+book:String -> @+ch:U32 -> @+vn:U32 -> @+r:String -> Result<&1, &1, ParseErr, Parsed>
def parse_after_verse_num source · line 743 · raw
@+book:String -> @+ch:U32 -> @+vn:U32 -> @+rest:String -> Result<&1, &1, ParseErr, Parsed>
def parse_verse_branch_num source · line 746 · raw
@+book:String -> @+ch:U32 -> @+rest2:String -> @r:Result<&1, &1, ParseErr, U32> -> Result<&1, &1, ParseErr, Parsed>
def parse_verse_branch_pair source · line 753 · raw
@+book:String -> @+ch:U32 -> @pair:Pair(String, String) -> Result<&1, &1, ParseErr, Parsed>
def parse_verse_branch source · line 758 · raw
@+book:String -> @+ch:U32 -> @+rest:String -> Result<&1, &1, ParseErr, Parsed>
def parse_chapter_range_branch source · line 762 · raw
@+book:String -> @+ch:U32 -> @+rest:String -> Result<&1, &1, ParseErr, Parsed>
def parse_after_chapter_sep_go source · line 765 · raw
@+book:String -> @+ch:U32 -> @+rest:String -> @empty:Bool -> @dash:Bool -> Result<&1, &1, ParseErr, Parsed>
def parse_after_chapter_sep_trim source · line 776 · raw
@+book:String -> @+ch:U32 -> @+r:String -> Result<&1, &1, ParseErr, Parsed>
def parse_after_chapter_sep source · line 779 · raw
@+book:String -> @+ch:U32 -> @+rest:String -> Result<&1, &1, ParseErr, Parsed>
def parse_tail_num source · line 782 · raw
@+book:String -> @+rest0:String -> @r:Result<&1, &1, ParseErr, U32> -> Result<&1, &1, ParseErr, Parsed>
def parse_tail_pair source · line 789 · raw
@+book:String -> @pair:Pair(String, String) -> Result<&1, &1, ParseErr, Parsed>
def parse_tail source · line 794 · raw
@+book:String -> @+tail:String -> Result<&1, &1, ParseErr, Parsed>
def parse_passage_book source · line 797 · raw
@+rest:String -> @m:Maybe<&2, String> -> Result<&1, &1, ParseErr, Parsed>
def parse_passage_pair source · line 804 · raw
@pair:Pair(String, String) -> Result<&1, &1, ParseErr, Parsed>
def parse_passage_go source · line 809 · raw
@+s0:String -> @empty:Bool -> Result<&1, &1, ParseErr, Parsed>
def hex_digit_lo source · line 819 · raw
@code:U32 -> @ok:Bool -> Maybe<&2, U32>
def hex_digit_up source · line 826 · raw
@code:U32 -> @ok:Bool -> Maybe<&2, U32>
def hex_digit_low source · line 833 · raw
@code:U32 -> @ok:Bool -> Maybe<&2, U32>
def hex_nibble_af source · line 840 · raw
@+code:U32 -> @dig:Maybe<&2, U32> -> Maybe<&2, U32>
def hex_nibble_az source · line 847 · raw
@+code:U32 -> @dig:Maybe<&2, U32> -> Maybe<&2, U32>
def hex_nibble_from_code source · line 857 · raw
@+code:U32 -> Maybe<&2, U32>
def hex_nibble source · line 863 · raw
@+c:Char -> Maybe<&2, U32>
def hex_byte source · line 868 · raw
@hi:U32 -> @lo:U32 -> U32
def url_decode_go source · line 881 · raw
@fuel:Nat -> @st:DecSt -> @rest:String -> @acc:String -> String
def url_decode source · line 935 · raw
@+s:String -> String
def is_query_or_hash source · line 943 · raw
@+c:Char -> Bool
def take_until_qh_go source · line 946 · raw
@fuel:Nat -> @st:CutSt -> @rest:String -> @acc:String -> String
def strip_query source · line 971 · raw
@+s:String -> String
def take_until_slash_go source · line 974 · raw
@fuel:Nat -> @st:CutSt -> @rest:String -> @acc:String -> String
def last_path_segment source · line 999 · raw
@+s:String -> String
def strip_tr_go source · line 1017 · raw
@fuel:Nat -> @ph:TrPh -> @rest:String -> @+n:Nat -> @+orig:String -> String
def strip_tr_suffix_rev source · line 1052 · raw
@+s:String -> @rev:String -> String
def strip_tr_suffix source · line 1065 · raw
@+s:String -> String
def parse_passage_trim source · line 1068 · raw
@+s0:String -> Result<&1, &1, ParseErr, Parsed>
def parse_passage source · line 1071 · raw
@+input:String -> Result<&1, &1, ParseErr, Parsed>
def looks_like_url source · line 1075 · raw
@+s:String -> Bool
def pick_url_ref_go source · line 1096 · raw
@+share:String -> @+fallback:String -> @empty:Bool -> String
def pick_url_ref source · line 1103 · raw
@+share:String -> @+fallback:String -> String
def extract_url_ref source · line 1106 · raw
@+s:String -> String
def parse_any_go source · line 1109 · raw
@+s:String -> @is_url:Bool -> Result<&1, &1, ParseErr, Parsed>
def parse_any_trim source · line 1116 · raw
@+s:String -> Result<&1, &1, ParseErr, Parsed>
def parse_any source · line 1119 · raw
@+input:String -> Result<&1, &1, ParseErr, Parsed>
def canonical_of_r source · line 1123 · raw
@r:Result<&1, &1, ParseErr, Parsed> -> String
String-only probe for linkify (avoids Result across modules)
def try_canonical source · line 1132 · raw
@+input:String -> String
def rev_parsed source · line 1138 · raw
@xs:List<&2, Parsed> -> @acc:List<&2, Parsed> -> List<&2, Parsed>
def canon_of source · line 1145 · raw
@+p:Parsed -> String
def seen_has_go source · line 1154 · raw
@fuel:Nat -> @ph:ShPh -> @+c:String -> @xs:List<&2, String> -> Bool
def seen_has source · line 1173 · raw
@+c:String -> @+xs:List<&2, String> -> Bool
def find_push_dedup source · line 1181 · raw
@dup:Bool -> @+p:Parsed -> @acc:List<&2, Parsed> -> @seen:List<&2, String> -> Pair(List<&2, Parsed>, List<&2, String>)
def find_push_done source · line 1193 · raw
@+p:Parsed -> @acc:List<&2, Parsed> -> @+seen:List<&2, String> -> Pair(List<&2, Parsed>, List<&2, String>)
def find_push_r source · line 1196 · raw
@r:Result<&1, &1, ParseErr, Parsed> -> @acc:List<&2, Parsed> -> @seen:List<&2, String> -> Pair(List<&2, Parsed>, List<&2, String>)
def find_push_r_tok_done source · line 1208 · raw
@+tok:String -> @pair:Pair(List<&2, Parsed>, List<&2, String>) -> Pair(String, Pair(List<&2, Parsed>, List<&2, String>))
On parse failure return "" consume-tok so FaGot advances one char (not the false token).
def find_push_r_tok source · line 1216 · raw
@+tok:String -> @r:Result<&1, &1, ParseErr, Parsed> -> @acc:List<&2, Parsed> -> @seen:List<&2, String> -> Pair(String, Pair(List<&2, Parsed>, List<&2, String>))
def find_try_tok_empty source · line 1228 · raw
@empty:Bool -> @+tok:String -> @acc:List<&2, Parsed> -> @seen:List<&2, String> -> Pair(String, Pair(List<&2, Parsed>, List<&2, String>))
def find_try_tok source · line 1240 · raw
@+tok:String -> @acc:List<&2, Parsed> -> @seen:List<&2, String> -> Pair(String, Pair(List<&2, Parsed>, List<&2, String>))
def str_drop_n_go source · line 1247 · raw
@fuel:Nat -> @n:Nat -> @s:String -> String
def str_drop_n source · line 1262 · raw
@+n:Nat -> @+s:String -> String
def is_alnum_c source · line 1265 · raw
@+c:Char -> Bool
def fa_url_ph_tok source · line 1283 · raw
@+utok:String -> FaPh
def fa_url_ph source · line 1286 · raw
@+rest:String -> FaPh
def fa_ref_ph_tok source · line 1289 · raw
@+rtok:String -> FaPh
def fa_ref_ph source · line 1292 · raw
@+rest:String -> FaPh
def fa_got_from_pair source · line 1295 · raw
@pair:Pair(String, Pair(List<&2, Parsed>, List<&2, String>)) -> FaPh
def find_any_go source · line 1302 · raw
@fuel:Nat -> @ph:FaPh -> @+rest:String -> @+acc:List<&2, Parsed> -> @+seen:List<&2, String> -> List<&2, Parsed>
def find_any source · line 1379 · raw
@+input:String -> List<&2, Parsed>
def err_msg source · line 1391 · raw
@e:ParseErr -> String
def show_ok source · line 1417 · raw
@+canonical:String -> @+display:String -> IO(Unit)
def show_result source · line 1424 · raw
@r:Result<&1, &1, ParseErr, Parsed> -> IO(Unit)
def join_args source · line 1438 · raw
@xs:List<&1, String> -> String
def usage source · line 1447 · raw
IO(Unit)
def show_parsed_list_rest source · line 1450 · raw
@xs:List<&2, Parsed> -> IO(Unit)
def show_parsed_list source · line 1459 · raw
@xs:List<&2, Parsed> -> IO(Unit)
def run_context_v source · line 1468 · raw
@+book:String -> @+chapter:U32 -> @verse:Maybe<&2, U32> -> IO(Unit)
def run_context_r source · line 1475 · raw
@r:Result<&1, &1, ParseErr, Parsed> -> IO(Unit)
def run_context source · line 1484 · raw
@+q:String -> IO(Unit)
def run_query source · line 1487 · raw
@+q:String -> IO(Unit)
def run_all source · line 1490 · raw
@+q:String -> IO(Unit)
def run_complete source · line 1493 · raw
@+q:String -> IO(Unit)
def run_linkify_r source · line 1496 · raw
@r:Result<&1, &1, ParseErr, Parsed> -> @+src:String -> IO(Unit)
def run_linkify source · line 1505 · raw
@+q:String -> @+src:String -> IO(Unit)
def parse_linkify_cli_go source · line 1514 · raw
@fuel:Nat -> @ph:PlfPh -> @xs:List<&1, String> -> IO(Unit)
def parse_linkify_cli source · line 1553 · raw
@xs:List<&1, String> -> IO(Unit)
def run_flag5 source · line 1556 · raw
@+h:String -> @t:List<&1, String> -> @is_all:Bool -> @is_comp:Bool -> @is_ctx:Bool -> @is_link:Bool -> IO(Unit)
def run_args source · line 1575 · raw
@xs:List<&1, String> -> IO(Unit)
def main source · line 1589 · raw
IO(Unit)