Hyperlinkv0.8.0-beta.28

Duration

Duration.absconsteffect/Duration.ts:533
(self: Duration): Duration

Returns the absolute value of the duration.

Example (Taking absolute duration values)

import { Duration } from "effect"

Duration.toMillis(Duration.abs(Duration.seconds(-5))) // 5000
Duration.abs(Duration.negativeInfinity) === Duration.infinity // true
math
Source effect/Duration.ts:53311 lines
export const abs = (self: Duration): Duration => {
  switch (self.value._tag) {
    case "Infinity":
    case "NegativeInfinity":
      return infinity
    case "Millis":
      return self.value.millis < 0 ? make(-self.value.millis) : self
    case "Nanos":
      return self.value.nanos < bigint0 ? make(-self.value.nanos) : self
  }
}
Referenced by 1 symbols