Scala3泛化编程,由于个人不太喜欢Shapeless3到处都是Any的API,
就参考Shapeless自己写了一套简单版的。
参考Shapeless的ProductInstances与CoproductInstances实现Generic.Product.Instances与Generic.Sum.Instances。
扩展原生Tuple,提供reverse、flatMap、traverse、sequence、foldLeft、foldRight、mapN等方法
参考The Type Astronaut's Guide to Shapeless Book实现的Migration类。
使用方式可以参考测试类。
参考alexarchambault/scalacheck-shapeless提供scalacheck的推导实例。 使用方式可以参考测试类。