我正在尝试通过将一个数据源与来自同一数据源的过滤版本合并来使用 scalaz-stream 创建一个循环过程。这是我到目前为止的一个简单示例:
val s1 = Process.emitAll(1 to 10).toSource
val w = wye.merge[Int]
val s2 = w.filter(_ < 5)
val w2 = s1.wye(s2)(w)
但它不会按原样编译,而是必须是s2
a 。Process[Process.Env[Int,Int]#Y,Int]
Process[Task,Int]
如何指定 s2 既是输入(带有s1
)又是输出w
?