package values
- Alphabetic
- Public
- Protected
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
- final case class NoSuchMember[ValueType, A <: ValueEnumEntry[ValueType]](notFoundValue: ValueType, enumValues: IndexedSeq[A]) extends NoSuchElementException with NoStackTrace with Product with Serializable
- 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