package values
- Alphabetic
- Public
- All
Type Members
-
trait
ByteEnum
[A <: ByteEnumEntry] extends ValueEnum[Byte, A]
Value enum with ByteEnumEntry entries
Value enum with ByteEnumEntry entries
This is similar to enumeratum.Enum, but different in that values must be literal values. This restraint allows us to enforce uniqueness at compile time.
Note that uniqueness is only guaranteed if you do not do any runtime string manipulation on values.
-
abstract
class
ByteEnumEntry
extends ValueEnumEntry[Byte]
Value Enum Entry parent class for Byte valued entries
-
trait
CharEnum
[A <: CharEnumEntry] extends ValueEnum[Char, A]
Value enum with CharEnumEntry entries
Value enum with CharEnumEntry entries
This is similar to enumeratum.Enum, but different in that values must be literal values. This restraint allows us to enforce uniqueness at compile time.
Note that uniqueness is only guaranteed if you do not do any runtime string manipulation on values.
-
abstract
class
CharEnumEntry
extends ValueEnumEntry[Char]
Value Enum Entry parent class for Char valued entries
-
trait
IntEnum
[A <: IntEnumEntry] extends ValueEnum[Int, A]
Value enum with IntEnumEntry entries
-
abstract
class
IntEnumEntry
extends ValueEnumEntry[Int]
Value Enum Entry parent class for Int valued entries
-
trait
LongEnum
[A <: LongEnumEntry] extends ValueEnum[Long, A]
Value enum with LongEnumEntry entries
-
abstract
class
LongEnumEntry
extends ValueEnumEntry[Long]
Value Enum Entry parent class for Long valued entries
-
trait
ShortEnum
[A <: ShortEnumEntry] extends ValueEnum[Short, A]
Value enum with ShortEnumEntry entries
-
abstract
class
ShortEnumEntry
extends ValueEnumEntry[Short]
Value Enum Entry parent class for Short valued entries
-
trait
StringEnum
[A <: StringEnumEntry] extends ValueEnum[String, A]
Value enum with StringEnumEntry entries
Value enum with StringEnumEntry entries
This is similar to enumeratum.Enum, but different in that values must be literal values. This restraint allows us to enforce uniqueness at compile time.
Note that uniqueness is only guaranteed if you do not do any runtime string manipulation on values.
-
abstract
class
StringEnumEntry
extends ValueEnumEntry[String]
Value Enum Entry parent class for String valued entries
Value Enum Entry parent class for String valued entries
This is similar to enumeratum.Enum, but different in that values must be literal values. This restraint allows us to enforce uniqueness at compile time.
Note that uniqueness is only guaranteed if you do not do any runtime string manipulation on values.
-
sealed
trait
ValueEnum
[ValueType, EntryType <: ValueEnumEntry[ValueType]] extends AnyRef
Base trait for a Value-based enums.
Base trait for a Value-based enums.
Example:
scala> sealed abstract class Greeting(val value: Int) extends IntEnumEntry scala> object Greeting extends IntEnum[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> Greeting.withValueOpt(1) res0: Option[Greeting] = Some(Hello) scala> Greeting.withValueOpt(6) res1: Option[Greeting] = None
-
sealed
trait
ValueEnumEntry
[ValueType] extends AnyRef
Created by Lloyd on 4/11/16.
Created by Lloyd on 4/11/16.
Copyright 2016