From bd65e322008689803493efd92702418888a723bd Mon Sep 17 00:00:00 2001 From: Marco Lopes Date: Sun, 12 May 2019 21:00:47 +0100 Subject: [PATCH] Refactor Order instance for Date --- .../scala/wen/instances/datetime/DateInstances.scala | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/main/scala/wen/instances/datetime/DateInstances.scala b/src/main/scala/wen/instances/datetime/DateInstances.scala index 6a0fcd7..360ff66 100644 --- a/src/main/scala/wen/instances/datetime/DateInstances.scala +++ b/src/main/scala/wen/instances/datetime/DateInstances.scala @@ -15,13 +15,11 @@ trait DateInstances { implicit val dateOrderInstance: Order[Date] = new Order[Date] { override def compare(x: Date, y: Date): Int = - if (x.year =!= y.year) - x.year compare y.year - else if (x.month =!= y.month) - x.month compare y.month - else - x.day compare y.day - + (x, y) match { + case (Date(_, _, year1), Date(_, _, year2)) if year1 =!= year2 => year1 compare year2 + case (Date(_, month1, _), Date(_, month2, _)) if month1 =!= month2 => month1 compare month2 + case (Date(day1, _, _), Date(day2, _,_)) => day1 compare day2 + } } implicit val dateShowInstance: Show[Date] = new Show[Date] {