Trait

enumeratum.values

IntPlayEnum

Related Doc: package values

Permalink

trait IntPlayEnum[EnumEntry <: IntEnumEntry] extends IntEnum[EnumEntry] with IntPlayPathBindableValueEnum[EnumEntry] with IntPlayQueryBindableValueEnum[EnumEntry] with IntPlayFormValueEnum[EnumEntry] with IntPlayJsonValueEnum[EnumEntry]

An IntEnum that has a lot of the Play-related implicits built-in so you can avoid boilerplate.

Things included are:

Example:

scala> import enumeratum.values._
scala> import play.api.data.Form
scala> import play.api.libs.json._

scala> sealed abstract class Greeting(val value:Int) extends IntEnumEntry

scala> object Greeting extends IntPlayEnum[Greeting] {
     |   val values = findValues
     |   case object Hello   extends Greeting(1)
     |   case object GoodBye extends Greeting(2)
     |   case object Hi      extends Greeting(3)
     |   case object Bye     extends Greeting(4)
     | }

scala> val form = Form("greeting" -> Greeting.formField)
scala> form.bind(Map("greeting" -> "1")).value
res0: Option[Greeting] = Some(Hello)

scala> Json.toJson(Greeting.Hello) res1: JsValue = 1

Linear Supertypes
IntPlayJsonValueEnum[EnumEntry], PlayJsonValueEnum[Int, EnumEntry], IntPlayFormValueEnum[EnumEntry], PlayFormValueEnum[Int, EnumEntry], IntPlayQueryBindableValueEnum[EnumEntry], PlayQueryBindableValueEnum[Int, EnumEntry], IntPlayPathBindableValueEnum[EnumEntry], PlayPathBindableValueEnum[Int, EnumEntry], IntEnum[EnumEntry], ValueEnum[Int, EnumEntry], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. IntPlayEnum
  2. IntPlayJsonValueEnum
  3. PlayJsonValueEnum
  4. IntPlayFormValueEnum
  5. PlayFormValueEnum
  6. IntPlayQueryBindableValueEnum
  7. PlayQueryBindableValueEnum
  8. IntPlayPathBindableValueEnum
  9. PlayPathBindableValueEnum
  10. IntEnum
  11. ValueEnum
  12. AnyRef
  13. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def values: IndexedSeq[EnumEntry]

    Permalink
    Definition Classes
    ValueEnum

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. val baseFormatter: Formatter[Int]

    Permalink

    The Formatter for binding the ValueType of this ValueEnum.

    The Formatter for binding the ValueType of this ValueEnum.

    Used for building the Formatter for the entries

    Attributes
    protected
    Definition Classes
    IntPlayFormValueEnumPlayFormValueEnum
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. macro def findValues: IndexedSeq[EnumEntry]

    Permalink
    Attributes
    protected
    Definition Classes
    IntEnum
  11. lazy val formField: Mapping[EnumEntry]

    Permalink

    Field for mapping this enum in Forms

    Field for mapping this enum in Forms

    Definition Classes
    PlayFormValueEnum
  12. implicit val format: Format[EnumEntry]

    Permalink
    Definition Classes
    IntPlayJsonValueEnum → PlayJsonValueEnum
  13. lazy val fromPath: PathBindableExtractor[EnumEntry]

    Permalink

    Binder for play.api.routing.sird router

    Binder for play.api.routing.sird router

    Example:

    scala> import play.api.routing.sird._
    scala> import play.api.routing._
    scala> import play.api.mvc._
    
    scala> sealed abstract class Greeting(val value: Int) extends IntEnumEntry
    
    scala> object Greeting extends IntPlayEnum[Greeting] {
         |   val values = findValues
         |   case object Hello   extends Greeting(1)
         |   case object GoodBye extends Greeting(2)
         |   case object Hi      extends Greeting(3)
         |   case object Bye     extends Greeting(4)
         | }
    
    scala> val router = Router.from {
         |   case GET(p"/hello/${Greeting.fromPath(greeting)}") => Action {
         |     Results.Ok(s"$greeting")
         |   }
         | }
    scala> router.routes
    res0: Router.Routes = <function1>
    Definition Classes
    PlayPathBindableValueEnum
  14. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  15. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  16. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  17. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  18. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  19. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  20. implicit val pathBindable: PathBindable[EnumEntry]

    Permalink

    Implicit path binder for Play's default router

    Implicit path binder for Play's default router

    Definition Classes
    IntPlayPathBindableValueEnumPlayPathBindableValueEnum
  21. implicit val queryBindable: QueryStringBindable[EnumEntry]

    Permalink

    Implicit path binder for Play's default router

    Implicit path binder for Play's default router

    Definition Classes
    IntPlayQueryBindableValueEnumPlayQueryBindableValueEnum
  22. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  23. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  24. final lazy val valuesToEntriesMap: Map[Int, EnumEntry]

    Permalink
    Definition Classes
    ValueEnum
  25. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  28. def withValue(i: Int): EnumEntry

    Permalink
    Definition Classes
    ValueEnum
    Annotations
    @SuppressWarnings()
  29. def withValueOpt(i: Int): Option[EnumEntry]

    Permalink
    Definition Classes
    ValueEnum

Inherited from IntPlayJsonValueEnum[EnumEntry]

Inherited from PlayJsonValueEnum[Int, EnumEntry]

Inherited from IntPlayFormValueEnum[EnumEntry]

Inherited from PlayFormValueEnum[Int, EnumEntry]

Inherited from IntPlayQueryBindableValueEnum[EnumEntry]

Inherited from PlayQueryBindableValueEnum[Int, EnumEntry]

Inherited from IntPlayPathBindableValueEnum[EnumEntry]

Inherited from PlayPathBindableValueEnum[Int, EnumEntry]

Inherited from IntEnum[EnumEntry]

Inherited from ValueEnum[Int, EnumEntry]

Inherited from AnyRef

Inherited from Any

Ungrouped