aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStewart Stewart <stewinsalot@gmail.com>2016-12-19 21:54:41 -0500
committerGitHub <noreply@github.com>2016-12-19 21:54:41 -0500
commitdd8cbb3ada14a4f05d5683b90a5b83dc4b3b35f5 (patch)
treebe98d4adcae1ca08c61f2f08b364ab9e9791ba44
parente7b85bb543faba7a58f1e27be40bb6536bf10222 (diff)
parent8515d672a9fdbb0eb9038a96cee661828cafa61a (diff)
downloaddriver-core-dd8cbb3ada14a4f05d5683b90a5b83dc4b3b35f5.tar.gz
driver-core-dd8cbb3ada14a4f05d5683b90a5b83dc4b3b35f5.tar.bz2
driver-core-dd8cbb3ada14a4f05d5683b90a5b83dc4b3b35f5.zip
Merge pull request #2 from drivergroup/implicit-companions
move implicits into companion objects
-rw-r--r--src/main/scala/xyz/driver/core/time.scala11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/main/scala/xyz/driver/core/time.scala b/src/main/scala/xyz/driver/core/time.scala
index 625d6a2..6ff8209 100644
--- a/src/main/scala/xyz/driver/core/time.scala
+++ b/src/main/scala/xyz/driver/core/time.scala
@@ -21,19 +21,22 @@ object time {
final case class Time(millis: Long) extends AnyVal {
- def isBefore(anotherTime: Time): Boolean = millis < anotherTime.millis
+ def isBefore(anotherTime: Time): Boolean = implicitly[Ordering[Time]].lt(this, anotherTime)
- def isAfter(anotherTime: Time): Boolean = millis > anotherTime.millis
+ def isAfter(anotherTime: Time): Boolean = implicitly[Ordering[Time]].gt(this, anotherTime)
def advanceBy(duration: Duration): Time = Time(millis + duration.toMillis)
}
+ object Time {
+
+ implicit def timeOrdering: Ordering[Time] = Ordering.by(_.millis)
+ }
+
final case class TimeRange(start: Time, end: Time) {
def duration: Duration = FiniteDuration(end.millis - start.millis, MILLISECONDS)
}
- implicit def timeOrdering: Ordering[Time] = Ordering.by(_.millis)
-
def startOfMonth(time: Time) = {
Time(make(new GregorianCalendar()) { cal =>
cal.setTime(new Date(time.millis))