Lightweight automatic resource management Closes the resource when done e.g.
Lightweight automatic resource management Closes the resource when done e.g.
for { in <- file.newInputStream.autoClosed } in.write(bytes) // in is closed now
Provides an iterator that closes the underlying resource when done
Provides an iterator that closes the underlying resource when done
e.g.
inputStream.autoClosedIterator(_.read())(_ != -1).map(_.toByte)
next element from this resource
a function which tells if there is no more B left e.g. certain iterators may return nulls
An iterator that closes the underlying resource when done