unaryRun<T extends Object, S extends Object> function

ResultUnary<T, S> unaryRun<T extends Object, S extends Object>(
  1. Unary<T, S> function
)

takes as argument a Unary returns a ResultUnary

Implementation

ResultUnary<T, S> unaryRun<T extends Object, S extends Object>(
        Unary<T, S> function) =>
    (S arg) {
      try {
        return Result.success(function(arg));
      } on Error catch (e) {
        return Result.failure(e, e.stackTrace ?? StackTrace.empty);
      } on Exception catch (e, s) {
        return Result.failure(e, s);
      }
    };