Packages

p

kantan.codecs

shapeless

package shapeless

Source
package.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. shapeless
  2. ShapelessInstances
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Package Members

  1. package laws

Type Members

  1. trait ShapelessInstances extends AnyRef

    Provides Codec instances for case classes and sum types.

    Provides Codec instances for case classes and sum types.

    The purpose of this package is to let concrete Codec implementations (such as kantan.csv or kantan.regex) focus on providing instances for HList and Coproduct. Once such instances exist, this package will take care of the transformation from and to case classes and sum types.

    Additionally, instances derived that way will be inserted with a sane precedence in the implicit resolution mechanism. This means, for example, that they will not override bespoke Option or Either instances.

Value Members

  1. implicit def caseClassDecoder[E, D, F, T, H <: HList](implicit gen: Aux[D, H], dr: Lazy[Decoder[E, H, F, T]]): DerivedDecoder[E, D, F, T]

    Provides a Decoder instance for case classes.

    Provides a Decoder instance for case classes.

    Given a case class D, this expects n Decoder instance for the HList type corresponding to D. It will then rely on that to turn encoded values into an HList, then turn the resulting value into a D.

    Definition Classes
    ShapelessInstances
  2. implicit def caseClassDecoderFromLabelled[E, D, F, T, H <: HList](implicit generic: Aux[D, H], hDecoder: Lazy[Decoder[E, H, F, T]]): DerivedDecoder[E, D, F, T]

    Similar to caseClassDecoder, but working with LabelledGeneric rather than just Generic.

    Similar to caseClassDecoder, but working with LabelledGeneric rather than just Generic.

    Definition Classes
    ShapelessInstances
  3. implicit def caseClassEncoder[E, D, T, H <: HList](implicit gen: Aux[D, H], er: Lazy[Encoder[E, H, T]]): DerivedEncoder[E, D, T]

    Provides an Encoder instance for case classes.

    Provides an Encoder instance for case classes.

    Given a case class D, this expects an Encoder instance for the HList type corresponding to D. It will then simply turn values of type D into values of the corresponding HList, then let the encoder take it from there.

    Definition Classes
    ShapelessInstances
  4. implicit def caseClassEncoderFromLabelled[E, D, T, H <: HList](implicit generic: Aux[D, H], hEncoder: Lazy[Encoder[E, H, T]]): DerivedEncoder[E, D, T]

    Similar to caseClassEncoder, but working with LabelledGeneric rather than just Generic.

    Similar to caseClassEncoder, but working with LabelledGeneric rather than just Generic.

    Definition Classes
    ShapelessInstances
  5. implicit def cnilDecoder[E, F, T](implicit arg0: IsError[F]): Decoder[E, CNil, F, T]
    Definition Classes
    ShapelessInstances
  6. implicit def cnilEncoder[E, D, T]: Encoder[E, CNil, T]
    Definition Classes
    ShapelessInstances
    Annotations
    @SuppressWarnings()
  7. implicit def coproductDecoder[E, H, D <: Coproduct, F, T](implicit dh: Decoder[E, H, F, T], dt: Decoder[E, D, F, T]): Decoder[E, :+:[H, D], F, T]
    Definition Classes
    ShapelessInstances
  8. implicit def coproductEncoder[E, H, D <: Coproduct, T](implicit eh: Encoder[E, H, T], ed: Encoder[E, D, T]): Encoder[E, :+:[H, D], T]
    Definition Classes
    ShapelessInstances
  9. implicit def sumTypeDecoder[E, D, F, T, C <: Coproduct](implicit gen: Aux[D, C], dr: Lazy[Decoder[E, C, F, T]]): DerivedDecoder[E, D, F, T]

    Provides a Decoder instance for sum types.

    Provides a Decoder instance for sum types.

    Given a case class D, this expects n Decoder instance for the Coproduct type corresponding to D. It will then rely on that to turn encoded values into a Coproduct, then turn the resulting value into a D.

    Definition Classes
    ShapelessInstances
  10. implicit def sumTypeEncoder[E, D, T, C <: Coproduct](implicit gen: Aux[D, C], er: Lazy[Encoder[E, C, T]]): DerivedEncoder[E, D, T]

    Provides an Encoder instance for sum types.

    Provides an Encoder instance for sum types.

    Given a sum type D, this expects an Encoder instance for the Coproduct type corresponding to D. It will then simply turn values of type D into values of the corresponding Coproduct, then let the encoder take it from there.

    Definition Classes
    ShapelessInstances

Inherited from ShapelessInstances

Inherited from AnyRef

Inherited from Any

Ungrouped