Class

scodec

ValueCodecEnrichedWithHListSupport

Related Doc: package scodec

Permalink

implicit final class ValueCodecEnrichedWithHListSupport[A] extends AnyVal

Provides HList related syntax for codecs of any type.

Source
package.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. ValueCodecEnrichedWithHListSupport
  2. AnyVal
  3. Any
Implicitly
  1. by TransformSyntax
  2. by any2stringadd
  3. by StringFormat
  4. by Ensuring
  5. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ValueCodecEnrichedWithHListSupport(self: Codec[A])

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    Any
  3. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to any2stringadd[ValueCodecEnrichedWithHListSupport[A]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (ValueCodecEnrichedWithHListSupport[A], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to ArrowAssoc[ValueCodecEnrichedWithHListSupport[A]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. def ::[B](codecB: Codec[B]): Codec[::[B, ::[A, HNil]]]

    Permalink

    When called on a Codec[A] where A is not a subytpe of HList, creates a new codec that encodes/decodes an HList of B :: A :: HNil.

    When called on a Codec[A] where A is not a subytpe of HList, creates a new codec that encodes/decodes an HList of B :: A :: HNil. For example,

    uint8 :: utf8

    has type Codec[Int :: String :: HNil]. uint8 :: utf8 }}}

  6. def :~>:[B](codecB: Codec[B])(implicit ev: =:=[Unit, B]): Codec[::[A, HNil]]

    Permalink

    When called on a Codec[A], returns a new codec that encodes/decodes B :: A :: HNil.

    When called on a Codec[A], returns a new codec that encodes/decodes B :: A :: HNil. HList equivalent of ~>.

  7. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    Any
  8. def >>:~[L <: HList](f: (A) ⇒ Codec[L]): Codec[::[A, L]]

    Permalink

    Creates a new codec that encodes/decodes an HList type of A :: L given a function A => Codec[L].

    Creates a new codec that encodes/decodes an HList type of A :: L given a function A => Codec[L]. This allows later parts of an HList codec to be dependent on earlier values. Operator alias for flatPrepend.

  9. def as[B](implicit as: Transformer[A, B]): ValueCodecEnrichedWithHListSupport[B]

    Permalink

    Transforms using implicitly available evidence that such a transformation is possible.

    Transforms using implicitly available evidence that such a transformation is possible.

    Typical transformations include converting:

    • an F[L] for some L <: HList to/from an F[CC] for some case class CC, where the types in the case class are aligned with the types in L
    • an F[C] for some C <: Coproduct to/from an F[SC] for some sealed class SC, where the component types in the coproduct are the leaf subtypes of the sealed class.
    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to TransformSyntax[ValueCodecEnrichedWithHListSupport, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[ValueCodecEnrichedWithHListSupport] is in scope.
    Definition Classes
    TransformSyntax
  10. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  11. def ensuring(cond: (ValueCodecEnrichedWithHListSupport[A]) ⇒ Boolean, msg: ⇒ Any): ValueCodecEnrichedWithHListSupport[A]

    Permalink
    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to Ensuring[ValueCodecEnrichedWithHListSupport[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. def ensuring(cond: (ValueCodecEnrichedWithHListSupport[A]) ⇒ Boolean): ValueCodecEnrichedWithHListSupport[A]

    Permalink
    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to Ensuring[ValueCodecEnrichedWithHListSupport[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  13. def ensuring(cond: Boolean, msg: ⇒ Any): ValueCodecEnrichedWithHListSupport[A]

    Permalink
    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to Ensuring[ValueCodecEnrichedWithHListSupport[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  14. def ensuring(cond: Boolean): ValueCodecEnrichedWithHListSupport[A]

    Permalink
    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to Ensuring[ValueCodecEnrichedWithHListSupport[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  15. def exmap[B](f: (A) ⇒ Attempt[B], g: (B) ⇒ Attempt[A]): ValueCodecEnrichedWithHListSupport[B]

    Permalink

    Transforms using two functions, A => Attempt[B] and B => Attempt[A].

    Transforms using two functions, A => Attempt[B] and B => Attempt[A].

    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to TransformSyntax[ValueCodecEnrichedWithHListSupport, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[ValueCodecEnrichedWithHListSupport] is in scope.
    Definition Classes
    TransformSyntax
  16. def exmapc[B](f: (A) ⇒ Attempt[B])(g: (B) ⇒ Attempt[A]): ValueCodecEnrichedWithHListSupport[B]

    Permalink

    Curried version of exmap.

    Curried version of exmap.

    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to TransformSyntax[ValueCodecEnrichedWithHListSupport, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[ValueCodecEnrichedWithHListSupport] is in scope.
    Definition Classes
    TransformSyntax
  17. def flatPrepend[L <: HList](f: (A) ⇒ Codec[L]): Codec[::[A, L]]

    Permalink

    Creates a new codec that encodes/decodes an HList type of A :: L given a function A => Codec[L].

    Creates a new codec that encodes/decodes an HList type of A :: L given a function A => Codec[L]. This allows later parts of an HList codec to be dependent on earlier values.

  18. def flatZipHList[B](f: (A) ⇒ Codec[B]): Codec[::[A, ::[B, HNil]]]

    Permalink

    Creates a new codec that encodes/decodes an HList type of A :: B :: HNil given a function A => Codec[B].

    Creates a new codec that encodes/decodes an HList type of A :: B :: HNil given a function A => Codec[B]. If B is an HList type, consider using flatPrepend instead, which avoids nested HLists. This is the direct HList equivalent of flatZip.

  19. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to StringFormat[ValueCodecEnrichedWithHListSupport[A]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  20. def getClass(): Class[_ <: AnyVal]

    Permalink
    Definition Classes
    AnyVal → Any
  21. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  22. def narrow[B](f: (A) ⇒ Attempt[B], g: (B) ⇒ A): ValueCodecEnrichedWithHListSupport[B]

    Permalink

    Transforms using two functions, A => Attempt[B] and B => A.

    Transforms using two functions, A => Attempt[B] and B => A.

    The supplied functions form an injection from B to A. Hence, this method converts from a larger to a smaller type. Hence, the name narrow.

    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to TransformSyntax[ValueCodecEnrichedWithHListSupport, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[ValueCodecEnrichedWithHListSupport] is in scope.
    Definition Classes
    TransformSyntax
  23. def narrowc[B](f: (A) ⇒ Attempt[B])(g: (B) ⇒ A): ValueCodecEnrichedWithHListSupport[B]

    Permalink

    Curried version of narrow.

    Curried version of narrow.

    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to TransformSyntax[ValueCodecEnrichedWithHListSupport, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[ValueCodecEnrichedWithHListSupport] is in scope.
    Definition Classes
    TransformSyntax
  24. val self: Codec[A]

    Permalink
  25. def toString(): String

    Permalink
    Definition Classes
    Any
  26. def widen[B](f: (A) ⇒ B, g: (B) ⇒ Attempt[A]): ValueCodecEnrichedWithHListSupport[B]

    Permalink

    Transforms using two functions, A => B and B => Attempt[A].

    Transforms using two functions, A => B and B => Attempt[A].

    The supplied functions form an injection from A to B. Hence, this method converts from a smaller to a larger type. Hence, the name widen.

    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to TransformSyntax[ValueCodecEnrichedWithHListSupport, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[ValueCodecEnrichedWithHListSupport] is in scope.
    Definition Classes
    TransformSyntax
  27. def widenOpt[B](f: (A) ⇒ B, g: (B) ⇒ Option[A]): ValueCodecEnrichedWithHListSupport[B]

    Permalink

    Transforms using two functions, A => B and B => Option[A].

    Transforms using two functions, A => B and B => Option[A].

    Particularly useful when combined with case class apply/unapply. E.g., widenOpt(fa, Foo.apply, Foo.unapply).

    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to TransformSyntax[ValueCodecEnrichedWithHListSupport, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[ValueCodecEnrichedWithHListSupport] is in scope.
    Definition Classes
    TransformSyntax
  28. def widenOptc[B](f: (A) ⇒ B)(g: (B) ⇒ Option[A]): ValueCodecEnrichedWithHListSupport[B]

    Permalink

    Curried version of widenOpt.

    Curried version of widenOpt.

    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to TransformSyntax[ValueCodecEnrichedWithHListSupport, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[ValueCodecEnrichedWithHListSupport] is in scope.
    Definition Classes
    TransformSyntax
  29. def widenc[B](f: (A) ⇒ B)(g: (B) ⇒ Attempt[A]): ValueCodecEnrichedWithHListSupport[B]

    Permalink

    Curried version of widen.

    Curried version of widen.

    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to TransformSyntax[ValueCodecEnrichedWithHListSupport, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[ValueCodecEnrichedWithHListSupport] is in scope.
    Definition Classes
    TransformSyntax
  30. def xmap[B](f: (A) ⇒ B, g: (B) ⇒ A): ValueCodecEnrichedWithHListSupport[B]

    Permalink

    Transforms using the isomorphism described by two functions, A => B and B => A.

    Transforms using the isomorphism described by two functions, A => B and B => A.

    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to TransformSyntax[ValueCodecEnrichedWithHListSupport, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[ValueCodecEnrichedWithHListSupport] is in scope.
    Definition Classes
    TransformSyntax
  31. def xmapc[B](f: (A) ⇒ B)(g: (B) ⇒ A): ValueCodecEnrichedWithHListSupport[B]

    Permalink

    Curried version of xmap.

    Curried version of xmap.

    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to TransformSyntax[ValueCodecEnrichedWithHListSupport, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[ValueCodecEnrichedWithHListSupport] is in scope.
    Definition Classes
    TransformSyntax
  32. def [B](y: B): (ValueCodecEnrichedWithHListSupport[A], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to ArrowAssoc[ValueCodecEnrichedWithHListSupport[A]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Shadowed Implicit Value Members

  1. val self: ValueCodecEnrichedWithHListSupport[A]

    Permalink

    Supports TransformSyntax.

    Supports TransformSyntax.

    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to TransformSyntax[ValueCodecEnrichedWithHListSupport, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[ValueCodecEnrichedWithHListSupport] is in scope.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (valueCodecEnrichedWithHListSupport: TransformSyntax[ValueCodecEnrichedWithHListSupport, A]).self
    Definition Classes
    TransformSyntax

Deprecated Value Members

  1. def pxmap[B](f: (A) ⇒ B, g: (B) ⇒ Option[A]): ValueCodecEnrichedWithHListSupport[B]

    Permalink

    Transforms using two functions, A => B and B => Option[A].

    Transforms using two functions, A => B and B => Option[A].

    Particularly useful when combined with case class apply/unapply. E.g., pxmap(fa, Foo.apply, Foo.unapply).

    Implicit information
    This member is added by an implicit conversion from ValueCodecEnrichedWithHListSupport[A] to TransformSyntax[ValueCodecEnrichedWithHListSupport, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[ValueCodecEnrichedWithHListSupport] is in scope.
    Definition Classes
    TransformSyntax
    Annotations
    @deprecated
    Deprecated

    (Since version 1.7.0) Use widenOpt instead

Inherited from AnyVal

Inherited from Any

Inherited by implicit conversion TransformSyntax from ValueCodecEnrichedWithHListSupport[A] to TransformSyntax[ValueCodecEnrichedWithHListSupport, A]

Inherited by implicit conversion any2stringadd from ValueCodecEnrichedWithHListSupport[A] to any2stringadd[ValueCodecEnrichedWithHListSupport[A]]

Inherited by implicit conversion StringFormat from ValueCodecEnrichedWithHListSupport[A] to StringFormat[ValueCodecEnrichedWithHListSupport[A]]

Inherited by implicit conversion Ensuring from ValueCodecEnrichedWithHListSupport[A] to Ensuring[ValueCodecEnrichedWithHListSupport[A]]

Inherited by implicit conversion ArrowAssoc from ValueCodecEnrichedWithHListSupport[A] to ArrowAssoc[ValueCodecEnrichedWithHListSupport[A]]

combinators

hlist

Ungrouped