Packages

object Span extends Serializable

Companion object for Span that provides two factory methods for creating Span instances.

The first argument to each factory method is a numeric value; the second argument is a Units value. One factory method takes a Long, so it can be invoked with either an Int or Long, as in:

import org.scalatest.time._

Span(1, Second)
Span(1L, Millisecond)

The other factory method takes a Double, so it can be invoked with either a Float or a Double:

import org.scalatest.time._

Span(2.5F, Seconds)
Span(99.9, Microseconds)

Source
Span.scala
Linear Supertypes
Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Span
  2. Serializable
  3. Serializable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. val Max: Span

    A Span with the maximum expressible value, Span(Long.MaxValue, Nanoseconds), which is approximately 292 years.

    A Span with the maximum expressible value, Span(Long.MaxValue, Nanoseconds), which is approximately 292 years.

    One use case for this Span value is to help convert a duration concept from a different library to Span when that library's duration concept includes a notion of infinite durations. An infinite duration can be converted to Span.Max.

    returns

    a Span with the maximum expressible value, Long.MaxValue nanoseconds.

  2. val Zero: Span

    A Span with representing a zero-length span of time.

    A Span with representing a zero-length span of time.

    returns

    a zero-length Span.

  3. def apply(length: Double, units: Units): Span

    Returns a Span representing the passed Double length of time in the passed units.

    Returns a Span representing the passed Double length of time in the passed units.

    If the requested time span is less than 0.0 or, when converted to Long number of nanoseconds, would be greater than Long.MaxValue nanoseconds, this method will throw an IllegalArgumentException. (Note: a zero-length time span is allowed, just not a negative or too-large time span.)

    length

    the length of time denominated by the passed units

    units

    the units of time for the passed length

    returns

    a Span representing the requested time span

    Exceptions thrown

    IllegalArgumentException if the requested time span, when converted to Long number of nanoseconds, would be greater than Long.MaxValue nanoseconds, the maximum time span expressible with a Span

  4. def apply(length: Long, units: Units): Span

    Returns a Span representing the passed Long length of time in the passed units.

    Returns a Span representing the passed Long length of time in the passed units.

    If the requested time span is less than zero or greater than Long.MaxValue nanoseconds, this method will throw an IllegalArgumentException. (Note: a zero-length time span is allowed, just not a negative or too-large time span.)

    length

    the length of time denominated by the passed units

    units

    the units of time for the passed length

    returns

    a Span representing the requested time span

    Exceptions thrown

    IllegalArgumentException if the requested time span is greater than Long.MaxValue nanoseconds, the maximum time span expressible with a Span

  5. implicit def convertDurationToSpan(duration: Duration): Span

    Implicitly converts a scala.concurrent.duration.Duration to a Span, so that a Duration can be used where a Span is needed.

    Implicitly converts a scala.concurrent.duration.Duration to a Span, so that a Duration can be used where a Span is needed.

    This function transforms Duration.MinusInf to Span.Zero, Duration.Inf and Undefined to Span.Max, and all others to a Span containing a corresponing number of nanoseconds.

  6. implicit def convertSpanToDuration(span: Span): FiniteDuration

    Implicitly converts a Span to a scala.concurrent.duration.FiniteDuration, so that a Span can be used where a FiniteDuration is needed.

    Implicitly converts a Span to a scala.concurrent.duration.FiniteDuration, so that a Span can be used where a FiniteDuration is needed.