<PackageReference Include="Polly.Core" Version="8.5.2" />

Polly.PredicateBuilder<TResult>

public class PredicateBuilder<TResult>
Defines a builder for creating predicates for TResult and Exception combinations.
namespace Polly { public class PredicateBuilder<[System.Runtime.CompilerServices.Nullable(2)] TResult> { public static implicit operator Func<RetryPredicateArguments<TResult>, ValueTask<bool>>(PredicateBuilder<TResult> builder); public static implicit operator Func<HedgingPredicateArguments<TResult>, ValueTask<bool>>(PredicateBuilder<TResult> builder); public static implicit operator Func<FallbackPredicateArguments<TResult>, ValueTask<bool>>(PredicateBuilder<TResult> builder); public static implicit operator Func<CircuitBreakerPredicateArguments<TResult>, ValueTask<bool>>(PredicateBuilder<TResult> builder); public PredicateBuilder<TResult> Handle<[System.Runtime.CompilerServices.Nullable(0)] TException>() where TException : Exception; public PredicateBuilder<TResult> Handle<[System.Runtime.CompilerServices.Nullable(0)] TException>(Func<TException, bool> predicate) where TException : Exception; public PredicateBuilder<TResult> HandleInner<[System.Runtime.CompilerServices.Nullable(0)] TException>() where TException : Exception; public PredicateBuilder<TResult> HandleInner<[System.Runtime.CompilerServices.Nullable(0)] TException>(Func<TException, bool> predicate) where TException : Exception; public PredicateBuilder<TResult> HandleResult(Func<TResult, bool> predicate); public PredicateBuilder<TResult> HandleResult(TResult result, IEqualityComparer<TResult> comparer = null); public Predicate<Outcome<TResult>> Build(); public PredicateBuilder(); } }