object Codec extends EncoderFunctions with DecoderFunctions
- Grouped
- Alphabetic
- By Inheritance
- Codec
- DecoderFunctions
- EncoderFunctions
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
apply[A](encoder: Encoder[A], decoder: Decoder[A]): Codec[A]
Creates a codec from an encoder and a decoder.
-
def
apply[A](encoder: (A) ⇒ Attempt[BitVector], decoder: (BitVector) ⇒ Attempt[DecodeResult[A]]): Codec[A]
Creates a codec from encoder and decoder functions.
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
final
def
choiceDecoder[A](decoders: Decoder[A]*): Decoder[A]
Creates a decoder that decodes with each of the specified decoders, returning the first successful result.
Creates a decoder that decodes with each of the specified decoders, returning the first successful result.
- Definition Classes
- DecoderFunctions
-
final
def
choiceEncoder[A](encoders: Encoder[A]*): Encoder[A]
Creates an encoder that encodes with each of the specified encoders, returning the first successful result.
Creates an encoder that encodes with each of the specified encoders, returning the first successful result.
- Definition Classes
- EncoderFunctions
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
coproduct[A](implicit auto: CoproductBuilderAuto[A]): Out
Creates a coproduct codec builder for the specified type.
Creates a coproduct codec builder for the specified type.
Support exists for coproducts and unions. Each component type must have an implicitly available codec.
For example:
type C = Foo :+: Bar :+: Baz :+: CNil val codec = Codec.coproduct[C].choice codec.encode(Coproduct[C](Foo(...)))
-
final
def
decodeBoth[A, B](decA: Decoder[A], decB: Decoder[B])(buffer: BitVector): Attempt[DecodeResult[(A, B)]]
Decodes a tuple
(A, B)
by first decodingA
and then using the remaining bits to decodeB
.Decodes a tuple
(A, B)
by first decodingA
and then using the remaining bits to decodeB
.- Definition Classes
- DecoderFunctions
-
final
def
decodeBothCombine[A, B, C](decA: Decoder[A], decB: Decoder[B])(buffer: BitVector)(f: (A, B) ⇒ C): Attempt[DecodeResult[C]]
Decodes a
C
by first decodingA
and then using the remaining bits to decodeB
, then applying the decoded values to the specified function to generate aC
.Decodes a
C
by first decodingA
and then using the remaining bits to decodeB
, then applying the decoded values to the specified function to generate aC
.- Definition Classes
- DecoderFunctions
-
implicit
def
deriveCoproduct[A, D, C0 <: Coproduct](implicit discriminated: Discriminated[A, D], auto: CoproductBuilderAuto[A] { type C = C0 }, auto2: CoproductBuilderAutoDiscriminators[A, C0, D]): Codec[A]
Supports derived codecs.
-
implicit
val
deriveHNil: Codec[HNil]
Supports derived codecs.
-
implicit
def
deriveLabelledGeneric[A, Rec <: HList](implicit lgen: Aux[A, Rec], auto: Lazy[Codec[Rec]]): Codec[A]
Supports derived codecs.
-
implicit
def
deriveProduct[H, T <: HList](implicit headCodec: Lazy[Codec[H]], tailAux: Lazy[Codec[T]]): Codec[::[H, T]]
Supports derived codecs.
-
implicit
def
deriveRecord[KH <: Symbol, VH, TRec <: HList, KT <: HList](implicit keys: Aux[::[FieldType[KH, VH], TRec], ::[KH, KT]], headCodec: Lazy[Codec[VH]], tailAux: Lazy[Codec[TRec]]): Codec[::[FieldType[KH, VH], TRec]]
Supports derived codecs.
-
final
def
encodeBoth[A, B](encA: Encoder[A], encB: Encoder[B])(a: A, b: B): Attempt[BitVector]
Encodes the specified values, one after the other, to a bit vector using the specified encoders.
Encodes the specified values, one after the other, to a bit vector using the specified encoders.
- Definition Classes
- EncoderFunctions
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
lazily[A](codec: ⇒ Codec[A]): Codec[A]
Provides a
Codec[A]
that delegates to a lazily evaluatedCodec[A]
.Provides a
Codec[A]
that delegates to a lazily evaluatedCodec[A]
. Typically used to consruct codecs for recursive structures. -
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def summon[A](implicit c: Lazy[Codec[A]]): Codec[A]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
implicit
val
transformInstance: Transform[Codec]
Transform typeclass instance.
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()