在Scrap Your Boilerplate package中,在
现在,
是否可能定义
Data.Generics.Aliases
中有函数允许对一元和二元类型构造函数进行类型扩展。特别地,定义了ext1
和ext2
。现在,
ext1
和ext2
是通过dataCast1
和dataCast2
来定义的,它们是Data
类型类的一部分,并且通常由DeriveDataTypeable
机制来定义。但是,没有dataCast3
,所以我看不到定义ext3
的简单方法。是否可能定义
ext3
,如果可以,怎么做呢?
gcast3
很容易,但我认为在Data
实例之外没有足够的类型信息来定义ext3
以使用gcast3
。 - scvalex