Provide a generic function that can generate Shapeless Generic instances for
case classes with a single member, e.g. Foo(s: String) where the Generic.Repr
type is String rather than String :: HNil. From this we can build the various
binding types that Play uses, i.e. json Reads and Writes instances as well as
PathBindables and QueryStringBindables
Provide a generic function that can generate Shapeless Generic instances for case classes with a single member, e.g.
Foo(s: String)
where theGeneric.Repr
type isString
rather thanString :: HNil
. From this we can build the various binding types that Play uses, i.e. jsonReads
andWrites
instances as well asPathBindable
s andQueryStringBindable
s