Package

julienrf.bson

derived

Permalink

package derived

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. derived
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Type Members

  1. trait DerivedDecoder[A] extends BSONDocumentReader[A]

    Permalink

    A

    Decoded type

    Annotations
    @implicitNotFound( ... )
  2. trait DerivedDecoderLowPriority extends AnyRef

    Permalink
  3. trait DerivedEncoder[A] extends BSONDocumentWriter[A]

    Permalink
    Annotations
    @implicitNotFound( ... )
  4. trait DerivedEncoderLowPriority extends AnyRef

    Permalink

Value Members

  1. object DerivedDecoder extends DerivedDecoderLowPriority

    Permalink

    As usual the derivation process is as follows:

    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
  2. object DerivedEncoder extends DerivedEncoderLowPriority

    Permalink
  3. def codec[A](implicit decoder: DerivedDecoder[A], encoder: DerivedEncoder[A]): BSONDocumentHandler[A]

    Permalink
  4. def decoder[A](implicit decoder: DerivedDecoder[A]): BSONDocumentReader[A]

    Permalink
  5. def encoder[A](implicit encoder: DerivedEncoder[A]): BSONDocumentWriter[A]

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped