Packages

t

kantan.codecs

DecoderCompanion

trait DecoderCompanion[E, F, T] extends Serializable

Provides methods commonly declared by companion objects for specialised decoder types.

Most libraries that use kantan.codecs will declare type aliases for decoders - CellDecoder in kantan.csv, for example. DecoderCompanion lets such types have a useful companion object without a lot of code duplication.

Source
Decoder.scala
Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DecoderCompanion
  2. Serializable
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. macro def apply[D](implicit ev: Decoder[E, D, F, T]): Decoder[E, D, F, T]

    Summons an implicit instance of Decoder if one is found, fails compilation otherwise.

    Summons an implicit instance of Decoder if one is found, fails compilation otherwise.

    This is a slightly faster, less verbose version of implicitly.

  2. def from[D](f: (E) => Either[F, D]): Decoder[E, D, F, T]

    Creates a new Decoder instance from the specified function.

    Creates a new Decoder instance from the specified function.

    Annotations
    @inline()
  3. def fromPartial[D](f: PartialFunction[E, Either[F, D]])(implicit t: IsError[F]): Decoder[E, D, F, T]
    Annotations
    @SuppressWarnings()
  4. def fromUnsafe[D](f: (E) => D)(implicit t: IsError[F]): Decoder[E, D, F, T]

    Creates a new Decoder instance from the specified function.

    Creates a new Decoder instance from the specified function.

    This method turns the specified function safe. The error message might end up being a bit generic though - use from if you want to deal with errors explicitly.

    Annotations
    @inline()
  5. def oneOf[D](ds: Decoder[E, D, F, T]*)(implicit i: IsError[F]): Decoder[E, D, F, T]

    Creates a new Decoder instance from the specified alternatives.

    Creates a new Decoder instance from the specified alternatives.

    When decoding, each of the specified decoders will be attempted. The result will be the first success if found, or the last failure otherwise.

    Annotations
    @inline()