def Iso8601.dur.go

bend-time-lib@0.4.0.1 · iso8601.bend:527

import bend-time-lib@0.4.0.1/iso8601.bend as Iso8601
import Base
import bend-time-lib@0.4.0.1/duration.bend as Dur

527def Iso8601.dur.go(
528  s: String, +off: Nat, c: Iso8601.DurC
529) -> Result<&2, &2, Iso8601.Error, Dur.Duration>:
530  match s c:
531    case _ DurFail{e}:
532      Fail{e}
533    case SNil{} DurCont{st, mode}:
534      Iso8601.dur.eof(st, mode)
535    case SCon{+h, t} DurCont{st, mode}:
536      Iso8601.dur.go(
537        t, 1n+off,
538        Iso8601.dur.act(
539          off, st, mode, h, Char.is_eq(h, 'T'), Char.is_digit(h)
540        )
541      )

Uses (11)

Used by (1)