enumeratum.values.CharPlayEnum
A CharEnum that has a lot of the Play-related implicits built-in so you can avoid boilerplate.
Things included are:
implicit PathBindable (for binding from request path)
implicit QueryCharBindable (for binding from query strings)
formField for doing things like Form("hello" -> MyEnum.formField)
implicit Json format
See IntPlayEnum for example usage.
Attributes Graph Reset zoom Hide graph Show graph
Supertypes trait CharPlayJsonValueEnum [EnumEntry ]
trait PlayJsonValueEnum [Char , EnumEntry ]
trait CharEnum [EnumEntry ]
trait ValueEnum [Char , EnumEntry ]
class Object
trait Matchable
class Any
Members list Concise view
Value members
Returns a Seq of A objects that the macro was able to find.
Returns a Seq of A objects that the macro was able to find.
You will want to use this in some way to implement your values method. In fact, if you
aren't using this method...why are you even bothering with this lib?
Attributes Inherited from: CharEnumCompat (hidden)
The sequence of values for your Enum . You will typically want to implement this in your
extending class as a val
so that withValue
and friends are as efficient as possible.
The sequence of values for your Enum . You will typically want to implement this in your
extending class as a val
so that withValue
and friends are as efficient as possible.
Feel free to implement this however you'd like (including messing around with ordering, etc)
if that fits your needs better.
Attributes Inherited from: ValueEnum
Tries to get an EntryType by the supplied value. The value corresponds to the .value of
the case objects implementing EntryType
Tries to get an EntryType by the supplied value. The value corresponds to the .value of
the case objects implementing EntryType
Like Enumeration 's withValue
, this method will throw if the value does not match any of
the values' .value
values.
Attributes Inherited from: ValueEnum
Returns an [[Right[EntryType]] ] for a given value, or a [[Left[NoSuchMember]] ] if the value
does not match any of the values' .value
values.
Returns an [[Right[EntryType]] ] for a given value, or a [[Left[NoSuchMember]] ] if the value
does not match any of the values' .value
values.
Attributes Inherited from: ValueEnum
Optionally returns an EntryType for a given value.
Optionally returns an EntryType for a given value.
Attributes Inherited from: ValueEnum
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>
Attributes Inherited from: PlayPathBindableValueEnum
Map of ValueType to EntryType members
Map of ValueType to EntryType members
Attributes Inherited from: ValueEnum Implicits
Implicit path binder for Play's default router
Implicit path binder for Play's default router