def Duration.add.sod2

bend-time-lib@0.4.0.1 · duration.bend:163

import bend-time-lib@0.4.0.1/duration.bend as Duration
import Base

163def Duration.add.sod2(
164  +d1: U32, +d2: U32, +sod: U32, +nanos: U32, ge: Bool
165) -> Result<&2, &2, Duration.Error, Duration>:
166  match ge:
167    case False{}:
168      Duration.add.days(
169        d1, d2, sod, nanos, 0, U32.is_le(d2, U32.sub(U32.not(0), d1))
170      )
171    case True{}:
172      Duration.add.days(
173        d1, d2, U32.sub(sod, 86400), nanos, 1,
174        U32.is_le(U32.add(d2, 1), U32.sub(U32.not(0), d1))
175      )

Uses (10)

Used by (1)