相关疑难解决方法(0)

生成器/块到迭代器/流转换

基本上我想转换这个:

def data(block: T => Unit)
Run Code Online (Sandbox Code Playgroud)

到Stream(dataToStream是执行此转换的假设函数):

val dataStream: Stream[T] = dataToStream(data)
Run Code Online (Sandbox Code Playgroud)

我想这个问题可以通过延续来解决:

// let's assume that we don't know how data is implemented
// we just know that it generates integers
def data(block: Int => Unit) { for (i <- 0 to 10) block(i) }

// here we can print all data integers
data { i => println(i) }

// >> but what we really want is to convert data to the stream <<

// very dumb solution is …
Run Code Online (Sandbox Code Playgroud)

continuations scala yield generator callback

14
推荐指数
2
解决办法
3313
查看次数

标签 统计

callback ×1

continuations ×1

generator ×1

scala ×1

yield ×1