Defined in The verb object Call signatures Return value A monadic type of the same kind Intercept the success value and force a transition to the failure state The dual of recover On expected the callback maps the value into the operand s existing error type fail never widens a graded error set and an operand already holding an error carries it over On optional the callback observes the value and must return void the result is empty Rejected on the identity carriers which have no failure state to enter over an uninhabited value side the operand passes through and the callback is neither invoked nor instantiated Use through the fn fail nielbloid fail_t fail 1 Fails a value the predicate selects x | fail f constexpr auto operator auto &&fn const > functor<fail_t decltype fn > 1 Intercept the success value and force a transition to the failure state return A functor that will fail the monadic type fn auto && On expected the function to map the value into the existing error type on optional the function to observe the value returning void