use
inline fun <T : AutoCloseable?, R> T.use(block: (T) -> R): R
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.
Parameters
block
- a function to process this AutoCloseable resource.
Return the result of block function invoked on this resource.