arrow-fx / arrow.fx.extensions.io.bracket / arrow.Kind / bracket
@JvmName("bracket") fun <A, B> Kind<
ForIO
, A>.~~bracket~~(release: (A) -> Kind<
ForIO
,
Unit
>, use: (A) -> Kind<
ForIO
, B>):
IO
<B>
Deprecated: The IO datatype and it’s related type classes will disappear in Arrow 0.13.0. All useful operations are offered directly over suspend functions by Arrow Fx Coroutines. https://arrow-kt.io/docs/fx/async/
Meant for specifying tasks with safe resource acquisition and release in the face of errors and interruption.
It would be the the equivalent of try/catch/finally
statements in mainstream imperative languages for resource
acquisition and release.
release
- is the action that’s supposed to release the allocated resource after use
is done, irregardless
of its exit condition.
Do you like Arrow?
✖