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)
- Companion:
- class
Value members
Concrete methods
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.)
- Value parameters:
- length
the length of time denominated by the passed
units- units
the units of time for the passed
length
- Returns:
a
Spanrepresenting the requested time span- Throws:
- IllegalArgumentException
if the requested time span is greater than
Long.MaxValuenanoseconds, the maximum time span expressible with aSpan
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.)
- Value parameters:
- length
the length of time denominated by the passed
units- units
the units of time for the passed
length
- Returns:
a
Spanrepresenting the requested time span- Throws:
- IllegalArgumentException
if the requested time span, when converted to
Longnumber of nanoseconds, would be greater thanLong.MaxValuenanoseconds, the maximum time span expressible with aSpan
Concrete fields
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
Spanwith the maximum expressible value,Long.MaxValuenanoseconds.
Implicits
Implicits
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.