# FiniteDuration

#### final class FiniteDuration extends Duration

This class represents a finite duration. Its addition and subtraction operators are overloaded to retain this guarantee statically. The range of this class is limited to +-(2^63-1)ns, which is roughly 292 years.

Source
Duration.scala
Linear Supertypes
Duration, math.Ordered[Duration], Comparable[Duration], Serializable, java.io.Serializable, AnyRef, Any
Ordering
1. Alphabetic
2. By inheritance
Inherited
1. FiniteDuration
2. Duration
3. Ordered
4. Comparable
5. Serializable
6. Serializable
7. AnyRef
8. Any
Implicitly
1. by orderingToOrdered
2. by durationToPair
4. by StringFormat
5. by Ensuring
6. by ArrowAssoc
1. Hide All
2. Show all
Visibility
1. Public
2. All

### Value Members

1. #### final def !=(arg0: AnyRef): Boolean

Definition Classes
AnyRef
2. #### final def !=(arg0: Any): Boolean

Definition Classes
Any
3. #### final def ##(): Int

Definition Classes
AnyRef → Any
4. #### def *(factor: Long): FiniteDuration

Return the product of this duration and the given integer factor.

Return the product of this duration and the given integer factor.

Exceptions thrown
IllegalArgumentException

if the result would overflow the range of FiniteDuration

5. #### def *(factor: Double): Duration

Return this duration multiplied by the scalar factor.

Return this duration multiplied by the scalar factor. When involving non-finite factors the semantics match those of Double.

Definition Classes
FiniteDurationDuration
Exceptions thrown
IllegalArgumentException

in case of a finite overflow: the range of a finite duration is +-(2^63-1)ns, and no conversion to infinite durations takes place.

7. #### def +(other: Duration): Duration

Return the sum of that duration and this.

Return the sum of that duration and this. When involving non-finite summands the semantics match those of Double.

Definition Classes
FiniteDurationDuration
Exceptions thrown
IllegalArgumentException

in case of a finite overflow: the range of a finite duration is +-(2^63-1)ns, and no conversion to infinite durations takes place.

9. #### def -(other: Duration): Duration

Return the difference of that duration and this.

Return the difference of that duration and this. When involving non-finite summands the semantics match those of Double.

Definition Classes
FiniteDurationDuration
Exceptions thrown
IllegalArgumentException

in case of a finite overflow: the range of a finite duration is +-(2^63-1)ns, and no conversion to infinite durations takes place.

10. #### def ->[B](y: B): (FiniteDuration, B)

Implicit information
This member is added by an implicit conversion from FiniteDuration to ArrowAssoc[FiniteDuration] performed by method ArrowAssoc in scala.Predef.
Definition Classes
ArrowAssoc
Annotations
()
11. #### def /(divisor: Long): FiniteDuration

Return the quotient of this duration and the given integer factor.

Return the quotient of this duration and the given integer factor.

Exceptions thrown
ArithmeticException

if the factor is 0

12. #### def /(divisor: Duration): Double

Return the quotient of this and that duration as floating-point number.

Return the quotient of this and that duration as floating-point number. The semantics are determined by Double as if calculating the quotient of the nanosecond lengths of both factors.

Definition Classes
FiniteDurationDuration
13. #### def /(divisor: Double): Duration

Return this duration divided by the scalar factor.

Return this duration divided by the scalar factor. When involving non-finite factors the semantics match those of Double.

Definition Classes
FiniteDurationDuration
Exceptions thrown
IllegalArgumentException

in case of a finite overflow: the range of a finite duration is +-(2^63-1)ns, and no conversion to infinite durations takes place.

14. #### def <(that: Duration): Boolean

Returns true if `this` is less than `that`

Returns true if `this` is less than `that`

Definition Classes
Ordered
15. #### def <=(that: Duration): Boolean

Returns true if `this` is less than or equal to `that`.

Returns true if `this` is less than or equal to `that`.

Definition Classes
Ordered
16. #### final def ==(arg0: AnyRef): Boolean

Definition Classes
AnyRef
17. #### final def ==(arg0: Any): Boolean

Definition Classes
Any
18. #### def >(that: Duration): Boolean

Returns true if `this` is greater than `that`.

Returns true if `this` is greater than `that`.

Definition Classes
Ordered
19. #### def >=(that: Duration): Boolean

Returns true if `this` is greater than or equal to `that`.

Returns true if `this` is greater than or equal to `that`.

Definition Classes
Ordered
20. #### final def asInstanceOf[T0]: T0

Definition Classes
Any
21. #### def clone(): AnyRef

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
( ... )
22. #### def compare(other: Duration): Int

Result of comparing `this` with operand `that`.

Result of comparing `this` with operand `that`.

Implement this method to determine how instances of A will be sorted.

Returns `x` where:

• `x < 0` when `this < that`
• `x == 0` when `this == that`
• `x > 0` when `this > that`
Definition Classes
FiniteDurationOrdered
23. #### def compareTo(that: Duration): Int

Result of comparing `this` with operand `that`.

Result of comparing `this` with operand `that`.

Definition Classes
Ordered → Comparable
24. #### def div(divisor: Long): FiniteDuration

Return the quotient of this duration and the given integer factor.

Return the quotient of this duration and the given integer factor.

Exceptions thrown
ArithmeticException

if the factor is 0

25. #### def div(other: Duration): Double

Return the quotient of this and that duration as floating-point number.

Return the quotient of this and that duration as floating-point number. The semantics are determined by Double as if calculating the quotient of the nanosecond lengths of both factors.

Definition Classes
Duration
26. #### def div(divisor: Double): Duration

Return this duration divided by the scalar factor.

Return this duration divided by the scalar factor. When involving non-finite factors the semantics match those of Double.

Definition Classes
Duration
Exceptions thrown
IllegalArgumentException

in case of a finite overflow: the range of a finite duration is +-(2^63-1)ns, and no conversion to infinite durations takes place.

27. #### def ensuring(cond: (FiniteDuration) ⇒ Boolean, msg: ⇒ Any): FiniteDuration

Implicit information
This member is added by an implicit conversion from FiniteDuration to Ensuring[FiniteDuration] performed by method Ensuring in scala.Predef.
Definition Classes
Ensuring
28. #### def ensuring(cond: (FiniteDuration) ⇒ Boolean): FiniteDuration

Implicit information
This member is added by an implicit conversion from FiniteDuration to Ensuring[FiniteDuration] performed by method Ensuring in scala.Predef.
Definition Classes
Ensuring
29. #### def ensuring(cond: Boolean, msg: ⇒ Any): FiniteDuration

Implicit information
This member is added by an implicit conversion from FiniteDuration to Ensuring[FiniteDuration] performed by method Ensuring in scala.Predef.
Definition Classes
Ensuring
30. #### def ensuring(cond: Boolean): FiniteDuration

Implicit information
This member is added by an implicit conversion from FiniteDuration to Ensuring[FiniteDuration] performed by method Ensuring in scala.Predef.
Definition Classes
Ensuring
31. #### final def eq(arg0: AnyRef): Boolean

Definition Classes
AnyRef
32. #### def equals(other: Any): Boolean

Definition Classes
FiniteDuration → AnyRef → Any
33. #### def finalize(): Unit

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
( classOf[java.lang.Throwable] )
34. #### def formatted(fmtstr: String): String

Returns string formatted according to given `format` string.

Returns string formatted according to given `format` string. Format strings are as for `String.format` (@see java.lang.String.format).

Implicit information
This member is added by an implicit conversion from FiniteDuration to StringFormat[FiniteDuration] performed by method StringFormat in scala.Predef.
Definition Classes
StringFormat
Annotations
()

Construct a Deadline from this duration by adding it to the current instant `Deadline.now`.

36. #### final def getClass(): Class[_]

Definition Classes
AnyRef → Any
37. #### def gt(other: Duration): Boolean

Definition Classes
Duration
38. #### def gteq(other: Duration): Boolean

Definition Classes
Duration
39. #### def hashCode(): Int

Definition Classes
FiniteDuration → AnyRef → Any
40. #### final def isFinite(): Boolean

This method returns whether this duration is finite, which is not the same as `!isInfinite` for Double because this method also returns `false` for Duration.Undefined.

This method returns whether this duration is finite, which is not the same as `!isInfinite` for Double because this method also returns `false` for Duration.Undefined.

Definition Classes
FiniteDurationDuration
41. #### final def isInstanceOf[T0]: Boolean

Definition Classes
Any
42. #### val length: Long

Obtain the length of this Duration measured in the unit obtained by the `unit` method.

Obtain the length of this Duration measured in the unit obtained by the `unit` method.

Definition Classes
FiniteDurationDuration
Exceptions thrown
IllegalArgumentException

when invoked on a non-finite duration

43. #### def lt(other: Duration): Boolean

Definition Classes
Duration
44. #### def lteq(other: Duration): Boolean

Definition Classes
Duration

46. #### def max(other: Duration): Duration

Return the larger of this and that duration as determined by the natural ordering.

Return the larger of this and that duration as determined by the natural ordering.

Definition Classes
Duration

48. #### def min(other: Duration): Duration

Return the smaller of this and that duration as determined by the natural ordering.

Return the smaller of this and that duration as determined by the natural ordering.

Definition Classes
Duration

50. #### def minus(other: Duration): Duration

Return the difference of that duration and this.

Return the difference of that duration and this. When involving non-finite summands the semantics match those of Double.

Definition Classes
Duration
Exceptions thrown
IllegalArgumentException

in case of a finite overflow: the range of a finite duration is +-(2^63-1)ns, and no conversion to infinite durations takes place.

51. #### def mul(factor: Long): FiniteDuration

Return the product of this duration and the given integer factor.

Return the product of this duration and the given integer factor.

Exceptions thrown
IllegalArgumentException

if the result would overflow the range of FiniteDuration

52. #### def mul(factor: Double): Duration

Return this duration multiplied by the scalar factor.

Return this duration multiplied by the scalar factor. When involving non-finite factors the semantics match those of Double.

Definition Classes
Duration
Exceptions thrown
IllegalArgumentException

in case of a finite overflow: the range of a finite duration is +-(2^63-1)ns, and no conversion to infinite durations takes place.

53. #### final def ne(arg0: AnyRef): Boolean

Definition Classes
AnyRef
54. #### def neg(): Duration

Negate this duration.

Negate this duration. The only two values which are mapped to themselves are Duration.Zero and Duration.Undefined.

Definition Classes
Duration
55. #### final def notify(): Unit

Definition Classes
AnyRef
56. #### final def notifyAll(): Unit

Definition Classes
AnyRef

58. #### def plus(other: Duration): Duration

Return the sum of that duration and this.

Return the sum of that duration and this. When involving non-finite summands the semantics match those of Double.

Definition Classes
Duration
Exceptions thrown
IllegalArgumentException

in case of a finite overflow: the range of a finite duration is +-(2^63-1)ns, and no conversion to infinite durations takes place.

59. #### def productArity: Int

The arity of this product.

The arity of this product.

returns

2

Implicit information
This member is added by an implicit conversion from FiniteDuration to (Long, TimeUnit) performed by method durationToPair in scala.concurrent.duration.
Definition Classes
Product2Product
60. #### def productElement(n: Int): Any

Returns the n-th projection of this product if 0 < n <= productArity, otherwise throws an `IndexOutOfBoundsException`.

Returns the n-th projection of this product if 0 < n <= productArity, otherwise throws an `IndexOutOfBoundsException`.

n

number of the projection to be returned

returns

same as `._(n+1)`, for example `productElement(0)` is the same as `._1`.

Implicit information
This member is added by an implicit conversion from FiniteDuration to (Long, TimeUnit) performed by method durationToPair in scala.concurrent.duration.
Definition Classes
Product2Product
Annotations
( clazz = classOf[IndexOutOfBoundsException] )
Exceptions thrown
IndexOutOfBoundsException

61. #### def swap: (TimeUnit, Long)

Swaps the elements of this `Tuple`.

Swaps the elements of this `Tuple`.

returns

a new Tuple where the first element is the second element of this Tuple and the second element is the first element of this Tuple.

Implicit information
This member is added by an implicit conversion from FiniteDuration to (Long, TimeUnit) performed by method durationToPair in scala.concurrent.duration.
Definition Classes
Tuple2
62. #### final def synchronized[T0](arg0: ⇒ T0): T0

Definition Classes
AnyRef
63. #### def toDays: Long

Return the length of this duration measured in whole days, rounding towards zero.

Return the length of this duration measured in whole days, rounding towards zero.

Definition Classes
FiniteDurationDuration
Exceptions thrown
IllegalArgumentException

when invoked on a non-finite duration

64. #### def toHours: Long

Return the length of this duration measured in whole hours, rounding towards zero.

Return the length of this duration measured in whole hours, rounding towards zero.

Definition Classes
FiniteDurationDuration
Exceptions thrown
IllegalArgumentException

when invoked on a non-finite duration

65. #### def toMicros: Long

Return the length of this duration measured in whole microseconds, rounding towards zero.

Return the length of this duration measured in whole microseconds, rounding towards zero.

Definition Classes
FiniteDurationDuration
Exceptions thrown
IllegalArgumentException

when invoked on a non-finite duration

66. #### def toMillis: Long

Return the length of this duration measured in whole milliseconds, rounding towards zero.

Return the length of this duration measured in whole milliseconds, rounding towards zero.

Definition Classes
FiniteDurationDuration
Exceptions thrown
IllegalArgumentException

when invoked on a non-finite duration

67. #### def toMinutes: Long

Return the length of this duration measured in whole minutes, rounding towards zero.

Return the length of this duration measured in whole minutes, rounding towards zero.

Definition Classes
FiniteDurationDuration
Exceptions thrown
IllegalArgumentException

when invoked on a non-finite duration

68. #### def toNanos: Long

Return the length of this duration measured in whole nanoseconds, rounding towards zero.

Return the length of this duration measured in whole nanoseconds, rounding towards zero.

Definition Classes
FiniteDurationDuration
Exceptions thrown
IllegalArgumentException

when invoked on a non-finite duration

69. #### def toSeconds: Long

Return the length of this duration measured in whole seconds, rounding towards zero.

Return the length of this duration measured in whole seconds, rounding towards zero.

Definition Classes
FiniteDurationDuration
Exceptions thrown
IllegalArgumentException

when invoked on a non-finite duration

70. #### def toString(): String

Definition Classes
FiniteDuration → AnyRef → Any
71. #### def toUnit(u: TimeUnit): Double

Return the number of nanoseconds as floating point number, scaled down to the given unit.

Return the number of nanoseconds as floating point number, scaled down to the given unit. The result may not precisely represent this duration due to the Double datatype's inherent limitations (mantissa size effectively 53 bits). Non-finite durations are represented as

Definition Classes
FiniteDurationDuration
72. #### def unary_-: FiniteDuration

Negate this duration.

Negate this duration. The only two values which are mapped to themselves are Duration.Zero and Duration.Undefined.

Definition Classes
FiniteDurationDuration
73. #### val unit: TimeUnit

Obtain the time unit in which the length of this duration is measured.

Obtain the time unit in which the length of this duration is measured.

Definition Classes
FiniteDurationDuration
Exceptions thrown
IllegalArgumentException

when invoked on a non-finite duration

74. #### final def wait(): Unit

Definition Classes
AnyRef
Annotations
( ... )
75. #### final def wait(arg0: Long, arg1: Int): Unit

Definition Classes
AnyRef
Annotations
( ... )
76. #### final def wait(arg0: Long): Unit

Definition Classes
AnyRef
Annotations
( ... )
77. #### def →[B](y: B): (FiniteDuration, B)

Implicit information
This member is added by an implicit conversion from FiniteDuration to ArrowAssoc[FiniteDuration] performed by method ArrowAssoc in scala.Predef.
Definition Classes
ArrowAssoc

1. #### def +(other: String): String

Implicit information
This member is added by an implicit conversion from FiniteDuration to StringAdd[FiniteDuration] performed by method StringAdd in scala.Predef.
This implicitly inherited member is shadowed by one or more members in this class.
To access this member you can use a type ascription:
`(finiteDuration: StringAdd[FiniteDuration]).+(other)`
Definition Classes
2. #### def <(that: FiniteDuration): Boolean

Returns true if `this` is less than `that`

Returns true if `this` is less than `that`

Implicit information
This member is added by an implicit conversion from FiniteDuration to math.Ordered[FiniteDuration] performed by method orderingToOrdered in scala.math.Ordered.
This implicitly inherited member is shadowed by one or more members in this class.
To access this member you can use a type ascription:
`(finiteDuration: math.Ordered[FiniteDuration]).<(that)`
Definition Classes
Ordered
3. #### def <=(that: FiniteDuration): Boolean

Returns true if `this` is less than or equal to `that`.

Returns true if `this` is less than or equal to `that`.

Implicit information
This member is added by an implicit conversion from FiniteDuration to math.Ordered[FiniteDuration] performed by method orderingToOrdered in scala.math.Ordered.
This implicitly inherited member is shadowed by one or more members in this class.
To access this member you can use a type ascription:
`(finiteDuration: math.Ordered[FiniteDuration]).<=(that)`
Definition Classes
Ordered
4. #### def >(that: FiniteDuration): Boolean

Returns true if `this` is greater than `that`.

Returns true if `this` is greater than `that`.

Implicit information
This member is added by an implicit conversion from FiniteDuration to math.Ordered[FiniteDuration] performed by method orderingToOrdered in scala.math.Ordered.
This implicitly inherited member is shadowed by one or more members in this class.
To access this member you can use a type ascription:
`(finiteDuration: math.Ordered[FiniteDuration]).>(that)`
Definition Classes
Ordered
5. #### def >=(that: FiniteDuration): Boolean

Returns true if `this` is greater than or equal to `that`.

Returns true if `this` is greater than or equal to `that`.

Implicit information
This member is added by an implicit conversion from FiniteDuration to math.Ordered[FiniteDuration] performed by method orderingToOrdered in scala.math.Ordered.
This implicitly inherited member is shadowed by one or more members in this class.
To access this member you can use a type ascription:
`(finiteDuration: math.Ordered[FiniteDuration]).>=(that)`
Definition Classes
Ordered
6. #### def compare(that: FiniteDuration): Int

Result of comparing `this` with operand `that`.

Result of comparing `this` with operand `that`.

Implement this method to determine how instances of A will be sorted.

Returns `x` where:

• `x < 0` when `this < that`
• `x == 0` when `this == that`
• `x > 0` when `this > that`
Implicit information
This member is added by an implicit conversion from FiniteDuration to math.Ordered[FiniteDuration] performed by method orderingToOrdered in scala.math.Ordered.
This implicitly inherited member is shadowed by one or more members in this class.
To access this member you can use a type ascription:
`(finiteDuration: math.Ordered[FiniteDuration]).compare(that)`
Definition Classes
Ordered
7. #### def compareTo(that: FiniteDuration): Int

Result of comparing `this` with operand `that`.

Result of comparing `this` with operand `that`.

Implicit information
This member is added by an implicit conversion from FiniteDuration to math.Ordered[FiniteDuration] performed by method orderingToOrdered in scala.math.Ordered.
This implicitly inherited member is shadowed by one or more members in this class.
To access this member you can use a type ascription:
`(finiteDuration: math.Ordered[FiniteDuration]).compareTo(that)`
Definition Classes
Ordered → Comparable
8. #### def toString(): String

Implicit information
This member is added by an implicit conversion from FiniteDuration to (Long, TimeUnit) performed by method durationToPair in scala.concurrent.duration.
This implicitly inherited member is shadowed by one or more members in this class.
To access this member you can use a type ascription:
`(finiteDuration: (Long, TimeUnit)).toString()`
Definition Classes
Tuple2 → AnyRef → Any