This implicit function will gather all the evidence types that are needed to be
able to generate an instance of PropertyInfo[T]
.
This implicit function will gather all the evidence types that are needed to be
able to generate an instance of PropertyInfo[T]
.
The type in our program that we want to work with
The Shapeless representation of T
. lgen
can translate between T
and R
. Because
we're using a LabelledGeneric
, R
will be a record type, mapping from the name of
a property to it's type.
An HList of the types of the keys in the LabelledGeneric
record type
An HList of the types of the values in the LabelledGeneric
record type
A LabelledGeneric
for the type T
. Shapeless generates this for us
the collection of keys in R
An HList of the values in R
An instance of a type class that lets us fold over the types in V
Evidence that we can convert the HList
of keys (K
) to an ordinary List
of scala Symbol
s
An instance of the PropertyInfo
type class for the type T
A convenience object to provide a way to import the implicit generator in cases where you don't want to extend the trait.