class Duration : Comparable<Duration>
A duration of time at nanosecond precision.
For many applications, working with specific units like IntHours or LongSeconds is more efficient and plenty
adequate. However, when working with larger durations at sub-second precision, overflow is a very real possibility.
Duration is capable of representing fixed, nanosecond-precision durations that span the entire supported time
scale, making it more suitable for these use cases.
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
absoluteValue |
Get the absolute value of this duration. val absoluteValue: Duration |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
inDays |
Convert this duration into the number of 24-hour days represented by it. val inDays: LongDays |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
inHours |
Convert this duration into the number of whole hours represented by it. val inHours: LongHours |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
inMicroseconds |
Convert this duration into the number of whole microseconds represented by it. val inMicroseconds: LongMicroseconds |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
inMilliseconds |
Convert this duration into the number of whole milliseconds represented by it. val inMilliseconds: LongMilliseconds |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
inMinutes |
Convert this duration into the number of whole minutes represented by it. val inMinutes: LongMinutes |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
inNanoseconds |
Convert this duration into LongNanoseconds. val inNanoseconds: LongNanoseconds |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
inSeconds |
Return the number of whole seconds in this duration. val inSeconds: LongSeconds |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
nanosecondAdjustment |
val nanosecondAdjustment: IntNanoseconds |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
seconds |
val seconds: LongSeconds |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
compareTo |
fun compareTo(other: Duration): Int |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
div |
Divide by a scalar value. operator fun div(scalar: Int): Duration |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
equals |
fun equals(other: Any?): Boolean |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
hashCode |
fun hashCode(): Int |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
isNegative |
Is this duration negative? fun isNegative(): Boolean |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
isPositive |
Is this duration positive? fun isPositive(): Boolean |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
isZero |
Is this duration zero? fun isZero(): Boolean |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
minus |
operator fun minus(other: Duration): Durationoperator fun minus(days: IntDays): Durationoperator fun minus(days: LongDays): Durationoperator fun minus(hours: IntHours): Durationoperator fun minus(hours: LongHours): Durationoperator fun minus(minutes: IntMinutes): Durationoperator fun minus(minutes: LongMinutes): Durationoperator fun minus(seconds: IntSeconds): Durationoperator fun minus(seconds: LongSeconds): Durationoperator fun minus(milliseconds: IntMilliseconds): Durationoperator fun minus(milliseconds: LongMilliseconds): Durationoperator fun minus(microseconds: IntMicroseconds): Durationoperator fun minus(microseconds: LongMicroseconds): Durationoperator fun minus(nanoseconds: IntNanoseconds): Durationoperator fun minus(nanoseconds: LongNanoseconds): Duration |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
plus |
operator fun plus(other: Duration): Durationoperator fun plus(days: IntDays): Durationoperator fun plus(days: LongDays): Durationoperator fun plus(hours: IntHours): Durationoperator fun plus(hours: LongHours): Durationoperator fun plus(minutes: IntMinutes): Durationoperator fun plus(minutes: LongMinutes): Durationoperator fun plus(seconds: IntSeconds): Durationoperator fun plus(seconds: LongSeconds): Durationoperator fun plus(milliseconds: IntMilliseconds): Durationoperator fun plus(milliseconds: LongMilliseconds): Durationoperator fun plus(microseconds: IntMicroseconds): Durationoperator fun plus(microseconds: LongMicroseconds): Durationoperator fun plus(nanoseconds: IntNanoseconds): Durationoperator fun plus(nanoseconds: LongNanoseconds): Duration |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
times |
Multiply by a scalar value. operator fun times(scalar: Int): Duration |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
toComponents |
Break this duration down into individual unit components, assuming a 24-hour day length. fun <T> toComponents(action: (days: LongDays, hours: IntHours, minutes: IntMinutes, seconds: IntSeconds, nanoseconds: IntNanoseconds) -> T): T
Break this duration down into individual unit components. fun <T> toComponents(action: (hours: LongHours, minutes: IntMinutes, seconds: IntSeconds, nanoseconds: IntNanoseconds) -> T): Tfun <T> toComponents(action: (minutes: LongMinutes, seconds: IntSeconds, nanoseconds: IntNanoseconds) -> T): Tfun <T> toComponents(action: (seconds: LongSeconds, nanoseconds: IntNanoseconds) -> T): T |
toKotlinDuration |
(iosArm64, iosX64, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86) fun toKotlinDuration(): <ERROR CLASS>(jvm) fun toKotlinDuration(): Duration |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
toString |
fun toString(): String |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
truncatedTo |
Return this duration, rounded down to match the precision of a given unit. fun truncatedTo(unit: TimeUnit): Duration |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
truncatedToDays |
Return this duration truncated to the number of 24-hour days. fun |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
truncatedToHours |
Return this duration truncated to the number of whole hours. fun |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
truncatedToMicroseconds |
Return this duration truncated to the number of whole microseconds. fun |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
truncatedToMilliseconds |
Return this duration truncated to the number of whole milliseconds. fun |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
truncatedToMinutes |
Return this duration truncated to the number of whole minutes. fun |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
truncatedToSeconds |
Return this duration truncated to the number of whole seconds. fun |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
unaryMinus |
operator fun unaryMinus(): Duration |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
MAX |
val MAX: Duration |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
MIN |
val MIN: Duration |
(iosArm64, iosX64, jvm, macosX64, tvosArm64, tvosX64, watchosArm64, watchosX86)
ZERO |
val ZERO: Duration |
(jvm)
toJavaDuration |
Convert to an equivalent Java fun Duration.toJavaDuration(): Duration |