unaryRunVoidAsync<T, S> function
takes as argument a UnaryAsync returns a VoidResultUnaryAsync
Implementation
VoidResultUnaryAsync<S> unaryRunVoidAsync<T, S>(
UnaryFutureOr<T, S> function,
) =>
(S arg) async {
try {
await function(arg);
return const VoidResult.success();
} on Error catch (e) {
return VoidResult.failure(e, e.stackTrace ?? StackTrace.empty);
} on Exception catch (e, s) {
return VoidResult.failure(e, s);
}
};