Outcome
Produces instances of Outcome<T>.
using Polly.Utils;
using System;
using System.Runtime.CompilerServices;
using System.Threading.Tasks;
namespace Polly
{
[NullableContext(1)]
[Nullable(0)]
public static class Outcome
{
[Nullable(new byte[] {
0,
1
})]
internal static Outcome<VoidResult> Void {
[return: Nullable(new byte[] {
0,
1
})]
get {
return FromResult(VoidResult.Instance);
}
}
[NullableContext(2)]
[return: Nullable(new byte[] {
0,
1
})]
public static Outcome<TResult> FromResult<TResult>(TResult value)
{
return new Outcome<TResult>(value);
}
[return: Nullable(new byte[] {
0,
0,
1
})]
public static ValueTask<Outcome<TResult>> FromResultAsValueTask<[Nullable(2)] TResult>(TResult value)
{
return new ValueTask<Outcome<TResult>>(FromResult(value));
}
[return: Nullable(new byte[] {
0,
1
})]
public static Outcome<TResult> FromException<[Nullable(2)] TResult>(Exception exception)
{
Guard.NotNull(exception, "exception");
return new Outcome<TResult>(exception);
}
[return: Nullable(new byte[] {
0,
0,
1
})]
public static ValueTask<Outcome<TResult>> FromExceptionAsValueTask<[Nullable(2)] TResult>(Exception exception)
{
Guard.NotNull(exception, "exception");
return new ValueTask<Outcome<TResult>>(FromException<TResult>(exception));
}
[return: Nullable(new byte[] {
0,
1
})]
internal static Outcome<VoidResult> FromException(Exception exception)
{
return FromException<VoidResult>(exception);
}
}
}