基本上我想转换这个:
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)