Pirating from the rust stdlib it would be nice to be able to easily aggregate
List<Result<T,TErr>>
//into
Result<List<T>, TError>;
Maybe look something like:
public static class CollectExtensions
{
public static Result<IEnumerable<TValue>, TError> Collect<TValue,TError>(this IEnumerable<Result<TValue,TError>> results)
{
var values = new List<TValue>();
foreach (var result in results)
{
if (result.IsError)
{
return result.Error;
}
values.Add(result.Value);
}
return values;
}
}
Pirating from the rust stdlib it would be nice to be able to easily aggregate
Maybe look something like: