aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/reading/models/Level.scala
blob: 1f7e1539fb64cf6bbbefb2ad3fc3c6a996e3cec5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package reading.models

import enumeratum._

sealed trait Level extends EnumEntry with Ordered[Level] {
  import Level._

  def compare(that: Level) = {
    def toInt(level: Level): Int = level match {
      case Sixieme => 6
      case Cinquieme => 5
      case Quatrieme => 4
      case Troisieme => 3
    }
    toInt(that) - toInt(this)
  }

  override def toString(): String = this match {
    case Sixieme  => "6ème"
    case Cinquieme  => "5ème"
    case Quatrieme  => "4ème"
    case Troisieme  => "3ème"
  }
}

object Level extends Enum[Level] {
  val values = findValues

  case object Sixieme extends Level
  case object Cinquieme extends Level
  case object Quatrieme extends Level
  case object Troisieme extends Level
}