Miles Sabin

Results 92 comments of Miles Sabin

Gotcha. Scala function types don't encode the names of their arguments, so unfortunately what you ask isn't possible. Scala methods do, but they have the limitation that they're not first...

It does work with methods ... see [the tests](https://github.com/milessabin/shapeless/blob/master/core/src/test/scala/shapeless/records.scala#L881-L942) for `RecordArgs` and `FromRecordArgs`, or look at some of [the uses](https://github.com/search?l=&p=1&q=RecordArgs+language%3AScala&type=Code) in other projects :-)

> Is there also support for interfacing "normal" methods which are not inheritable in such a manner? No there isn't.

I think if it works with `Generic` but not `LabelledGeneric` then there's a reasonably good chance that this has a fairly straightforward fix.

This appears to be an interaction between the Scalaz encoding of tagging and shapeless's encoding of fields. With the following local definition of Scalaz tags, ``` scala type Tagged[A, T]...

It is supposed to only be a problem with Scalaz tagged types. If you have a reproduction with shapeless tagged types would you mind posting it here?

@Astrac something standalone would be helpful.

OK, thanks. I can reproduce the problem. It's different from the one in this ticket though ... it seems to be an interaction between `Lazy` and tagged types. Would you...

@joroKr21 interesting. Yes that does look like a scalac bug. Would you mind creating a ticket for it in scala/bug and I'll take a look.