forked from nova/jmonkey-test
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
983 B
43 lines
983 B
package wow.doge.mygame.implicits
|
|
|
|
import enumeratum._
|
|
|
|
sealed trait TestEnum extends EnumEntry
|
|
|
|
object TestEnum extends Enum[TestEnum] {
|
|
val values = findValues
|
|
case object Test2 extends TestEnum
|
|
}
|
|
|
|
sealed trait Greeting extends EnumEntry
|
|
|
|
object Greeting extends Enum[Greeting] {
|
|
|
|
/*
|
|
`findValues` is a protected method that invokes a macro to find all `Greeting` object declarations inside an `Enum`
|
|
|
|
You use it to implement the `val values` member
|
|
*/
|
|
val values = findValues
|
|
|
|
case object Hello extends Greeting
|
|
case object GoodBye extends Greeting
|
|
case object Hi extends Greeting
|
|
case object Bye extends Greeting
|
|
|
|
}
|
|
object ObsTest {}
|
|
|
|
sealed trait PlayerMovementEnum extends EnumEntry {
|
|
def test: String
|
|
}
|
|
|
|
object PlayerMovementEnum extends Enum[PlayerMovementEnum] {
|
|
val values = findValues
|
|
case object MOVE_RIGHT extends PlayerMovementEnum {
|
|
val test = "hmm"
|
|
}
|
|
case object MOVE_LEFT extends PlayerMovementEnum {
|
|
val test = "mmh"
|
|
}
|
|
}
|