toResultAsync<T> method

Future<Result<List<ValidationNotification>, T>> toResultAsync<T>(
  1. Future<T> valueFn()
)

Versão assíncrona de toResult — útil quando value é produzido por uma função async (ex: parsing, lookup em cache).

final result = await contract.toResultAsync(() => fetchUser(id));

Implementation

Future<Result<List<ValidationNotification>, T>> toResultAsync<T>(
  Future<T> Function() valueFn,
) async {
  if (!isValid) return Result.failure(List.unmodifiable(notifications));
  return Result.success(await valueFn());
}