def Period.add_to.go
import bend-time-lib@0.4.0.1/period.bend as Periodimport Base
import bend-time-lib@0.4.0.1/date.bend as D
94def Period.add_to.go(
95 date: D.Date, p: Period
96) -> Result<&2, &2, D.Date.Error, D.Date>:
97 match date p:
98 case D.Date{+dy, +dm, +dd} Period{+py, +pm, +pd}:
99 Period.add_to.ya(
100 dy, py, dm, pm, dd, pd, U32.is_le(py, U32.sub(U32.not(0), dy))
101 )