t

com.avsystem.commons.misc

CaseMethods

trait CaseMethods extends Product

Implements common case class & case object methods normally synthesized by the compiler. Extending this trait by case class or case object prevents the compiler from synthesizing these methods which can reduce generated JS size at penalty of not-exactly-precise implementation of canEqual and equals and its runtime performance. For this reason, non-abstract classes extending this trait should always be final. If possible, prefer using AbstractCase rather than this trait.

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CaseMethods
  2. Product
  3. Equals
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def getClass(): Class[_]
    Definition Classes
    Any
  2. abstract def productArity: Int
    Definition Classes
    Product
  3. abstract def productElement(n: Int): Any
    Definition Classes
    Product

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    Any
  2. final def ##(): Int
    Definition Classes
    Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def canEqual(that: Any): Boolean
    Definition Classes
    CaseMethods → Equals
  6. def equals(obj: Any): Boolean
    Definition Classes
    CaseMethods → Equals → Any
  7. def hashCode(): Int
    Definition Classes
    CaseMethods → Any
  8. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  9. def productIterator: Iterator[Any]
    Definition Classes
    CaseMethods → Product
  10. def productPrefix: String
    Definition Classes
    Product
  11. def toString(): String
    Definition Classes
    CaseMethods → Any

Inherited from Product

Inherited from Equals

Inherited from Any

Ungrouped