Trait

macrame.enums

OrderedModular

Related Doc: package enums

Permalink

trait OrderedModular[Enum] extends Ordered[Enum]

This traits provides the same interface as Ordered as well as the modular ordering functions. As with that trait it works by extending the companion object of the enumeration class.

@enum class Color {
  Red
  Blue
  Yellow
}
object Color extends OrderedModular[Color]

This enables the following functions.

Red.prevMod
Color.prevMod(Red) // Yellow
Yellow.nextMod
Color.nextMod(Yellow) // Red
Self Type
OrderedModular[Enum] with EnumApi[Enum]
Linear Supertypes
Ordered[Enum], AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. OrderedModular
  2. Ordered
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. implicit class OrderedModularOps extends AnyRef

    Permalink
  2. implicit class OrderedOps extends AnyRef

    Permalink
    Definition Classes
    Ordered

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. def clone(): AnyRef

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

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. def first: Enum

    Permalink
    Definition Classes
    Ordered
    Annotations
    @inline()
  10. final def getClass(): Class[_]

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

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

    Permalink
    Definition Classes
    Any
  13. def last: Enum

    Permalink
    Definition Classes
    Ordered
    Annotations
    @inline()
  14. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  15. def next(enum: Enum): Option[Enum]

    Permalink
    Definition Classes
    Ordered
    Annotations
    @inline()
  16. def nextMod(enum: Enum): Enum

    Permalink
    Annotations
    @inline()
  17. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  19. implicit val ordering: Ordering[Enum]

    Permalink
    Definition Classes
    Ordered
  20. def prev(enum: Enum): Option[Enum]

    Permalink
    Definition Classes
    Ordered
    Annotations
    @inline()
  21. def prevMod(enum: Enum): Enum

    Permalink
    Annotations
    @inline()
  22. final def synchronized[T0](arg0: ⇒ T0): T0

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

    Permalink
    Definition Classes
    AnyRef → Any
  24. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Ordered[Enum]

Inherited from AnyRef

Inherited from Any

Ungrouped