How does Data.Generic deal with ToJSON?

I came across the following implementation of ToJSON using Data: json

How does it work if it doesn’t rely on any ToJSON instances explictly? Do I understand correctly it boils everything down to sum of products of primitive types using extQ case ladder?

1 Like