VPackDecoder

avokka.velocypack.VPackDecoder$
See theVPackDecoder companion trait

Attributes

Companion
trait
Graph
Supertypes
trait Derivation[VPackDecoder]
trait SealedTraitDerivation
trait CommonDerivation[VPackDecoder]
class Object
trait Matchable
class Any
Show all
Self type

Members list

Type members

Inherited types

type Typeclass[T] = TypeClass[T]

Attributes

Inherited from:
CommonDerivation

Value members

Concrete methods

def apply[T](implicit decoder: VPackDecoder[T]): VPackDecoder[T]

Inherited methods

inline def `getParams__`[T, Labels <: Tuple, Params <: Tuple](annotations: Map[String, List[Any]], inheritedAnnotations: Map[String, List[Any]], typeAnnotations: Map[String, List[Any]], repeated: Map[String, Boolean], defaults: Map[String, Option[() => Any]], idx: Int): List[Param[Typeclass, T]]

Attributes

Inherited from:
CommonDerivation
inline override protected def deriveSubtype[s](m: Of[s]): TypeClass[s]

Attributes

Definition Classes
Derivation -> SealedTraitDerivation
Inherited from:
Derivation
inline def derived[A]: TypeClass[A]

Attributes

Inherited from:
Derivation
inline protected def derivedMirrorProduct[A](product: ProductOf[A]): TypeClass[A]

Attributes

Inherited from:
CommonDerivation
inline def getParams[T, Labels <: Tuple, Params <: Tuple](annotations: Map[String, List[Any]], typeAnnotations: Map[String, List[Any]], repeated: Map[String, Boolean], idx: Int): List[Param[Typeclass, T]]

Attributes

Inherited from:
CommonDerivation
inline def getParams_[T, Labels <: Tuple, Params <: Tuple](annotations: Map[String, List[Any]], inheritedAnnotations: Map[String, List[Any]], typeAnnotations: Map[String, List[Any]], repeated: Map[String, Boolean], idx: Int): List[Param[Typeclass, T]]

Attributes

Inherited from:
CommonDerivation
override def join[T](ctx: CaseClass[VPackDecoder, T]): VPackDecoder[T]

Must be implemented by the user of Magnolia to construct a typeclass for case class T using the provided type info. E.g. if we are deriving Show[T] typeclasses, and T is a case class Foo(...), we need to constuct Show[Foo].

Must be implemented by the user of Magnolia to construct a typeclass for case class T using the provided type info. E.g. if we are deriving Show[T] typeclasses, and T is a case class Foo(...), we need to constuct Show[Foo].

This method is called 'join' because typically it will join together the typeclasses for all the parameters of the case class, into a single typeclass for the case class itself. The field CaseClass.params can provide useful information for doing this.

Value parameters

caseClass

information about the case class T, its parameters, and their typeclasses

Attributes

Definition Classes
VPackDecoderDerivation -> CommonDerivation
Inherited from:
VPackDecoderDerivation
inline protected def sealedTraitFromMirror[A](m: SumOf[A]): SealedTrait[Typeclass, A]

Attributes

Inherited from:
SealedTraitDerivation
override def split[T](ctx: SealedTrait[VPackDecoder, T]): VPackDecoder[T]

defines how to choose which subtype of the sealed trait to use for decoding

defines how to choose which subtype of the sealed trait to use for decoding

Attributes

Definition Classes
VPackDecoderDerivation -> Derivation
Inherited from:
VPackDecoderDerivation
transparent inline def subtypes[T, SubtypeTuple <: Tuple](m: SumOf[T], idx: Int): List[Subtype[Typeclass, T, _]]

Attributes

Inherited from:
Derivation
transparent inline protected def subtypesFromMirror[A, SubtypeTuple <: Tuple](m: SumOf[A], idx: Int): List[Subtype[Typeclass, A, _]]

Attributes

Inherited from:
SealedTraitDerivation

Implicits

Implicits

implicit val arrayByteDecoder: VPackDecoder[Array[Byte]]
implicit val bigdecimalDecoder: VPackDecoder[BigDecimal]
implicit val bigintDecoder: VPackDecoder[BigInt]
implicit val booleanDecoder: VPackDecoder[Boolean]
implicit val byteDecoder: VPackDecoder[Byte]
implicit val byteVectorDecoder: VPackDecoder[ByteVector]
implicit val dateDecoder: VPackDecoder[Date]
implicit val doubleDecoder: VPackDecoder[Double]
implicit val floatDecoder: VPackDecoder[Float]
implicit val instantDecoder: VPackDecoder[Instant]
implicit val intDecoder: VPackDecoder[Int]
implicit def listDecoder[T](implicit d: VPackDecoder[T]): VPackDecoder[List[T]]
implicit val localDateDecoder: VPackDecoder[LocalDate]
implicit val longDecoder: VPackDecoder[Long]
implicit def mapDecoder[K, T](implicit kd: VPackKeyDecoder[K], td: VPackDecoder[T]): VPackDecoder[Map[K, T]]
implicit def optionDecoder[T](implicit d: VPackDecoder[T]): VPackDecoder[Option[T]]
implicit def seqDecoder[T](implicit d: VPackDecoder[T]): VPackDecoder[Seq[T]]
implicit def setDecoder[T](implicit d: VPackDecoder[T]): VPackDecoder[Set[T]]
implicit val shortDecoder: VPackDecoder[Short]
implicit val stringDecoder: VPackDecoder[String]
implicit val uriDecoder: VPackDecoder[URI]
implicit val urlDecoder: VPackDecoder[URL]
implicit val uuidDecoder: VPackDecoder[UUID]
implicit def vectorDecoder[T](implicit d: VPackDecoder[T]): VPackDecoder[Vector[T]]