c

com.avsystem.commons.misc

AbstractSealedEnumCompanion

abstract class AbstractSealedEnumCompanion[T] extends SealedEnumCompanion[T]

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AbstractSealedEnumCompanion
  2. SealedEnumCompanion
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AbstractSealedEnumCompanion()

Abstract Value Members

  1. abstract val values: commons.ISeq[T]

    Holds a list of all case objects of a sealed trait or class T.

    Holds a list of all case objects of a sealed trait or class T. This must be implemented separately for every sealed enum, but can be implemented simply by using the caseObjects macro. It's important to *always* state the type of values explicitly, as a workaround for SI-7046. For example:

    val values: List[MyEnum] = caseObjects

    Also, be aware that caseObjects macro guarantees well-defined order of elements only for OrderedEnum.

    Definition Classes
    SealedEnumCompanion

Concrete Value Members

  1. implicit def evidence: AbstractSealedEnumCompanion.this.type

    Thanks to this implicit, SealedEnumCompanion and its subtraits can be used as typeclasses.

    Thanks to this implicit, SealedEnumCompanion and its subtraits can be used as typeclasses.

    Definition Classes
    SealedEnumCompanion