From 1e5e642763d9e82d93590434f51d50e30b4c2716 Mon Sep 17 00:00:00 2001 From: pawelkaczor Date: Mon, 20 Jun 2022 14:30:20 +0200 Subject: [PATCH] minor fixes, fix dateParser --- .../virsox/scalexpr/BinaryExpression.scala | 1 - .../br/com/virsox/scalexpr/DateParser.scala | 20 ++++++++++++------- .../br/com/virsox/scalexpr/Expression.scala | 1 - 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/src/main/scala/br/com/virsox/scalexpr/BinaryExpression.scala b/src/main/scala/br/com/virsox/scalexpr/BinaryExpression.scala index e277ffd..35bcc82 100644 --- a/src/main/scala/br/com/virsox/scalexpr/BinaryExpression.scala +++ b/src/main/scala/br/com/virsox/scalexpr/BinaryExpression.scala @@ -2,7 +2,6 @@ package br.com.virsox.scalexpr import br.com.virsox.scalexpr.Context.{ContextLike, EmptyContext} -import scala.math.Ordering import scala.reflect.runtime.universe._ /** * diff --git a/src/main/scala/br/com/virsox/scalexpr/DateParser.scala b/src/main/scala/br/com/virsox/scalexpr/DateParser.scala index 028cd8a..3758adb 100644 --- a/src/main/scala/br/com/virsox/scalexpr/DateParser.scala +++ b/src/main/scala/br/com/virsox/scalexpr/DateParser.scala @@ -49,10 +49,10 @@ trait DateParser { ) // months with 31 days - val months31 = Seq(1, 3, 5, 7, 8, 10, 12) + val months31: Seq[Int] = Seq(1, 3, 5, 7, 8, 10, 12) // months with 30 days - val months30 = Seq(4, 6, 9, 11) + val months30: Seq[Int] = Seq(4, 6, 9, 11) // parses a date and validates it def dateParser[_: P]: P[String] = @@ -60,11 +60,17 @@ trait DateParser { .map { case (year, month, day) => (year.toInt, month.toInt, day.toInt) } .filter { case (year, month, day) => - if (months31.contains(month) && day > 31) false - else if (months30.contains(month) && day > 30) false - else if ((year % 4 == 0) && ((year % 100 != 0) || (year % 400 == 0)) && day > 29) false // leap year - else if (day > 28) false - true + if (months31.contains(month) && day > 31) { + false + } else if (months30.contains(month) && day > 30) { + false + } else if ((year % 4 == 0) && ((year % 100 != 0) || (year % 400 == 0)) && day > 29) { + false // leap year + } else if (day > 28) { + false + } else { + true + } } .! diff --git a/src/main/scala/br/com/virsox/scalexpr/Expression.scala b/src/main/scala/br/com/virsox/scalexpr/Expression.scala index 7111883..53406ca 100644 --- a/src/main/scala/br/com/virsox/scalexpr/Expression.scala +++ b/src/main/scala/br/com/virsox/scalexpr/Expression.scala @@ -4,7 +4,6 @@ import java.time.Instant import br.com.virsox.scalexpr.Context.{ContextLike, EmptyContext} -import scala.math.Ordering import scala.reflect.runtime.universe import scala.reflect.runtime.universe._