Packages

object DerivedDecoder extends DerivedDecoderLowPriority

As usual the derivation process is as follows:

  • let shapeless represent our type A in terms of Coproduct (if it is a sealed trait) or HList (if it is a case class) ;
  • define how to decode Coproducts and HLists using implicit definitions
Source
DerivedDecoder.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DerivedDecoder
  2. DerivedDecoderLowPriority
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def apply[A](implicit decoder: DerivedDecoder[A, A]): BSONDocumentReader[A]
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. implicit def decodeCNil[A](implicit labels: Labels[A]): DerivedDecoder[A, CNil]
  8. implicit def decodeCoproduct[A, K <: Symbol, L, R <: Coproduct](implicit typeName: Aux[K], decodeL: Lazy[BSONDocumentReader[L]], decodeR: Lazy[DerivedDecoder[A, R]]): DerivedDecoder[A, :+:[FieldType[K, L], R]]
  9. implicit def decodeCoproductDerived[A, K <: Symbol, L, R <: Coproduct](implicit typeName: Aux[K], decodeL: Lazy[DerivedDecoder[_, L]], decodeR: Lazy[DerivedDecoder[A, R]]): DerivedDecoder[A, :+:[FieldType[K, L], R]]
    Definition Classes
    DerivedDecoderLowPriority
  10. implicit def decodeGeneric[A, R](implicit gen: Aux[A, R], derivedDecoder: Lazy[DerivedDecoder[A, R]]): DerivedDecoder[A, A]
    Definition Classes
    DerivedDecoderLowPriority
  11. implicit def decodeHNil[A]: DerivedDecoder[A, HNil]
  12. implicit def decodeLabelledHList[A, K <: Symbol, H, T <: HList](implicit fieldName: Aux[K], decodeH: Lazy[BSONReader[_ <: BSONValue, H]], decodeT: Lazy[DerivedDecoder[A, T]]): DerivedDecoder[A, ::[FieldType[K, H], T]]
  13. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  15. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  16. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  17. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  18. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  19. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. final def notify(): Unit
    Definition Classes
    AnyRef
  21. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  22. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  23. def toString(): String
    Definition Classes
    AnyRef → Any
  24. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from DerivedDecoderLowPriority

Inherited from AnyRef

Inherited from Any

Ungrouped