我有一个scalaz-stream进程:
val src = Process.repeatEval(Task(in.take())) : Process[Task, Option[T]]我如何摆脱选项?
到目前为止,我已经使用了collect,但感觉并不优雅:
src.collect { case Some(x) => x } : Process[Task, T]有没有更好的方法?
发布于 2016-03-28 08:08:49
您的解决方案是正确的,但是实现已经存在于process1.stripNone的scalaz-stream (<= 0.8)中
src.pipe(process1.stripNone)或
src |> process1.stripNone许多其他转换(可能是有状态的)都是在process1中定义的,因此值得在该文件中查找可能有用的转换。
https://stackoverflow.com/questions/35821484
复制相似问题