try to execute an action an report any issue
try to execute an action an report any issue
Attempt to execute a safe action including finalizers
Attempt to execute a safe action including finalizers
get a resource A and use it.
get a resource A and use it. Call the release function whether an exception is thrown or not when using the resource
NOTE: Eff interpreters are independent so if there is an effect short-circuiting all computations inside 'use', like Option or Either then the release function will not be called. If you want to make sure that the release function is always called "at the end of the world and whatever happens" you need to call Eff.bracketLast
evaluate first action possibly having error effects
evaluate first action possibly having error effects
Execute a second action if the first one is not successful, based on the error
run a safe effect but drop the finalizer errors
run a safe effect but drop the finalizer errors
ignore one possible exception that could be thrown
ignore one possible exception that could be thrown
evaluate first action possibly having exceptions
evaluate first action possibly having exceptions
Execute a second action if the first one is not successful
evaluate first action possibly having error effects
evaluate first action possibly having error effects
Execute a second action if the first one is not successful and second is defined for the error
Run a safe effect
Run a safe effect
Collect finalizer exceptions if any
Memoize safe effects using a cache
Memoize safe effects using a cache
if this method is called with the same key the previous value will be returned
evaluate first action possibly having error effects execute a second action whether the first is successful or not but keep track of finalizer exceptions
evaluate first action possibly having error effects execute a second action whether the first is successful or not but keep track of finalizer exceptions
evaluate first action possibly throwing exceptions
evaluate first action possibly throwing exceptions
Execute a second action if the first one is not successful, based on the exception
The final value type is the same as the original type
evaluate first action possibly throwing exceptions
evaluate first action possibly throwing exceptions
Execute a second action if the first one is not successful and second is defined for the error
The final value type is the same as the original type