inline fun <T : AutoCloseable?, R> T.use(block: (T) -> R): R (source)

Platform and version requirements: Kotlin 1.2, JVM, JRE7

Executes the given block function on this resource and then closes it down correctly whether an exception is thrown or not.

In case if the resource is being closed due to an exception occurred in block, and the closing also fails with an exception, the latter is added to the suppressed exceptions of the former.


block - a function to process this AutoCloseable resource.

Return the result of block function invoked on this resource.