在Scala Matryoshka中,是否可以对不改变形状的类型执行递归变换?

时间:2018-11-21 18:15:46

标签: scala recursion recursion-schemes

例如,我有一个类似AST的

sealed trait FilterF[A]
final case class NotF[A](filter: A) extends FilterF[A]
final case class EqF[A](field: String, value: Int) extends FilterF[A]

我想采用类似NotF(NotF(EqF("name", "mrunleaded")))的表达式并将其简化为EqF("name", "mrunleaded")

matryoshka.ana似乎想要一个Coalgebra的{​​{1}},而A => F[A]想要一个matryoshka.cata的{​​{1}},但是我想我需要来自Algebra

0 个答案:

没有答案