fail package:polysemy

This effect abstracts the concept of MonadFail, which is a built-in mechanism that converts pattern matching errors to calls to the current monad's instance of that class. The instance defined in Polysemy.Internal uses this effect to catch those errors.
Run a Fail effect in terms of an underlying MonadFail instance.
Transform a Fail effect into an Error e effect, through providing a function for transforming any failure to an exception.
Transform a Fail effect into a NonDet effect, through mapping any failure to empty.
Run a Fail effect purely.