diff options
author | Joris | 2016-12-23 09:52:20 +0100 |
---|---|---|
committer | Joris | 2016-12-23 09:52:20 +0100 |
commit | 555b621b618e4810324a2658d33315b05157e6be (patch) | |
tree | 4594d114b0a1df6f24beee1b31d62e00cbc42180 /src/main/scala/reading/models/Level.scala | |
parent | 322adace29630c3a3f2f04e7e58075a1c57f335a (diff) | |
download | reading-555b621b618e4810324a2658d33315b05157e6be.tar.gz reading-555b621b618e4810324a2658d33315b05157e6be.tar.bz2 reading-555b621b618e4810324a2658d33315b05157e6be.zip |
Add programs grouped by level
Diffstat (limited to 'src/main/scala/reading/models/Level.scala')
-rw-r--r-- | src/main/scala/reading/models/Level.scala | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/main/scala/reading/models/Level.scala b/src/main/scala/reading/models/Level.scala new file mode 100644 index 0000000..1f7e153 --- /dev/null +++ b/src/main/scala/reading/models/Level.scala @@ -0,0 +1,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 +} |