core / io.islandtime.measures

Package io.islandtime.measures

Classes related to the measurement of time, including Duration, Period, and more specific units, such as IntHours or LongYears.

Types

(iosArm64, iosX64, jvm, macosX64)

Duration

A duration of time at nanosecond precision.

class Duration : Comparable<Duration>
(iosArm64, iosX64, jvm, macosX64)

IntCenturies

A number of centuries.

class IntCenturies : Comparable<IntCenturies>
(iosArm64, iosX64, jvm, macosX64)

IntDays

A number of days.

class IntDays : Comparable<IntDays>
(iosArm64, iosX64, jvm, macosX64)

IntDecades

A number of decades.

class IntDecades : Comparable<IntDecades>
(iosArm64, iosX64, jvm, macosX64)

IntHours

A number of hours.

class IntHours : Comparable<IntHours>
(iosArm64, iosX64, jvm, macosX64)

IntMicroseconds

A number of microseconds.

class IntMicroseconds : Comparable<IntMicroseconds>
(iosArm64, iosX64, jvm, macosX64)

IntMilliseconds

A number of milliseconds.

class IntMilliseconds : Comparable<IntMilliseconds>
(iosArm64, iosX64, jvm, macosX64)

IntMinutes

A number of minutes.

class IntMinutes : Comparable<IntMinutes>
(iosArm64, iosX64, jvm, macosX64)

IntMonths

A number of months.

class IntMonths : Comparable<IntMonths>
(iosArm64, iosX64, jvm, macosX64)

IntNanoseconds

A number of nanoseconds.

class IntNanoseconds : Comparable<IntNanoseconds>
(iosArm64, iosX64, jvm, macosX64)

IntSeconds

A number of seconds.

class IntSeconds : Comparable<IntSeconds>
(iosArm64, iosX64, jvm, macosX64)

IntWeeks

A number of weeks.

class IntWeeks : Comparable<IntWeeks>
(iosArm64, iosX64, jvm, macosX64)

IntYears

A number of years.

class IntYears : Comparable<IntYears>
(iosArm64, iosX64, jvm, macosX64)

LongCenturies

A number of centuries.

class LongCenturies : Comparable<LongCenturies>
(iosArm64, iosX64, jvm, macosX64)

LongDays

A number of days.

class LongDays : Comparable<LongDays>
(iosArm64, iosX64, jvm, macosX64)

LongDecades

A number of decades.

class LongDecades : Comparable<LongDecades>
(iosArm64, iosX64, jvm, macosX64)

LongHours

A number of hours.

class LongHours : Comparable<LongHours>
(iosArm64, iosX64, jvm, macosX64)

LongMicroseconds

A number of microseconds.

class LongMicroseconds : Comparable<LongMicroseconds>
(iosArm64, iosX64, jvm, macosX64)

LongMilliseconds

A number of milliseconds.

class LongMilliseconds : Comparable<LongMilliseconds>
(iosArm64, iosX64, jvm, macosX64)

LongMinutes

A number of minutes.

class LongMinutes : Comparable<LongMinutes>
(iosArm64, iosX64, jvm, macosX64)

LongMonths

A number of months.

class LongMonths : Comparable<LongMonths>
(iosArm64, iosX64, jvm, macosX64)

LongNanoseconds

A number of nanoseconds.

class LongNanoseconds : Comparable<LongNanoseconds>
(iosArm64, iosX64, jvm, macosX64)

LongSeconds

A number of seconds.

class LongSeconds : Comparable<LongSeconds>
(iosArm64, iosX64, jvm, macosX64)

LongWeeks

A number of weeks.

class LongWeeks : Comparable<LongWeeks>
(iosArm64, iosX64, jvm, macosX64)

LongYears

A number of years.

class LongYears : Comparable<LongYears>
(iosArm64, iosX64, jvm, macosX64)

Period

A date-based period of time, such as "2 years, 5 months, 16 days". Unlike Duration, which uses exact increments, a Period works with conceptual days, months, and years, ignoring daylight savings and length differences.

class Period

Extensions for External Classes

(iosArm64, iosX64, jvm, macosX64)

kotlin.Int

(iosArm64, iosX64, jvm, macosX64)

kotlin.Long

(iosArm64, iosX64, jvm, macosX64)

kotlin.String

Functions

(iosArm64, iosX64, jvm, macosX64)

abs

Return the absolute value of a duration

fun abs(duration: Duration): Duration
(iosArm64, iosX64, jvm, macosX64)

asDuration

fun LongDays.asDuration(): Duration
fun LongHours.asDuration(): Duration
fun LongMinutes.asDuration(): Duration
fun LongSeconds.asDuration(): Duration
fun LongMilliseconds.asDuration(): Duration
fun LongMicroseconds.asDuration(): Duration
fun LongNanoseconds.asDuration(): Duration
fun IntDays.asDuration(): Duration
fun IntHours.asDuration(): Duration
fun IntMinutes.asDuration(): Duration
fun IntSeconds.asDuration(): Duration
fun IntMilliseconds.asDuration(): Duration
fun IntMicroseconds.asDuration(): Duration
fun IntNanoseconds.asDuration(): Duration
(iosArm64, iosX64, jvm, macosX64)

asPeriod

Convert IntYears into a Period with the same number of years

fun IntYears.asPeriod(): Period

Convert IntMonths into a Period with the same number of months

fun IntMonths.asPeriod(): Period

Convert IntWeeks into a Period with the same number of weeks

fun IntWeeks.asPeriod(): Period

Convert IntDays into a Period with the same number of days

fun IntDays.asPeriod(): Period

Convert LongYears into a Period with the same number of years

fun LongYears.asPeriod(): Period

Convert LongMonths into a Period with the same number of months

fun LongMonths.asPeriod(): Period

Convert LongWeeks into a Period with the same number of weeks

fun LongWeeks.asPeriod(): Period

Convert LongDays into a Period with the same number of days

fun LongDays.asPeriod(): Period
(iosArm64, iosX64, jvm, macosX64)

durationOf

Create a Duration.

fun durationOf(seconds: IntSeconds, nanoseconds: IntNanoseconds): Duration
fun durationOf(seconds: LongSeconds, nanoseconds: IntNanoseconds): Duration
fun durationOf(seconds: IntSeconds, nanoseconds: LongNanoseconds): Duration
fun durationOf(seconds: LongSeconds, nanoseconds: LongNanoseconds): Duration

Create a Duration of 24-hour days.

fun durationOf(days: IntDays): Duration
fun durationOf(days: LongDays): Duration

Create a Duration of hours.

fun durationOf(hours: IntHours): Duration
fun durationOf(hours: LongHours): Duration

Create a Duration of minutes.

fun durationOf(minutes: IntMinutes): Duration
fun durationOf(minutes: LongMinutes): Duration

Create a Duration of seconds.

fun durationOf(seconds: IntSeconds): Duration
fun durationOf(seconds: LongSeconds): Duration

Create a Duration of milliseconds.

fun durationOf(milliseconds: IntMilliseconds): Duration
fun durationOf(milliseconds: LongMilliseconds): Duration

Create a Duration of microseconds.

fun durationOf(microseconds: IntMicroseconds): Duration
fun durationOf(microseconds: LongMicroseconds): Duration

Create a Duration of nanoseconds.

fun durationOf(nanoseconds: IntNanoseconds): Duration
fun durationOf(nanoseconds: LongNanoseconds): Duration
(iosArm64, iosX64, jvm, macosX64)

minus

operator fun IntYears.minus(period: Period): Period
operator fun IntMonths.minus(period: Period): Period
operator fun IntWeeks.minus(period: Period): Period
operator fun IntDays.minus(period: Period): Period
operator fun LongYears.minus(period: Period): Period
operator fun LongMonths.minus(period: Period): Period
operator fun LongWeeks.minus(period: Period): Period
operator fun LongDays.minus(period: Period): Period
(iosArm64, iosX64, jvm, macosX64)

periodOf

Create a Period.

fun periodOf(years: IntYears, months: IntMonths = 0.months, days: IntDays = 0.days): Period
fun periodOf(years: IntYears, days: IntDays): Period
fun periodOf(months: IntMonths, days: IntDays = 0.days): Period
fun periodOf(weeks: IntWeeks): Period
fun periodOf(days: IntDays): Period
(iosArm64, iosX64, jvm, macosX64)

plus

operator fun IntYears.plus(period: Period): Period
operator fun IntMonths.plus(period: Period): Period
operator fun IntWeeks.plus(period: Period): Period
operator fun IntDays.plus(period: Period): Period
operator fun LongYears.plus(period: Period): Period
operator fun LongMonths.plus(period: Period): Period
operator fun LongWeeks.plus(period: Period): Period
operator fun LongDays.plus(period: Period): Period