Files
RoP/Rehlert.RoP/FallbackExtensions.cs
2025-07-26 16:27:52 +02:00

28 lines
608 B
C#

namespace Rehlert.RoP;
public static class FallbackExtensions
{
public static TIn FallbackWith<TIn, TErr>(this Result<TIn, TErr> value, TIn defaultValue)
{
var result = value.Match(
ok => ok.Value,
_ => defaultValue
);
return result;
}
public static async Task<TIn> FallbackWith<TIn, TErr>(
this Task<Result<TIn, TErr>> value,
TIn defaultValue
)
{
var valRes = await value;
var result = valRes.Match(
ok => ok.Value,
_ => defaultValue
);
return result;
}
}