diff options
author | Aleksandr <ognelisar@gmail.com> | 2018-04-04 16:52:10 +0700 |
---|---|---|
committer | Aleksandr <ognelisar@gmail.com> | 2018-04-04 16:52:10 +0700 |
commit | 223628e3c756701309ba8d33ecc886f43857fc15 (patch) | |
tree | 7cd251276898464c4745cc69f3c833e4ff567181 /src/main/scala/xyz/driver/core/date.scala | |
parent | 9ffa65c1ccdc5fdea4ccec26c4b39557d45867f7 (diff) | |
parent | bdf9ec57f213eb652ba5fb3b21973d028034d40e (diff) | |
download | driver-core-223628e3c756701309ba8d33ecc886f43857fc15.tar.gz driver-core-223628e3c756701309ba8d33ecc886f43857fc15.tar.bz2 driver-core-223628e3c756701309ba8d33ecc886f43857fc15.zip |
Merge branch 'master' into TM-1431
Diffstat (limited to 'src/main/scala/xyz/driver/core/date.scala')
-rw-r--r-- | src/main/scala/xyz/driver/core/date.scala | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/src/main/scala/xyz/driver/core/date.scala b/src/main/scala/xyz/driver/core/date.scala index fe35c91..5454093 100644 --- a/src/main/scala/xyz/driver/core/date.scala +++ b/src/main/scala/xyz/driver/core/date.scala @@ -2,12 +2,13 @@ package xyz.driver.core import java.util.Calendar -import scala.util.Try - +import enumeratum._ import scalaz.std.anyVal._ -import scalaz.Scalaz.stringInstance import scalaz.syntax.equal._ +import scala.collection.immutable.IndexedSeq +import scala.util.Try + /** * Driver Date type and related validators/extractors. * Day, Month, and Year extractors are from ISO 8601 strings => driver...Date integers. @@ -15,8 +16,8 @@ import scalaz.syntax.equal._ */ object date { - sealed trait DayOfWeek - object DayOfWeek { + sealed trait DayOfWeek extends EnumEntry + object DayOfWeek extends Enum[DayOfWeek] { case object Monday extends DayOfWeek case object Tuesday extends DayOfWeek case object Wednesday extends DayOfWeek @@ -25,9 +26,11 @@ object date { case object Saturday extends DayOfWeek case object Sunday extends DayOfWeek - val All: Set[DayOfWeek] = Set(Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday) + val values: IndexedSeq[DayOfWeek] = findValues + + val All: Set[DayOfWeek] = values.toSet - def fromString(day: String): Option[DayOfWeek] = All.find(_.toString === day) + def fromString(day: String): Option[DayOfWeek] = withNameInsensitiveOption(day) } type Day = Int @@ Day.type |