def rfc3339.parse

bend-kit-time@0.3.0.0 · time.bend:552

import bend-kit-time@0.3.0.0/time.bend as Time
import Base

552# An RFC 3339 date-time (§5.6), such as 1985-04-12T23:20:50.52Z or 1996-12-19T16:39:57-08:00.
553# T and Z may be lowercase. A leap second (:60) is refused, as Instant has none.
554def rfc3339.parse(s: String) -> Maybe<&2, Instant>:
555  do Maybe<&2, Instant>:
556    a : P <- num(4n, P{Nil{}, s})
557    b : P <- lit(45, a)
558    c : P <- num(2n, b)
559    d : P <- lit(45, c)
560    e : P <- num(2n, d)
561    f : P <- lit2(84, 116, e)
562    g : P <- num(2n, f)
563    h : P <- lit(58, g)
564    i : P <- num(2n, h)
565    j : P <- lit(58, i)
566    k : P <- num(2n, j)
567    l : P <- secfrac(k)
568    m : P <- zone(l)
569    rfc3339.fin(m)

Uses (12)

Used by (0)

No other definition uses this definition.