<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Polly.Core</name>
    </assembly>
    <members>
        <member name="T:Polly.CircuitBreaker.BreakDurationGeneratorArguments">
            <summary>
            Represents arguments used to generate a dynamic break duration for a circuit breaker.
            </summary>
        </member>
        <member name="M:Polly.CircuitBreaker.BreakDurationGeneratorArguments.#ctor(System.Double,System.Int32,Polly.ResilienceContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.BreakDurationGeneratorArguments"/> struct.
            </summary>
            <param name="failureRate">The failure rate at which the circuit breaker should trip.
            It represents the ratio of failed actions to the total executed actions.</param>
            <param name="failureCount">The number of failures that have occurred.
            This count is used to determine if the failure threshold has been reached.</param>
            <param name="context">The resilience context providing additional information
            about the execution state and failures.</param>
        </member>
        <member name="M:Polly.CircuitBreaker.BreakDurationGeneratorArguments.#ctor(System.Double,System.Int32,Polly.ResilienceContext,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.BreakDurationGeneratorArguments"/> struct.
            </summary>
            <param name="failureRate">The failure rate at which the circuit breaker should trip.
            It represents the ratio of failed actions to the total executed actions.</param>
            <param name="failureCount">The number of failures that have occurred.
            This count is used to determine if the failure threshold has been reached.</param>
            <param name="context">The resilience context providing additional information
            about the execution state and failures.</param>
            <param name="halfOpenAttempts">The number of half-open attempts.</param>
        </member>
        <member name="P:Polly.CircuitBreaker.BreakDurationGeneratorArguments.FailureRate">
            <summary>
            Gets the failure rate that represents the ratio of failures to total actions.
            </summary>
        </member>
        <member name="P:Polly.CircuitBreaker.BreakDurationGeneratorArguments.FailureCount">
            <summary>
            Gets the count of failures that have occurred.
            </summary>
        </member>
        <member name="P:Polly.CircuitBreaker.BreakDurationGeneratorArguments.Context">
            <summary>
            Gets the context that provides additional information about the resilience operation.
            </summary>
        </member>
        <member name="P:Polly.CircuitBreaker.BreakDurationGeneratorArguments.HalfOpenAttempts">
            <summary>
            Gets the number of half-open attempts.
            </summary>
        </member>
        <member name="T:Polly.CircuitBreaker.BrokenCircuitException">
            <summary>
            Exception thrown when a circuit is broken.
            </summary>
        </member>
        <member name="M:Polly.CircuitBreaker.BrokenCircuitException.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.BrokenCircuitException"/> class.
            </summary>
        </member>
        <member name="M:Polly.CircuitBreaker.BrokenCircuitException.#ctor(System.TimeSpan)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.BrokenCircuitException"/> class.
            </summary>
            <param name="retryAfter">The period after which the circuit will close.</param>
        </member>
        <member name="M:Polly.CircuitBreaker.BrokenCircuitException.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.BrokenCircuitException"/> class.
            </summary>
            <param name="message">The message that describes the error.</param>
        </member>
        <member name="M:Polly.CircuitBreaker.BrokenCircuitException.#ctor(System.String,System.TimeSpan)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.BrokenCircuitException"/> class.
            </summary>
            <param name="message">The message that describes the error.</param>
            <param name="retryAfter">The period after which the circuit will close.</param>
        </member>
        <member name="M:Polly.CircuitBreaker.BrokenCircuitException.#ctor(System.String,System.Exception)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.BrokenCircuitException"/> class.
            </summary>
            <param name="message">The message that describes the error.</param>
            <param name="inner">The inner exception.</param>
        </member>
        <member name="M:Polly.CircuitBreaker.BrokenCircuitException.#ctor(System.String,System.TimeSpan,System.Exception)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.BrokenCircuitException"/> class.
            </summary>
            <param name="message">The message that describes the error.</param>
            <param name="retryAfter">The period after which the circuit will close.</param>
            <param name="inner">The inner exception.</param>
        </member>
        <member name="M:Polly.CircuitBreaker.BrokenCircuitException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.BrokenCircuitException"/> class.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> that holds the serialized object data about the exception being thrown.</param>
            <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext" /> that contains contextual information about the source or destination.</param>
        </member>
        <member name="M:Polly.CircuitBreaker.BrokenCircuitException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <inheritdoc/>
        </member>
        <member name="P:Polly.CircuitBreaker.BrokenCircuitException.RetryAfter">
            <summary>
            Gets the amount of time before the circuit can become closed, if known.
            </summary>
            <remarks>
            This value is specified when the instance is constructed and may be inaccurate if consumed at a later time.
            Can be <see langword="null"/> if not provided or if the circuit was manually isolated.
            </remarks>
        </member>
        <member name="T:Polly.CircuitBreaker.CircuitBreakerManualControl">
            <summary>
            Allows manual control of the circuit-breaker.
            </summary>
            <remarks>
            The instance of this class can be reused across multiple circuit breakers.
            </remarks>
        </member>
        <member name="M:Polly.CircuitBreaker.CircuitBreakerManualControl.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.CircuitBreakerManualControl"/> class.
            </summary>
        </member>
        <member name="M:Polly.CircuitBreaker.CircuitBreakerManualControl.#ctor(System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.CircuitBreakerManualControl"/> class.
            </summary>
            <param name="isIsolated">Determines whether the circuit breaker is isolated immediately after construction.</param>
        </member>
        <member name="M:Polly.CircuitBreaker.CircuitBreakerManualControl.IsolateAsync(Polly.ResilienceContext)">
            <summary>
            Isolates (opens) the circuit manually, and holds it in this state until a call to <see cref="M:Polly.CircuitBreaker.CircuitBreakerManualControl.CloseAsync(System.Threading.CancellationToken)"/> is made.
            </summary>
            <param name="context">The resilience context.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.Task"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="context"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ObjectDisposedException">Thrown when calling this method after this object is disposed.</exception>
        </member>
        <member name="M:Polly.CircuitBreaker.CircuitBreakerManualControl.IsolateAsync(System.Threading.CancellationToken)">
            <summary>
            Isolates (opens) the circuit manually, and holds it in this state until a call to <see cref="M:Polly.CircuitBreaker.CircuitBreakerManualControl.CloseAsync(System.Threading.CancellationToken)"/> is made.
            </summary>
            <param name="cancellationToken">The cancellation token.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.Task"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ObjectDisposedException">Thrown when calling this method after this object is disposed.</exception>
        </member>
        <member name="M:Polly.CircuitBreaker.CircuitBreakerManualControl.CloseAsync(Polly.ResilienceContext)">
            <summary>
            Closes the circuit, and resets any statistics controlling automated circuit-breaking.
            </summary>
            <param name="context">The resilience context.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.Task"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="context"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ObjectDisposedException">Thrown when calling this method after this object is disposed.</exception>
        </member>
        <member name="M:Polly.CircuitBreaker.CircuitBreakerManualControl.CloseAsync(System.Threading.CancellationToken)">
            <summary>
            Closes the circuit, and resets any statistics controlling automated circuit-breaking.
            </summary>
            <param name="cancellationToken">The cancellation token.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.Task"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ObjectDisposedException">Thrown when calling this method after this object is disposed.</exception>
        </member>
        <member name="T:Polly.CircuitBreaker.CircuitBreakerPredicateArguments`1">
            <summary>
            Arguments used by <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.ShouldHandle"/> predicate.
            </summary>
            <typeparam name="TResult">The type of result.</typeparam>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.CircuitBreaker.CircuitBreakerPredicateArguments`1.#ctor(Polly.ResilienceContext,Polly.Outcome{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.CircuitBreakerPredicateArguments`1"/> struct.
            </summary>
            <param name="outcome">The context in which the resilience operation or event occurred.</param>
            <param name="context">The outcome of the resilience operation or event.</param>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerPredicateArguments`1.Outcome">
            <summary>
            Gets the outcome of the user-specified callback.
            </summary>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerPredicateArguments`1.Context">
            <summary>
            Gets the context of this event.
            </summary>
        </member>
        <member name="T:Polly.CircuitBreaker.CircuitBreakerStateProvider">
            <summary>
            Allows retrieval of the circuit breaker state.
            </summary>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerStateProvider.IsInitialized">
            <summary>
            Gets a value indicating whether the state provider is initialized.
            </summary>
            <remarks>
            The initialization happens when the circuit-breaker strategy is attached to this class.
            This happens when the final strategy is created by the <see cref="M:Polly.ResiliencePipelineBuilder.Build"/> call.
            </remarks>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerStateProvider.CircuitState">
            <summary>
            Gets the state of the underlying circuit.
            </summary>
        </member>
        <member name="T:Polly.CircuitBreaker.CircuitBreakerStrategyOptions">
            <inheritdoc/>
        </member>
        <member name="T:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1">
            <summary>
            The options for circuit breaker resilience strategy.
            </summary>
            <typeparam name="TResult">The type of result the circuit breaker strategy handles.</typeparam>
            <remarks>
            The circuit will break if, within any time-slice of duration <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.SamplingDuration"/>,
            the proportion of actions resulting in a handled exception exceeds <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.FailureRatio"/>,
            provided also that the number of actions through the circuit in the time-slice is at least <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.MinimumThroughput"/>.
            <para>
            The circuit will stay broken for the <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.BreakDuration"/>.
            Any attempt to execute this while the circuit is broken, will immediately throw a <see cref="T:Polly.CircuitBreaker.BrokenCircuitException"/> containing the exception
            that broke the circuit.
            </para>
            <para>
            If the first action after the break duration period results in a handled exception, the circuit will break
            again for another <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.BreakDuration"/>; if no exception is thrown, the circuit will reset.
            </para>
            </remarks>
        </member>
        <member name="M:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1"/> class.
            </summary>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.FailureRatio">
            <summary>
            Gets or sets the failure-to-success ratio at which the circuit will break.
            </summary>
            <remarks>
            A number between zero and one (inclusive) e.g. 0.5 represents breaking if 50% or more of actions result in a handled failure.
            </remarks>
            <value>A ratio number higher than 0, up to 1. The default value is 0.1 (i.e. 10%).</value>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.MinimumThroughput">
            <summary>
            Gets or sets the minimum throughput: this many actions or more must pass through the circuit in the time-slice,
            for statistics to be considered significant and the circuit-breaker to come into action.
            </summary>
            <value>
            The default value is 100. The value must be 2 or greater.
            </value>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.SamplingDuration">
            <summary>
            Gets or sets the duration of the sampling over which failure ratios are assessed.
            </summary>
            <value>
            The default value is 30 seconds. Value must be greater than 0.5 seconds.
            </value>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.BreakDuration">
            <summary>
            Gets or sets the duration of break the circuit will stay open before resetting.
            </summary>
            <value>
            The default value is 5 seconds. Value must be greater than 0.5 seconds.
            </value>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.BreakDurationGenerator">
            <summary>
            Gets or sets an optional delegate to use to dynamically generate the break duration.
            </summary>
            <value>
            The default value is <see langword="null"/>.
            </value>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.ShouldHandle">
            <summary>
            Gets or sets a predicate that determines whether the outcome should be handled by the circuit breaker.
            </summary>
            <value>
            The default value is a predicate that handles circuit breaker on any exception except <see cref="T:System.OperationCanceledException"/>.
            This property is required.
            </value>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnClosed">
            <summary>
            Gets or sets the event that is raised when the circuit resets to a <see cref="F:Polly.CircuitBreaker.CircuitState.Closed"/> state.
            </summary>
            <remarks>
            The callbacks registered to this event are invoked with eventual consistency. There is no guarantee that the circuit breaker
            doesn't change the state before the callbacks finish. If you need to know the up-to-date state of the circuit breaker use
            the <see cref="P:Polly.CircuitBreaker.CircuitBreakerStateProvider.CircuitState"/> property.
            <para>
            Note that these events might be executed asynchronously at a later time when the circuit state is no longer the same as at the point of invocation of the event.
            However, the invocation order of the <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnOpened"/>, <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnClosed"/>, and <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnHalfOpened"/> events is always
            maintained to ensure the correct sequence of state transitions.
            </para>
            </remarks>
            <value>The default value is <see langword="null"/>.</value>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnOpened">
            <summary>
            Gets or sets the event that is raised when the circuit transitions to an <see cref="F:Polly.CircuitBreaker.CircuitState.Open"/> state.
            </summary>
            <remarks>
            The callbacks registered to this event are invoked with eventual consistency. There is no guarantee that the circuit breaker
            doesn't change the state before the callbacks finish. If you need to know the up-to-date state of the circuit breaker use
            the <see cref="P:Polly.CircuitBreaker.CircuitBreakerStateProvider.CircuitState"/> property.
            <para>
            Note that these events might be executed asynchronously at a later time when the circuit state is no longer the same as at the point of invocation of the event.
            However, the invocation order of the <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnOpened"/>, <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnClosed"/>, and <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnHalfOpened"/> events is always
            maintained to ensure the correct sequence of state transitions.
            </para>
            </remarks>
            <value>The default value is <see langword="null"/>.</value>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnHalfOpened">
            <summary>
            Gets or sets the event that is raised when when the circuit transitions to an <see cref="F:Polly.CircuitBreaker.CircuitState.HalfOpen"/> state.
            </summary>
            <remarks>
            The callbacks registered to this event are invoked with eventual consistency. There is no guarantee that the circuit breaker
            doesn't change the state before the callbacks finish. If you need to know the up-to-date state of the circuit breaker use
            the <see cref="P:Polly.CircuitBreaker.CircuitBreakerStateProvider.CircuitState"/> property.
            <para>
            Note that these events might be executed asynchronously at a later time when the circuit state is no longer the same as at the point of invocation of the event.
            However, the invocation order of the <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnOpened"/>, <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnClosed"/>, and <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnHalfOpened"/> events is always
            maintained to ensure the correct sequence of state transitions.
            </para>
            </remarks>
            <value>The default value is <see langword="null"/>.</value>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.ManualControl">
            <summary>
            Gets or sets the manual control for the circuit breaker.
            </summary>
            <value>The default value is <see langword="null"/>.</value>
        </member>
        <member name="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.StateProvider">
            <summary>
            Gets or sets the state provider for the circuit breaker.
            </summary>
            <value>The default value is <see langword="null"/>.</value>
        </member>
        <member name="T:Polly.CircuitBreaker.CircuitState">
            <summary>
            Describes the possible states the circuit of a Circuit Breaker may be in.
            </summary>
        </member>
        <member name="F:Polly.CircuitBreaker.CircuitState.Closed">
            <summary>
            Closed - When the circuit is closed. Execution of actions is allowed.
            </summary>
        </member>
        <member name="F:Polly.CircuitBreaker.CircuitState.Open">
            <summary>
            Open - When the automated controller has opened the circuit (typically due to some failure threshold being exceeded by recent actions). Execution of actions is blocked.
            </summary>
        </member>
        <member name="F:Polly.CircuitBreaker.CircuitState.HalfOpen">
            <summary>
            Half-open - When the circuit is half-open, it is recovering from an open state.
            The duration of break of the preceding open state has typically passed.
            In the half-open state, actions may be executed, but the results of these actions may be treated with criteria different to normal operation,
            to decide if the circuit has recovered sufficiently to be placed back in to the closed state,
            or if continuing failures mean the circuit should revert to open perhaps more quickly than in normal operation.
            </summary>
        </member>
        <member name="F:Polly.CircuitBreaker.CircuitState.Isolated">
            <summary>
            Isolated - When the circuit has been placed into a fixed open state by the isolate call.
            This isolates the circuit manually, blocking execution of all actions until a reset call is made.
            </summary>
        </member>
        <member name="T:Polly.CircuitBreaker.CircuitBehavior">
            <summary>
            Defines the behavior of circuit breaker. All methods on this class are performed under a lock.
            </summary>
        </member>
        <member name="T:Polly.CircuitBreaker.CircuitStateController`1">
            <summary>
            Thread-safe controller that holds and manages the circuit breaker state transitions.
            </summary>
        </member>
        <member name="T:Polly.CircuitBreaker.ScheduledTaskExecutor">
            <summary>
            The scheduled task executor makes sure that tasks are executed in the order they were scheduled and not concurrently.
            </summary>
        </member>
        <member name="T:Polly.CircuitBreaker.Health.HealthMetrics">
            <summary>
            The health metrics for advanced circuit breaker.
            All operations here are executed from <see cref="T:Polly.CircuitBreaker.CircuitStateController`1"/> under a lock and are thread safe.
            </summary>
        </member>
        <member name="T:Polly.CircuitBreaker.Health.RollingHealthMetrics">
            <inheritdoc/>
        </member>
        <member name="T:Polly.CircuitBreaker.Health.SingleHealthMetrics">
            <inheritdoc/>
        </member>
        <member name="T:Polly.CircuitBreaker.IsolatedCircuitException">
            <summary>
            Exception thrown when a circuit is isolated (held open) by manual override.
            </summary>
        </member>
        <member name="M:Polly.CircuitBreaker.IsolatedCircuitException.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.IsolatedCircuitException"/> class.
            </summary>
        </member>
        <member name="M:Polly.CircuitBreaker.IsolatedCircuitException.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.IsolatedCircuitException"/> class.
            </summary>
            <param name="message">The message that describes the error.</param>
        </member>
        <member name="M:Polly.CircuitBreaker.IsolatedCircuitException.#ctor(System.String,System.Exception)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.IsolatedCircuitException"/> class.
            </summary>
            <param name="message">The message that describes the error.</param>
            <param name="innerException">The inner exception.</param>
        </member>
        <member name="M:Polly.CircuitBreaker.IsolatedCircuitException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.IsolatedCircuitException"/> class.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> that holds the serialized object data about the exception being thrown.</param>
            <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext" /> that contains contextual information about the source or destination.</param>
        </member>
        <member name="T:Polly.CircuitBreaker.OnCircuitClosedArguments`1">
            <summary>
            Arguments used by <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnClosed"/> event.
            </summary>
            <typeparam name="TResult">The type of result.</typeparam>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.CircuitBreaker.OnCircuitClosedArguments`1.#ctor(Polly.ResilienceContext,Polly.Outcome{`0},System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.OnCircuitClosedArguments`1"/> struct.
            </summary>
            <param name="outcome">The context in which the resilience operation or event occurred.</param>
            <param name="context">The outcome of the resilience operation or event.</param>
            <param name="isManual">Indicates whether the circuit was closed manually by using <see cref="T:Polly.CircuitBreaker.CircuitBreakerManualControl"/>.</param>
        </member>
        <member name="P:Polly.CircuitBreaker.OnCircuitClosedArguments`1.Outcome">
            <summary>
            Gets the outcome that caused the circuit breaker to be closed.
            </summary>
        </member>
        <member name="P:Polly.CircuitBreaker.OnCircuitClosedArguments`1.Context">
            <summary>
            Gets the context of this event.
            </summary>
        </member>
        <member name="P:Polly.CircuitBreaker.OnCircuitClosedArguments`1.IsManual">
            <summary>
            Gets a value indicating whether the circuit was closed manually by using <see cref="T:Polly.CircuitBreaker.CircuitBreakerManualControl"/>.
            </summary>
        </member>
        <member name="T:Polly.CircuitBreaker.OnCircuitHalfOpenedArguments">
            <summary>
            Arguments used by <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnHalfOpened"/> event.
            </summary>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.CircuitBreaker.OnCircuitHalfOpenedArguments.#ctor(Polly.ResilienceContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.OnCircuitHalfOpenedArguments"/> struct.
            </summary>
            <param name="context">The context instance.</param>
        </member>
        <member name="P:Polly.CircuitBreaker.OnCircuitHalfOpenedArguments.Context">
            <summary>
            Gets the context associated with the execution of a user-provided callback.
            </summary>
        </member>
        <member name="T:Polly.CircuitBreaker.OnCircuitOpenedArguments`1">
            <summary>
            Arguments used by <see cref="P:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1.OnOpened"/> event.
            </summary>
            <typeparam name="TResult">The type of result.</typeparam>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.CircuitBreaker.OnCircuitOpenedArguments`1.#ctor(Polly.ResilienceContext,Polly.Outcome{`0},System.TimeSpan,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.CircuitBreaker.OnCircuitOpenedArguments`1"/> struct.
            </summary>
            <param name="outcome">The context in which the resilience operation or event occurred.</param>
            <param name="context">The outcome of the resilience operation or event.</param>
            <param name="breakDuration">The duration of break.</param>
            <param name="isManual">Indicates whether the circuit was opened manually by using <see cref="T:Polly.CircuitBreaker.CircuitBreakerManualControl"/>.</param>
        </member>
        <member name="P:Polly.CircuitBreaker.OnCircuitOpenedArguments`1.Outcome">
            <summary>
            Gets the outcome that caused the circuit to open.
            </summary>
        </member>
        <member name="P:Polly.CircuitBreaker.OnCircuitOpenedArguments`1.Context">
            <summary>
            Gets the context of this event.
            </summary>
        </member>
        <member name="P:Polly.CircuitBreaker.OnCircuitOpenedArguments`1.BreakDuration">
            <summary>
            Gets the duration of break.
            </summary>
        </member>
        <member name="P:Polly.CircuitBreaker.OnCircuitOpenedArguments`1.IsManual">
            <summary>
            Gets a value indicating whether the circuit was opened manually by using <see cref="T:Polly.CircuitBreaker.CircuitBreakerManualControl"/>.
            </summary>
        </member>
        <member name="T:Polly.CircuitBreakerResiliencePipelineBuilderExtensions">
            <summary>
            Circuit breaker extensions for <see cref="T:Polly.ResiliencePipelineBuilder"/>.
            </summary>
        </member>
        <member name="M:Polly.CircuitBreakerResiliencePipelineBuilderExtensions.AddCircuitBreaker(Polly.ResiliencePipelineBuilder,Polly.CircuitBreaker.CircuitBreakerStrategyOptions)">
            <summary>
            Adds circuit breaker to the builder.
            </summary>
            <param name="builder">The builder instance.</param>
            <param name="options">The options instance.</param>
            <returns>A builder with the circuit breaker added.</returns>
            <remarks>
            See <see cref="T:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1"/> for more details about the circuit breaker.
            <para>
            If you are discarding the circuit breaker by this call make sure to use <see cref="T:Polly.CircuitBreaker.CircuitBreakerManualControl"/>
            and dispose the manual control instance when the circuit breaker is no longer used.
            </para>
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> or <paramref name="options"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when <paramref name="options"/> are invalid.</exception>
        </member>
        <member name="M:Polly.CircuitBreakerResiliencePipelineBuilderExtensions.AddCircuitBreaker``1(Polly.ResiliencePipelineBuilder{``0},Polly.CircuitBreaker.CircuitBreakerStrategyOptions{``0})">
            <summary>
            Adds circuit breaker to the builder.
            </summary>
            <typeparam name="TResult">The type of result the circuit breaker handles.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="options">The options instance.</param>
            <returns>A builder with the circuit breaker added.</returns>
            <remarks>
            See <see cref="T:Polly.CircuitBreaker.CircuitBreakerStrategyOptions`1"/> for more details about the circuit breaker.
            <para>
            If you are discarding the circuit breaker by this call make sure to use <see cref="T:Polly.CircuitBreaker.CircuitBreakerManualControl"/>
            and dispose the manual control instance when the circuit breaker is no longer used.
            </para>
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> or <paramref name="options"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when <paramref name="options"/> are invalid.</exception>
        </member>
        <member name="T:Polly.DelayBackoffType">
            <summary>
            The backoff type used by the strategies.
            </summary>
        </member>
        <member name="F:Polly.DelayBackoffType.Constant">
            <summary>
            The constant backoff type.
            </summary>
            <example>
            200ms, 200ms, 200ms, etc.
            </example>
            <remarks>
            Ensures a constant backoff for each attempt.
            </remarks>
        </member>
        <member name="F:Polly.DelayBackoffType.Linear">
            <summary>
            The linear backoff type.
            </summary>
            <example>
            100ms, 200ms, 300ms, 400ms, etc.
            </example>
            <remarks>
            Generates backoffs in an linear manner.
            In the case randomization introduced by the jitter and exponential growth are not appropriate,
            the linear growth allows for more precise control over the backoff intervals.
            </remarks>
        </member>
        <member name="F:Polly.DelayBackoffType.Exponential">
            <summary>
            The exponential backoff type with the power of 2.
            </summary>
            <example>
            200ms, 400ms, 800ms.
            </example>
        </member>
        <member name="T:Polly.ExecutionRejectedException">
            <summary>
            Exception thrown when a policy rejects execution of a delegate.
            <remarks>More specific exceptions which derive from this type, are generally thrown.</remarks>
            </summary>
        </member>
        <member name="M:Polly.ExecutionRejectedException.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.ExecutionRejectedException"/> class.
            </summary>
        </member>
        <member name="M:Polly.ExecutionRejectedException.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.ExecutionRejectedException"/> class.
            </summary>
            <param name="message">The message that describes the error.</param>
        </member>
        <member name="M:Polly.ExecutionRejectedException.#ctor(System.String,System.Exception)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.ExecutionRejectedException"/> class.
            </summary>
            <param name="message">The message that describes the error.</param>
            <param name="inner">The inner exception.</param>
        </member>
        <member name="M:Polly.ExecutionRejectedException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.ExecutionRejectedException"/> class.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> that holds the serialized object data about the exception being thrown.</param>
            <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext" /> that contains contextual information about the source or destination.</param>
        </member>
        <member name="P:Polly.ExecutionRejectedException.TelemetrySource">
            <summary>
            Gets the source of the strategy which has thrown the exception, if known.
            </summary>
        </member>
        <member name="T:Polly.Fallback.FallbackActionArguments`1">
            <summary>
            Arguments used by <see cref="P:Polly.Fallback.FallbackStrategyOptions`1.FallbackAction"/>.
            </summary>
            <typeparam name="TResult">The type of result.</typeparam>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.Fallback.FallbackActionArguments`1.#ctor(Polly.ResilienceContext,Polly.Outcome{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Fallback.FallbackActionArguments`1"/> struct.
            </summary>
            <param name="outcome">The context in which the resilience operation or event occurred.</param>
            <param name="context">The outcome of the resilience operation or event.</param>
        </member>
        <member name="P:Polly.Fallback.FallbackActionArguments`1.Outcome">
            <summary>
            Gets the outcome that should be handled by the fallback.
            </summary>
        </member>
        <member name="P:Polly.Fallback.FallbackActionArguments`1.Context">
            <summary>
            Gets the context of this event.
            </summary>
        </member>
        <member name="T:Polly.Fallback.FallbackPredicateArguments`1">
            <summary>
            Represents arguments used in fallback handling scenarios.
            </summary>
            <typeparam name="TResult">The type of result.</typeparam>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.Fallback.FallbackPredicateArguments`1.#ctor(Polly.ResilienceContext,Polly.Outcome{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Fallback.FallbackPredicateArguments`1"/> struct.
            </summary>
            <param name="outcome">The context in which the resilience operation or event occurred.</param>
            <param name="context">The outcome of the resilience operation or event.</param>
        </member>
        <member name="P:Polly.Fallback.FallbackPredicateArguments`1.Outcome">
            <summary>
            Gets the outcome of the user-specified callback.
            </summary>
        </member>
        <member name="P:Polly.Fallback.FallbackPredicateArguments`1.Context">
            <summary>
            Gets the context of this event.
            </summary>
        </member>
        <member name="T:Polly.Fallback.FallbackStrategyOptions`1">
            <summary>
            Represents the options for configuring a fallback resilience strategy with a specific result type.
            </summary>
            <typeparam name="TResult">The result type.</typeparam>
        </member>
        <member name="M:Polly.Fallback.FallbackStrategyOptions`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Fallback.FallbackStrategyOptions`1"/> class.
            </summary>
        </member>
        <member name="P:Polly.Fallback.FallbackStrategyOptions`1.ShouldHandle">
            <summary>
            Gets or sets a predicate that determines whether the fallback should be executed for a given outcome.
            </summary>
            <value>
            The default value is a predicate that falls back on any exception except <see cref="T:System.OperationCanceledException"/>. This property is required.
            </value>
        </member>
        <member name="P:Polly.Fallback.FallbackStrategyOptions`1.FallbackAction">
            <summary>
            Gets or sets the fallback action to be executed when the <see cref="P:Polly.Fallback.FallbackStrategyOptions`1.ShouldHandle"/> predicate evaluates as true.
            </summary>
            <value>
            The default value is <see langword="null"/>. This property is required.
            </value>
        </member>
        <member name="P:Polly.Fallback.FallbackStrategyOptions`1.OnFallback">
            <summary>
            Gets or sets event delegate that is raised when fallback happens.
            </summary>
            <value>
            The default value is <see langword="null"/> instance.
            </value>
        </member>
        <member name="T:Polly.Fallback.OnFallbackArguments`1">
            <summary>
            Represents arguments used in fallback handling scenarios.
            </summary>
            <typeparam name="TResult">The type of result.</typeparam>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.Fallback.OnFallbackArguments`1.#ctor(Polly.ResilienceContext,Polly.Outcome{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Fallback.OnFallbackArguments`1"/> struct.
            </summary>
            <param name="context">The outcome of the resilience operation or event.</param>
            <param name="outcome">The context in which the resilience operation or event occurred.</param>
        </member>
        <member name="P:Polly.Fallback.OnFallbackArguments`1.Outcome">
            <summary>
            Gets the outcome that caused the fallback to be executed.
            </summary>
        </member>
        <member name="P:Polly.Fallback.OnFallbackArguments`1.Context">
            <summary>
            Gets the context of this event.
            </summary>
        </member>
        <member name="T:Polly.FallbackResiliencePipelineBuilderExtensions">
            <summary>
            Extensions for adding fallback to <see cref="T:Polly.ResiliencePipelineBuilder"/>.
            </summary>
        </member>
        <member name="M:Polly.FallbackResiliencePipelineBuilderExtensions.AddFallback``1(Polly.ResiliencePipelineBuilder{``0},Polly.Fallback.FallbackStrategyOptions{``0})">
            <summary>
            Adds a fallback resilience strategy with the provided options to the builder.
            </summary>
            <typeparam name="TResult">The result type.</typeparam>
            <param name="builder">The resilience pipeline builder.</param>
            <param name="options">The options to configure the fallback resilience strategy.</param>
            <returns>The builder instance with the fallback strategy added.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> or <paramref name="options"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when <paramref name="options"/> are invalid.</exception>
        </member>
        <member name="T:Polly.Hedging.Utils.HedgingExecutionContext`1">
            <summary>
            The context associated with an execution of hedging resilience strategy.
            It holds the resources for all executed hedged tasks (primary + secondary) and is responsible for resource disposal.
            </summary>
        </member>
        <member name="T:Polly.Hedging.Controller.TaskExecution`1">
             <summary>
             Represents a single hedging attempt execution alongside all the necessary resources. These are:
            
             <list type="bullet">
             <item>
             Distinct <see cref="T:Polly.ResilienceContext"/> instance for this execution.
             One exception are primary task where the main context is reused.
             </item>
             <item>
             The cancellation token associated with the execution.
             </item>
             </list>
             </summary>
        </member>
        <member name="P:Polly.Hedging.Controller.TaskExecution`1.ExecutionTaskSafe">
            <summary>
            Gets the task that represents the execution of the hedged task.
            </summary>
            <remarks>
            This property is not-null once the <see cref="T:Polly.Hedging.Controller.TaskExecution`1"/> is initialized.
            Awaiting this task will never throw as all exceptions are caught and stored
            into <see cref="P:Polly.Hedging.Controller.TaskExecution`1.Outcome"/> property.
            </remarks>
        </member>
        <member name="T:Polly.Hedging.HedgingActionGeneratorArguments`1">
            <summary>
            Represents arguments used in the hedging resilience strategy.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <remarks>
            The <see cref="P:Polly.Hedging.HedgingActionGeneratorArguments`1.PrimaryContext"/> represents the context that was received by the hedging strategy and used to execute the primary action.
            To prevent race conditions, the hedging strategy then clones the primary context into <see cref="P:Polly.Hedging.HedgingActionGeneratorArguments`1.ActionContext"/> and uses it to execute the hedged action.
            Every hedged action gets its own context that is cloned from the primary.
            <para>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </para>
            </remarks>
        </member>
        <member name="M:Polly.Hedging.HedgingActionGeneratorArguments`1.#ctor(Polly.ResilienceContext,Polly.ResilienceContext,System.Int32,System.Func{Polly.ResilienceContext,System.Threading.Tasks.ValueTask{Polly.Outcome{`0}}})">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Hedging.HedgingActionGeneratorArguments`1"/> struct.
            </summary>
            <param name="primaryContext">The primary context received by the hedging strategy.</param>
            <param name="actionContext">The action context cloned from the primary context.</param>
            <param name="attemptNumber">The zero-based hedging attempt number.</param>
            <param name="callback">The callback passed to the hedging strategy.</param>
        </member>
        <member name="P:Polly.Hedging.HedgingActionGeneratorArguments`1.PrimaryContext">
            <summary>
            Gets the primary resilience context as received by the hedging strategy.
            </summary>
        </member>
        <member name="P:Polly.Hedging.HedgingActionGeneratorArguments`1.ActionContext">
            <summary>
            Gets the action context that will be used for the hedged action.
            </summary>
            <remarks>
            This context is cloned from <see cref="P:Polly.Hedging.HedgingActionGeneratorArguments`1.PrimaryContext"/>.
            </remarks>
        </member>
        <member name="P:Polly.Hedging.HedgingActionGeneratorArguments`1.AttemptNumber">
            <summary>
            Gets the zero-based hedging attempt number.
            </summary>
        </member>
        <member name="P:Polly.Hedging.HedgingActionGeneratorArguments`1.Callback">
            <summary>
            Gets the callback passed to the hedging strategy.
            </summary>
        </member>
        <member name="T:Polly.Hedging.HedgingDelayGeneratorArguments">
            <summary>
            Arguments used by hedging delay generator.
            </summary>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.Hedging.HedgingDelayGeneratorArguments.#ctor(Polly.ResilienceContext,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Hedging.HedgingDelayGeneratorArguments"/> struct.
            </summary>
            <param name="context">The context associated with the execution of a user-provided callback.</param>
            <param name="attemptNumber">The zero-based hedging attempt number.</param>
        </member>
        <member name="P:Polly.Hedging.HedgingDelayGeneratorArguments.Context">
            <summary>
            Gets the context associated with the execution of a user-provided callback.
            </summary>
        </member>
        <member name="P:Polly.Hedging.HedgingDelayGeneratorArguments.AttemptNumber">
            <summary>
            Gets the zero-based hedging attempt number.
            </summary>
        </member>
        <member name="T:Polly.Hedging.HedgingPredicateArguments`1">
            <summary>
            Represents arguments used in hedging handling scenarios.
            </summary>
            <typeparam name="TResult">The type of result.</typeparam>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.Hedging.HedgingPredicateArguments`1.#ctor(Polly.ResilienceContext,Polly.Outcome{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Hedging.HedgingPredicateArguments`1"/> struct.
            </summary>
            <param name="outcome">The context in which the resilience operation or event occurred.</param>
            <param name="context">The outcome of the resilience operation or event.</param>
        </member>
        <member name="P:Polly.Hedging.HedgingPredicateArguments`1.Outcome">
            <summary>
            Gets the outcome of the user-specified callback.
            </summary>
        </member>
        <member name="P:Polly.Hedging.HedgingPredicateArguments`1.Context">
            <summary>
            Gets the context of this event.
            </summary>
        </member>
        <member name="T:Polly.Hedging.HedgingStrategyOptions`1">
            <summary>
            Hedging strategy options.
            </summary>
            <typeparam name="TResult">The type of result these hedging options handle.</typeparam>
        </member>
        <member name="M:Polly.Hedging.HedgingStrategyOptions`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Hedging.HedgingStrategyOptions`1"/> class.
            </summary>
        </member>
        <member name="P:Polly.Hedging.HedgingStrategyOptions`1.Delay">
            <summary>
            Gets or sets the maximum waiting time before spawning a new hedged action.
            </summary>
            <remarks>
            You can use <see cref="F:System.TimeSpan.Zero"/> to create all hedged actions (value of <see cref="P:Polly.Hedging.HedgingStrategyOptions`1.MaxHedgedAttempts"/>) at once
            or <see cref="F:System.Threading.Timeout.InfiniteTimeSpan"/> to force the hedging strategy to never create new action before the old one is finished.
            <para> If you want a greater control over hedging delay customization use <see cref="P:Polly.Hedging.HedgingStrategyOptions`1.DelayGenerator"/>.</para>
            </remarks>
            <value>
            The default value is 2 seconds.
            </value>
        </member>
        <member name="P:Polly.Hedging.HedgingStrategyOptions`1.MaxHedgedAttempts">
            <summary>
            Gets or sets the maximum number of hedged actions to use, in addition to the original action.
            </summary>
            <value>
            The default value is 1. The value must be bigger or equal to 1, and lower or equal to 10.
            </value>
        </member>
        <member name="P:Polly.Hedging.HedgingStrategyOptions`1.ShouldHandle">
            <summary>
            Gets or sets a predicate that determines whether the hedging should be executed for a given outcome.
            </summary>
            <value>
            The default value is a predicate that hedges on any exception except <see cref="T:System.OperationCanceledException"/>.
            This property is required.
            </value>
        </member>
        <member name="P:Polly.Hedging.HedgingStrategyOptions`1.ActionGenerator">
            <summary>
            Gets or sets a generator that creates hedged actions.
            </summary>
            <value>
            The default generator executes the original callback that was passed to the hedging resilience strategy. This property is required.
            </value>
        </member>
        <member name="P:Polly.Hedging.HedgingStrategyOptions`1.DelayGenerator">
            <summary>
            Gets or sets a generator that generates hedging delays for each hedging action.
            </summary>
            <remarks>
            The <see cref="P:Polly.Hedging.HedgingStrategyOptions`1.DelayGenerator"/> takes precedence over <see cref="P:Polly.Hedging.HedgingStrategyOptions`1.Delay"/>. If specified, the <see cref="P:Polly.Hedging.HedgingStrategyOptions`1.Delay"/> is ignored.
            </remarks>
            <value>
            The default value is <see langword="null"/>.
            </value>
        </member>
        <member name="P:Polly.Hedging.HedgingStrategyOptions`1.OnHedging">
            <summary>
            Gets or sets the event that is raised when a hedging is performed.
            </summary>
            <remarks>
            The hedging is executed when the current attempt outcome is not successful and the <see cref="P:Polly.Hedging.HedgingStrategyOptions`1.ShouldHandle"/> predicate returns <see langword="true"/> or when
            the current attempt did not finish within the <see cref="P:Polly.Hedging.HedgingStrategyOptions`1.Delay"/>.
            </remarks>
            <value>
            The default value is <see langword="null"/>.
            </value>
        </member>
        <member name="T:Polly.Hedging.OnHedgingArguments`1">
            <summary>
            Represents arguments used by the on-hedging event.
            </summary>
            <typeparam name="TResult">The type of result.</typeparam>
            <remarks>
            The <see cref="P:Polly.Hedging.OnHedgingArguments`1.PrimaryContext"/> represents the context that was received by the hedging strategy and used to execute the primary action.
            To prevent race conditions, the hedging strategy then clones the primary context into <see cref="P:Polly.Hedging.OnHedgingArguments`1.ActionContext"/> and uses it to execute the hedged action.
            Every hedged action gets its own context that is cloned from the primary.
            <para>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </para>
            </remarks>
        </member>
        <member name="M:Polly.Hedging.OnHedgingArguments`1.#ctor(Polly.ResilienceContext,Polly.ResilienceContext,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Hedging.OnHedgingArguments`1"/> struct.
            </summary>
            <param name="primaryContext">The primary context received by the hedging strategy.</param>
            <param name="actionContext">The action context. cloned from the primary context.</param>
            <param name="attemptNumber">The zero-based hedging attempt number.</param>
        </member>
        <member name="P:Polly.Hedging.OnHedgingArguments`1.PrimaryContext">
            <summary>
            Gets the primary resilience context as received by the hedging strategy.
            </summary>
        </member>
        <member name="P:Polly.Hedging.OnHedgingArguments`1.ActionContext">
            <summary>
            Gets the action context that will be used for the hedged action.
            </summary>
            <remarks>
            This context is cloned from <see cref="P:Polly.Hedging.OnHedgingArguments`1.PrimaryContext"/>.
            </remarks>
        </member>
        <member name="P:Polly.Hedging.OnHedgingArguments`1.AttemptNumber">
            <summary>
            Gets the zero-based hedging attempt number.
            </summary>
        </member>
        <member name="T:Polly.HedgingResiliencePipelineBuilderExtensions">
            <summary>
            Extensions for adding hedging to <see cref="T:Polly.ResiliencePipelineBuilder"/>.
            </summary>
        </member>
        <member name="M:Polly.HedgingResiliencePipelineBuilderExtensions.AddHedging``1(Polly.ResiliencePipelineBuilder{``0},Polly.Hedging.HedgingStrategyOptions{``0})">
            <summary>
            Adds a hedging with the provided options to the builder.
            </summary>
            <typeparam name="TResult">The result type.</typeparam>
            <param name="builder">The resilience pipeline builder.</param>
            <param name="options">The options to configure the hedging.</param>
            <returns>The builder instance with the hedging added.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> or <paramref name="options"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when <paramref name="options"/> are invalid.</exception>
        </member>
        <member name="T:Polly.LegacySupport">
            <summary>
            Legacy support for older versions of Polly.
            </summary>
            <remarks>
            This class is used by the legacy Polly infrastructure and should not be used directly by user code.
            </remarks>
        </member>
        <member name="M:Polly.LegacySupport.SetProperties(Polly.ResilienceProperties,System.Collections.Generic.IDictionary{System.String,System.Object},System.Collections.Generic.IDictionary{System.String,System.Object}@)">
            <summary>
            Changes the underlying properties of a <see cref="T:Polly.ResilienceProperties"/> instance.
            </summary>
            <param name="resilienceProperties">The resilience properties.</param>
            <param name="properties">The properties to use.</param>
            <param name="oldProperties">The old properties used by <paramref name="resilienceProperties"/>.</param>
            <remarks>
            This method is used by the legacy Polly infrastructure and should not be used directly by user code.
            </remarks>
        </member>
        <member name="T:Polly.Outcome">
            <summary>
            Produces instances of <see cref="T:Polly.Outcome`1"/>.
            </summary>
        </member>
        <member name="M:Polly.Outcome.FromResult``1(``0)">
            <summary>
            Returns a <see cref="T:Polly.Outcome`1"/> with the given <paramref name="value"/>.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <param name="value">The result value.</param>
            <returns>An instance of <see cref="T:Polly.Outcome`1"/>.</returns>
        </member>
        <member name="M:Polly.Outcome.FromResultAsValueTask``1(``0)">
            <summary>
            Returns a <see cref="T:Polly.Outcome`1"/> with the given <paramref name="value"/> wrapped as <see cref="T:System.Threading.Tasks.ValueTask`1"/>.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <param name="value">The result value.</param>
            <returns>A completed <see cref="T:System.Threading.Tasks.ValueTask`1"/> that produces <see cref="T:Polly.Outcome`1"/>.</returns>
        </member>
        <member name="M:Polly.Outcome.FromException``1(System.Exception)">
            <summary>
            Returns a <see cref="T:Polly.Outcome`1"/> with the given <paramref name="exception"/>.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <param name="exception">The exception.</param>
            <returns>An instance of <see cref="T:Polly.Outcome`1"/>.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="exception"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.Outcome.FromExceptionAsValueTask``1(System.Exception)">
            <summary>
            Returns a <see cref="T:Polly.Outcome`1"/> with the given <paramref name="exception"/> wrapped as <see cref="T:System.Threading.Tasks.ValueTask`1"/>.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <param name="exception">The exception.</param>
            <returns>A completed <see cref="T:System.Threading.Tasks.ValueTask`1"/> that produces <see cref="T:Polly.Outcome`1"/>.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="exception"/> is <see langword="null"/>.</exception>
        </member>
        <member name="T:Polly.Outcome`1">
            <summary>
            Represents the outcome of an operation which could be a result of type <typeparamref name="TResult"/> or an exception.
            </summary>
            <typeparam name="TResult">The result type of the operation.</typeparam>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="P:Polly.Outcome`1.Exception">
            <summary>
            Gets the exception that occurred during the operation, if any.
            </summary>
        </member>
        <member name="P:Polly.Outcome`1.ExceptionDispatchInfo">
            <summary>
            Gets the <see cref="P:Polly.Outcome`1.ExceptionDispatchInfo"/> associated with the exception, if any.
            </summary>
        </member>
        <member name="P:Polly.Outcome`1.Result">
            <summary>
            Gets the result of the operation, if any.
            </summary>
        </member>
        <member name="P:Polly.Outcome`1.HasResult">
            <summary>
            Gets a value indicating whether the operation produced a result.
            </summary>
            <remarks>
            Returns <see langword="true"/> even if the result is void. Use <see cref="P:Polly.Outcome`1.IsVoidResult"/> to check for void results.
            </remarks>
        </member>
        <member name="P:Polly.Outcome`1.IsVoidResult">
            <summary>
            Gets a value indicating whether the operation produced a void result.
            </summary>
        </member>
        <member name="M:Polly.Outcome`1.ThrowIfException">
            <summary>
            Throws an exception if the operation produced an exception.
            </summary>
            <remarks>
            If the operation produced a result, this method does nothing. The thrown exception maintains its original stack trace.
            </remarks>
        </member>
        <member name="M:Polly.Outcome`1.TryGetResult(`0@)">
            <summary>
            Tries to get the result, if available.
            </summary>
            <param name="result">Output parameter for the result.</param>
            <returns><see langword="true"/> if the result is available; <see langword="false"/> otherwise.</returns>
        </member>
        <member name="M:Polly.Outcome`1.ToString">
            <summary>
            Returns the string representation of the outcome.
            </summary>
            <returns>
            The exception message if the outcome is an exception; otherwise, the string representation of the result.
            </returns>
        </member>
        <member name="T:Polly.PredicateBuilder">
            <summary>
            Defines a builder for creating exception predicates.
            </summary>
        </member>
        <member name="T:Polly.PredicateBuilder`1">
            <summary>
            Defines a builder for creating predicates for <typeparamref name="TResult"/> and <see cref="T:System.Exception"/> combinations.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
        </member>
        <member name="M:Polly.PredicateBuilder`1.op_Implicit(Polly.PredicateBuilder{`0})~System.Func{Polly.Retry.RetryPredicateArguments{`0},System.Threading.Tasks.ValueTask{System.Boolean}}">
            <summary>
            The operator that converts <paramref name="builder"/> to <see cref="P:Polly.Retry.RetryStrategyOptions`1.ShouldHandle"/> delegate.
            </summary>
            <param name="builder">The builder instance.</param>
        </member>
        <member name="M:Polly.PredicateBuilder`1.op_Implicit(Polly.PredicateBuilder{`0})~System.Func{Polly.Hedging.HedgingPredicateArguments{`0},System.Threading.Tasks.ValueTask{System.Boolean}}">
            <summary>
            The operator that converts <paramref name="builder"/> to <see cref="P:Polly.Retry.RetryStrategyOptions`1.ShouldHandle"/> delegate.
            </summary>
            <param name="builder">The builder instance.</param>
        </member>
        <member name="M:Polly.PredicateBuilder`1.op_Implicit(Polly.PredicateBuilder{`0})~System.Func{Polly.Fallback.FallbackPredicateArguments{`0},System.Threading.Tasks.ValueTask{System.Boolean}}">
            <summary>
            The operator that converts <paramref name="builder"/> to <see cref="P:Polly.Retry.RetryStrategyOptions`1.ShouldHandle"/> delegate.
            </summary>
            <param name="builder">The builder instance.</param>
        </member>
        <member name="M:Polly.PredicateBuilder`1.op_Implicit(Polly.PredicateBuilder{`0})~System.Func{Polly.CircuitBreaker.CircuitBreakerPredicateArguments{`0},System.Threading.Tasks.ValueTask{System.Boolean}}">
            <summary>
            The operator that converts <paramref name="builder"/> to <see cref="P:Polly.Retry.RetryStrategyOptions`1.ShouldHandle"/> delegate.
            </summary>
            <param name="builder">The builder instance.</param>
        </member>
        <member name="M:Polly.PredicateBuilder`1.Handle``1">
            <summary>
            Adds a predicate for handling exceptions of the specified type.
            </summary>
            <typeparam name="TException">The type of the exception to handle.</typeparam>
            <returns>The same instance of the <see cref="T:Polly.PredicateBuilder`1"/> for chaining.</returns>
        </member>
        <member name="M:Polly.PredicateBuilder`1.Handle``1(System.Func{``0,System.Boolean})">
            <summary>
            Adds a predicate for handling exceptions of the specified type.
            </summary>
            <typeparam name="TException">The type of the exception to handle.</typeparam>
            <param name="predicate">The predicate function to use for handling the exception.</param>
            <returns>The same instance of the <see cref="T:Polly.PredicateBuilder`1"/> for chaining.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when the <paramref name="predicate"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.PredicateBuilder`1.HandleInner``1">
            <summary>
            Adds a predicate for handling inner exceptions of the specified type.
            </summary>
            <typeparam name="TException">The type of the inner exception to handle.</typeparam>
            <returns>The same instance of the <see cref="T:Polly.PredicateBuilder`1"/> for chaining.</returns>
            <remarks>
            This method will also handle any exception found for <see cref="P:System.Exception.InnerException"/> of
            an <see cref="T:System.Exception"/>, or at any level of nesting within an <see cref="T:System.AggregateException"/>.
            </remarks>
        </member>
        <member name="M:Polly.PredicateBuilder`1.HandleInner``1(System.Func{``0,System.Boolean})">
            <summary>
            Adds a predicate for handling inner exceptions of the specified type.
            </summary>
            <typeparam name="TException">The type of the inner exception to handle.</typeparam>
            <param name="predicate">The predicate function to use for handling the inner exception.</param>
            <returns>The same instance of the <see cref="T:Polly.PredicateBuilder`1"/> for chaining.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when the <paramref name="predicate"/> is <see langword="null"/>.</exception>
            <remarks>
            This method will also handle any exception found for <see cref="P:System.Exception.InnerException"/> of
            an <see cref="T:System.Exception"/>, or at any level of nesting within an <see cref="T:System.AggregateException"/>.
            </remarks>
        </member>
        <member name="M:Polly.PredicateBuilder`1.HandleResult(System.Func{`0,System.Boolean})">
            <summary>
            Adds a predicate for handling results.
            </summary>
            <param name="predicate">The predicate function to use for handling the result.</param>
            <returns>The same instance of the <see cref="T:Polly.PredicateBuilder`1"/> for chaining.</returns>
        </member>
        <member name="M:Polly.PredicateBuilder`1.HandleResult(`0,System.Collections.Generic.IEqualityComparer{`0})">
            <summary>
            Adds a predicate for handling results with a specific value.
            </summary>
            <param name="result">The result value to handle.</param>
            <param name="comparer">The comparer to use for comparing results. If <see langword="null"/> , the default comparer is used.</param>
            <returns>The same instance of the <see cref="T:Polly.PredicateBuilder`1"/> for chaining.</returns>
        </member>
        <member name="M:Polly.PredicateBuilder`1.Build">
            <summary>
            Builds the predicate.
            </summary>
            <returns>An instance of predicate delegate.</returns>
            <exception cref="T:System.InvalidOperationException">Thrown when no predicates were configured using this builder.</exception>
            <remarks>
            The returned predicate will return <see langword="true"/> if any of the configured predicates return <see langword="true"/>.
            Please be aware of the performance penalty if you register too many predicates with this builder. In such case, it's better to create your own predicate
            manually as a delegate.
            </remarks>
        </member>
        <member name="T:Polly.PredicateResult">
            <summary>
            Class that represents the results that can be used in predicates.
            </summary>
        </member>
        <member name="M:Polly.PredicateResult.True">
            <summary>
            Returns a finished <see cref="T:System.Threading.Tasks.ValueTask`1"/> that returns <see langword="true"/> value.
            </summary>
            <returns>A new instance of finished <see cref="T:System.Threading.Tasks.ValueTask`1"/>.</returns>
        </member>
        <member name="M:Polly.PredicateResult.False">
            <summary>
            Returns a finished <see cref="T:System.Threading.Tasks.ValueTask`1"/> that returns <see langword="false"/> value.
            </summary>
            <returns>A new instance of finished <see cref="T:System.Threading.Tasks.ValueTask`1"/>.</returns>
        </member>
        <member name="T:Polly.Registry.ConfigureBuilderContext`1">
            <summary>
            The context used by <see cref="T:Polly.Registry.ResiliencePipelineRegistry`1"/>.
            </summary>
            <typeparam name="TKey">The type of the key.</typeparam>
        </member>
        <member name="P:Polly.Registry.ConfigureBuilderContext`1.PipelineKey">
            <summary>
            Gets the pipeline key for the pipeline being created.
            </summary>
        </member>
        <member name="P:Polly.Registry.ConfigureBuilderContext`1.BuilderName">
            <summary>
            Gets the builder name for the builder being used to create the strategy.
            </summary>
        </member>
        <member name="P:Polly.Registry.ConfigureBuilderContext`1.BuilderInstanceName">
            <summary>
            Gets the instance name for the builder being used to create the strategy.
            </summary>
        </member>
        <member name="M:Polly.Registry.ConfigureBuilderContext`1.AddReloadToken(System.Threading.CancellationToken)">
            <summary>
            Reloads the pipeline when <paramref name="cancellationToken"/> is canceled.
            </summary>
            <param name="cancellationToken">The cancellation token that triggers the pipeline reload when cancelled.</param>
            <remarks>
            You can add multiple reload tokens to the context. Non-cancelable or already canceled tokens are ignored.
            </remarks>
        </member>
        <member name="M:Polly.Registry.ConfigureBuilderContext`1.OnPipelineDisposed(System.Action)">
            <summary>
            Registers a callback that is called when the pipeline instance being configured is disposed.
            </summary>
            <param name="callback">The callback delegate.</param>
        </member>
        <member name="T:Polly.Registry.RegistryPipelineComponentBuilder`2">
            <summary>
            Builds a <see cref="T:Polly.Utils.Pipeline.PipelineComponent"/> used by the registry.
            </summary>
        </member>
        <member name="T:Polly.Registry.ResiliencePipelineProvider`1">
            <summary>
            Represents a provider for resilience pipelines that are accessible by <typeparamref name="TKey"/>.
            </summary>
            <typeparam name="TKey">The type of the key.</typeparam>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineProvider`1.GetPipeline(`0)">
            <summary>
            Retrieves a resilience pipeline from the provider using the specified key.
            </summary>
            <param name="key">The key used to identify the resilience pipeline.</param>
            <returns>The resilience pipeline associated with the specified key.</returns>
            <exception cref="T:System.Collections.Generic.KeyNotFoundException">Thrown when no resilience pipeline is found for the specified key.</exception>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineProvider`1.GetPipeline``1(`0)">
            <summary>
            Retrieves a generic resilience pipeline from the provider using the specified key.
            </summary>
            <typeparam name="TResult">The type of result that the resilience pipeline handles.</typeparam>
            <param name="key">The key used to identify the resilience pipeline.</param>
            <returns>The resilience pipeline associated with the specified key.</returns>
            <exception cref="T:System.Collections.Generic.KeyNotFoundException">Thrown when no resilience pipeline is found for the specified key.</exception>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineProvider`1.TryGetPipeline(`0,Polly.ResiliencePipeline@)">
            <summary>
            Tries to get a resilience pipeline from the provider using the specified key.
            </summary>
            <param name="key">The key used to identify the resilience pipeline.</param>
            <param name="pipeline">The output resilience pipeline if found, <see langword="null"/> otherwise.</param>
            <returns><see langword="true"/> if the pipeline was found, <see langword="false"/> otherwise.</returns>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineProvider`1.TryGetPipeline``1(`0,Polly.ResiliencePipeline{``0}@)">
            <summary>
            Tries to get a generic resilience pipeline from the provider using the specified key.
            </summary>
            <typeparam name="TResult">The type of result that the resilience pipeline handles.</typeparam>
            <param name="key">The key used to identify the resilience pipeline.</param>
            <param name="pipeline">The output resilience pipeline if found, <see langword="null"/> otherwise.</param>
            <returns><see langword="true"/> if the pipeline was found, <see langword="false"/> otherwise.</returns>
        </member>
        <member name="T:Polly.Registry.ResiliencePipelineRegistry`1">
            <summary>
            Represents a registry of resilience pipelines and builders that are accessible by <typeparamref name="TKey"/>.
            </summary>
            <typeparam name="TKey">The type of the key.</typeparam>
            <remarks>
            This class provides a way to organize and manage multiple resilience pipelines
            using keys of type <typeparamref name="TKey"/>.
            <para>
            Additionally, it allows registration of callbacks that configure the pipeline using <see cref="T:Polly.ResiliencePipelineBuilder"/>.
            These callbacks are called when the resilience pipeline is not yet cached and it's retrieved for the first time.
            </para>
            </remarks>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineRegistry`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Registry.ResiliencePipelineRegistry`1"/> class with the default comparer.
            </summary>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineRegistry`1.#ctor(Polly.Registry.ResiliencePipelineRegistryOptions{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Registry.ResiliencePipelineRegistry`1"/> class with a custom builder factory and comparer.
            </summary>
            <param name="options">The registry options.</param>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when <paramref name="options"/> are invalid.</exception>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="options"/> are <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineRegistry`1.TryGetPipeline``1(`0,Polly.ResiliencePipeline{``0}@)">
            <inheritdoc/>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineRegistry`1.TryGetPipeline(`0,Polly.ResiliencePipeline@)">
            <inheritdoc/>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineRegistry`1.GetOrAddPipeline(`0,System.Action{Polly.ResiliencePipelineBuilder})">
            <summary>
            Gets existing pipeline or creates a new one using the <paramref name="configure"/> callback.
            </summary>
            <param name="key">The key used to identify the resilience pipeline.</param>
            <param name="configure">The callback that configures the pipeline builder.</param>
            <returns>An instance of pipeline.</returns>
            <exception cref="T:System.ObjectDisposedException">Thrown when the registry is already disposed.</exception>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineRegistry`1.GetOrAddPipeline(`0,System.Action{Polly.ResiliencePipelineBuilder,Polly.Registry.ConfigureBuilderContext{`0}})">
            <summary>
            Gets existing pipeline or creates a new one using the <paramref name="configure"/> callback.
            </summary>
            <param name="key">The key used to identify the resilience pipeline.</param>
            <param name="configure">The callback that configures the pipeline builder.</param>
            <returns>An instance of pipeline.</returns>
            <exception cref="T:System.ObjectDisposedException">Thrown when the registry is already disposed.</exception>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineRegistry`1.GetOrAddPipeline``1(`0,System.Action{Polly.ResiliencePipelineBuilder{``0}})">
            <summary>
            Gets existing pipeline or creates a new one using the <paramref name="configure"/> callback.
            </summary>
            <typeparam name="TResult">The type of result that the resilience pipeline handles.</typeparam>
            <param name="key">The key used to identify the resilience pipeline.</param>
            <param name="configure">The callback that configures the pipeline builder.</param>
            <returns>An instance of pipeline.</returns>
            <exception cref="T:System.ObjectDisposedException">Thrown when the registry is already disposed.</exception>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineRegistry`1.GetOrAddPipeline``1(`0,System.Action{Polly.ResiliencePipelineBuilder{``0},Polly.Registry.ConfigureBuilderContext{`0}})">
            <summary>
            Gets existing pipeline or creates a new one using the <paramref name="configure"/> callback.
            </summary>
            <typeparam name="TResult">The type of result that the resilience pipeline handles.</typeparam>
            <param name="key">The key used to identify the resilience pipeline.</param>
            <param name="configure">The callback that configures the pipeline builder.</param>
            <returns>An instance of pipeline.</returns>
            <exception cref="T:System.ObjectDisposedException">Thrown when the registry is already disposed.</exception>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineRegistry`1.TryAddBuilder(`0,System.Action{Polly.ResiliencePipelineBuilder,Polly.Registry.ConfigureBuilderContext{`0}})">
            <summary>
            Tries to add a resilience pipeline builder to the registry.
            </summary>
            <param name="key">The key used to identify the pipeline builder.</param>
            <param name="configure">The action that configures the resilience pipeline builder.</param>
            <returns><see langword="true"/> if the builder was added successfully, <see langword="false"/> otherwise.</returns>
            <remarks>
            Use this method when you want to create the pipeline on-demand when it's first accessed.
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="configure"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ObjectDisposedException">Thrown when the registry is already disposed.</exception>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineRegistry`1.TryAddBuilder``1(`0,System.Action{Polly.ResiliencePipelineBuilder{``0},Polly.Registry.ConfigureBuilderContext{`0}})">
            <summary>
            Tries to add a generic resilience pipeline builder to the registry.
            </summary>
            <typeparam name="TResult">The type of result that the resilience pipeline handles.</typeparam>
            <param name="key">The key used to identify the pipeline builder.</param>
            <param name="configure">The action that configures the resilience pipeline builder.</param>
            <returns><see langword="true"/> if the builder was added successfully, <see langword="false"/> otherwise.</returns>
            <remarks>
            Use this method when you want to create the pipeline on-demand when it's first accessed.
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="configure"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ObjectDisposedException">Thrown when the registry is already disposed.</exception>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineRegistry`1.Dispose">
            <summary>
            Disposes all resources that are held by the resilience pipelines created by this builder.
            </summary>
            <remarks>
            After the disposal, all resilience pipelines still used outside of the builder are disposed
            and cannot be used anymore.
            </remarks>
        </member>
        <member name="M:Polly.Registry.ResiliencePipelineRegistry`1.DisposeAsync">
            <summary>
            Disposes all resources that are held by the resilience pipelines created by this builder.
            </summary>
            <returns>Returns a task that represents the asynchronous dispose operation.</returns>
            <remarks>
            After the disposal, all resilience pipelines still used outside of the builder are disposed
            and cannot be used anymore.
            </remarks>
        </member>
        <member name="T:Polly.Registry.ResiliencePipelineRegistryOptions`1">
            <summary>
            An options class used by <see cref="T:Polly.Registry.ResiliencePipelineRegistry`1"/>.
            </summary>
            <typeparam name="TKey">The type of the key used by the registry.</typeparam>
        </member>
        <member name="P:Polly.Registry.ResiliencePipelineRegistryOptions`1.BuilderFactory">
            <summary>
            Gets or sets the factory method that creates instances of <see cref="T:Polly.ResiliencePipelineBuilder"/>.
            </summary>
            <value>
            The default value is a function that creates a new instance of <see cref="T:Polly.ResiliencePipelineBuilder"/> using the default constructor.
            </value>
        </member>
        <member name="P:Polly.Registry.ResiliencePipelineRegistryOptions`1.PipelineComparer">
            <summary>
            Gets or sets the comparer that is used by the registry to retrieve the resilience pipelines.
            </summary>
            <value>
            The default value is <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/>.
            </value>
        </member>
        <member name="P:Polly.Registry.ResiliencePipelineRegistryOptions`1.BuilderComparer">
            <summary>
            Gets or sets the comparer that is used by the registry to retrieve the resilience pipeline builders.
            </summary>
            <value>
            The default value is <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/>.
            </value>
        </member>
        <member name="P:Polly.Registry.ResiliencePipelineRegistryOptions`1.InstanceNameFormatter">
            <summary>
            Gets or sets the formatter that is used by the registry to format the <typeparamref name="TKey"/> to a string that
            represents the instance name of the builder.
            </summary>
            <remarks>
            Use custom formatter for composite keys in case you want to have different metric values for a builder and instance key.
            In general, pipelines can have the same builder name and different instance names.
            </remarks>
            <value>
            The default value is <see langword="null"/>.
            </value>
        </member>
        <member name="P:Polly.Registry.ResiliencePipelineRegistryOptions`1.BuilderNameFormatter">
            <summary>
            Gets or sets the formatter that is used by the registry to format the <typeparamref name="TKey"/> to a string that
            represents the builder name.
            </summary>
            <remarks>
            Use custom formatter for composite keys in case you want to have different metric values for a builder and strategy key.
            In general, pipelines can have the same builder name and different pipeline keys.
            </remarks>
            <value>
            The default value is a formatter that formats the keys using the <see cref="M:System.Object.ToString"/> method.
            </value>
        </member>
        <member name="T:Polly.ResilienceContext">
            <summary>
            A context assigned to a single execution of <see cref="T:Polly.ResiliencePipeline"/>. It is created manually or automatically
            when the user calls the various extensions on top of <see cref="T:Polly.ResiliencePipeline"/>. After every execution the context should be discarded and returned to the pool.
            </summary>
            <remarks>
            Do not re-use an instance of <see cref="T:Polly.ResilienceContext"/> across more than one execution. The <see cref="T:Polly.ResilienceContext"/> is retrieved from the pool
            by calling the <see cref="M:Polly.ResilienceContextPool.Get(System.Threading.CancellationToken)"/> method. After you are done with it you should return it to the pool
            by calling the <see cref="M:Polly.ResilienceContextPool.Return(Polly.ResilienceContext)"/> method.
            </remarks>
        </member>
        <member name="P:Polly.ResilienceContext.OperationKey">
            <summary>
            Gets a key unique to the call site of the current execution.
            </summary>
            <remarks>
            Resilience context instances are commonly reused across multiple call sites.
            Set an <see cref="P:Polly.ResilienceContext.OperationKey"/> so that logging and metrics can distinguish usages of policy instances at different call sites.
            The operation key value should have a low cardinality (i.e. do not assign values such as <see cref="T:System.Guid"/> to this property).
            </remarks>
            <value>The default value is <see langword="null"/>.</value>
        </member>
        <member name="P:Polly.ResilienceContext.CancellationToken">
            <summary>
            Gets the <see cref="P:Polly.ResilienceContext.CancellationToken"/> associated with the execution.
            </summary>
        </member>
        <member name="P:Polly.ResilienceContext.IsSynchronous">
            <summary>
            Gets a value indicating whether the execution is synchronous.
            </summary>
        </member>
        <member name="P:Polly.ResilienceContext.ResultType">
            <summary>
            Gets the type of the result associated with the execution.
            </summary>
        </member>
        <member name="P:Polly.ResilienceContext.IsVoid">
            <summary>
            Gets a value indicating whether the execution represents a void result.
            </summary>
        </member>
        <member name="P:Polly.ResilienceContext.ContinueOnCapturedContext">
            <summary>
            Gets a value indicating whether the execution should continue on the captured context.
            </summary>
        </member>
        <member name="P:Polly.ResilienceContext.IsInitialized">
            <summary>
            Gets a value indicating whether the context is initialized.
            </summary>
        </member>
        <member name="P:Polly.ResilienceContext.Properties">
            <summary>
            Gets the custom properties attached to the context.
            </summary>
        </member>
        <member name="T:Polly.ResilienceContext.UnknownResult">
            <summary>
            Marker class that represents an unknown result.
            </summary>
        </member>
        <member name="T:Polly.ResilienceContextCreationArguments">
            <summary>
            Arguments used by the <see cref="T:Polly.ResilienceContextPool"/> when creating <see cref="T:Polly.ResilienceContext"/>.
            </summary>
        </member>
        <member name="M:Polly.ResilienceContextCreationArguments.#ctor(System.String,System.Nullable{System.Boolean},System.Threading.CancellationToken)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.ResilienceContextCreationArguments"/> struct.
            </summary>
            <param name="operationKey">The operation key, if any.</param>
            <param name="continueOnCapturedContext">Value indicating whether to continue on captured context.</param>
            <param name="cancellationToken">The cancellation token.</param>
        </member>
        <member name="P:Polly.ResilienceContextCreationArguments.OperationKey">
            <summary>
            Gets the operation key, if any.
            </summary>
        </member>
        <member name="P:Polly.ResilienceContextCreationArguments.ContinueOnCapturedContext">
            <summary>
            Gets the value indicating whether to continue on captured context, if any.
            </summary>
        </member>
        <member name="P:Polly.ResilienceContextCreationArguments.CancellationToken">
            <summary>
            Gets the cancellation token.
            </summary>
        </member>
        <member name="T:Polly.ResilienceContextPool">
            <summary>
            The pool of <see cref="T:Polly.ResilienceContext"/> instances.
            </summary>
        </member>
        <member name="P:Polly.ResilienceContextPool.Shared">
            <summary>
            Gets the shared pool instance.
            </summary>
        </member>
        <member name="M:Polly.ResilienceContextPool.Get(System.Threading.CancellationToken)">
            <summary>
            Gets a <see cref="T:Polly.ResilienceContext"/> instance from the pool.
            </summary>
            <param name="cancellationToken">The cancellation token.</param>
            <returns>An instance of <see cref="T:Polly.ResilienceContext"/>.</returns>
            <remarks>
            After the execution is finished you should return the <see cref="T:Polly.ResilienceContext"/> back to the pool
            by calling <see cref="M:Polly.ResilienceContextPool.Return(Polly.ResilienceContext)"/> method.
            </remarks>
        </member>
        <member name="M:Polly.ResilienceContextPool.Get(System.String,System.Threading.CancellationToken)">
            <summary>
            Gets a <see cref="T:Polly.ResilienceContext"/> instance from the pool.
            </summary>
            <param name="operationKey">An operation key associated with the context.</param>
            <param name="cancellationToken">The cancellation token.</param>
            <returns>An instance of <see cref="T:Polly.ResilienceContext"/>.</returns>
            <remarks>
            After the execution is finished you should return the <see cref="T:Polly.ResilienceContext"/> back to the pool
            by calling <see cref="M:Polly.ResilienceContextPool.Return(Polly.ResilienceContext)"/> method.
            </remarks>
        </member>
        <member name="M:Polly.ResilienceContextPool.Get(System.String,System.Nullable{System.Boolean},System.Threading.CancellationToken)">
            <summary>
            Gets a <see cref="T:Polly.ResilienceContext"/> instance from the pool.
            </summary>
            <param name="operationKey">An operation key associated with the context.</param>
            <param name="continueOnCapturedContext">Value indicating whether to continue on captured context.</param>
            <param name="cancellationToken">The cancellation token.</param>
            <returns>An instance of <see cref="T:Polly.ResilienceContext"/>.</returns>
            <remarks>
            After the execution is finished you should return the <see cref="T:Polly.ResilienceContext"/> back to the pool
            by calling <see cref="M:Polly.ResilienceContextPool.Return(Polly.ResilienceContext)"/> method.
            </remarks>
        </member>
        <member name="M:Polly.ResilienceContextPool.Get(System.Boolean,System.Threading.CancellationToken)">
            <summary>
            Gets a <see cref="T:Polly.ResilienceContext"/> instance from the pool.
            </summary>
            <param name="continueOnCapturedContext">Value indicating whether to continue on captured context.</param>
            <param name="cancellationToken">The cancellation token.</param>
            <returns>An instance of <see cref="T:Polly.ResilienceContext"/>.</returns>
            <remarks>
            After the execution is finished you should return the <see cref="T:Polly.ResilienceContext"/> back to the pool
            by calling <see cref="M:Polly.ResilienceContextPool.Return(Polly.ResilienceContext)"/> method.
            </remarks>
        </member>
        <member name="M:Polly.ResilienceContextPool.Get(Polly.ResilienceContextCreationArguments)">
            <summary>
            Gets a <see cref="T:Polly.ResilienceContext"/> instance from the pool.
            </summary>
            <param name="arguments">The creation arguments.</param>
            <returns>An instance of <see cref="T:Polly.ResilienceContext"/>.</returns>
            <remarks>
            After the execution is finished you should return the <see cref="T:Polly.ResilienceContext"/> back to the pool
            by calling <see cref="M:Polly.ResilienceContextPool.Return(Polly.ResilienceContext)"/> method.
            </remarks>
        </member>
        <member name="M:Polly.ResilienceContextPool.Return(Polly.ResilienceContext)">
            <summary>
            Returns a <paramref name="context"/> back to the pool.
            </summary>
            <param name="context">The context instance.</param>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="context"/> is <see langword="null"/>.</exception>
        </member>
        <member name="T:Polly.ResiliencePipeline">
            <summary>
            Resilience pipeline is used to execute the user-provided callbacks.
            </summary>
            <remarks>
            Resilience pipeline supports various types of callbacks and provides a unified way to execute them.
            This includes overloads for synchronous and asynchronous callbacks, generic and non-generic callbacks.
            </remarks>
        </member>
        <member name="M:Polly.ResiliencePipeline.ExecuteAsync``1(System.Func{Polly.ResilienceContext,``0,System.Threading.Tasks.ValueTask},Polly.ResilienceContext,``0)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <param name="state">The state associated with the callback.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> or <paramref name="context"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.ExecuteAsync(System.Func{Polly.ResilienceContext,System.Threading.Tasks.ValueTask},Polly.ResilienceContext)">
            <summary>
            Executes the specified callback.
            </summary>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> or <paramref name="context"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.ExecuteAsync``1(System.Func{``0,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask},``0,System.Threading.CancellationToken)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="state">The state associated with the callback.</param>
            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> associated with the callback.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents an asynchronous callback.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.ExecuteAsync(System.Func{System.Threading.CancellationToken,System.Threading.Tasks.ValueTask},System.Threading.CancellationToken)">
            <summary>
            Executes the specified callback.
            </summary>
            <param name="callback">The user-provided callback.</param>
            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> associated with the callback.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents an asynchronous callback.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.ExecuteOutcomeAsync``2(System.Func{Polly.ResilienceContext,``1,System.Threading.Tasks.ValueTask{Polly.Outcome{``0}}},Polly.ResilienceContext,``1)">
            <summary>
            Executes the specified outcome-based callback.
            </summary>
            <typeparam name="TResult">The type of result returned by the callback.</typeparam>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <param name="state">The state associated with the callback.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> or <paramref name="context"/> is <see langword="null"/>.</exception>
            <remarks>
            This method is for advanced and high performance scenarios. The caller must make sure that the <paramref name="callback"/>
            does not throw any exceptions. Instead, it converts them to <see cref="T:Polly.Outcome`1"/>.
            </remarks>
        </member>
        <member name="M:Polly.ResiliencePipeline.ExecuteAsync``2(System.Func{Polly.ResilienceContext,``1,System.Threading.Tasks.ValueTask{``0}},Polly.ResilienceContext,``1)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of result returned by the callback.</typeparam>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <param name="state">The state associated with the callback.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> or <paramref name="context"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.ExecuteAsync``1(System.Func{Polly.ResilienceContext,System.Threading.Tasks.ValueTask{``0}},Polly.ResilienceContext)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of result returned by the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> or <paramref name="context"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.ExecuteAsync``2(System.Func{``1,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask{``0}},``1,System.Threading.CancellationToken)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of result returned by the callback.</typeparam>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="state">The state associated with the callback.</param>
            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> associated with the callback.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.ExecuteAsync``1(System.Func{System.Threading.CancellationToken,System.Threading.Tasks.ValueTask{``0}},System.Threading.CancellationToken)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of result returned by the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> associated with the callback.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="F:Polly.ResiliencePipeline.Empty">
            <summary>
            Resilience pipeline that executes the user-provided callback without any additional logic.
            </summary>
        </member>
        <member name="M:Polly.ResiliencePipeline.Execute``1(System.Action{Polly.ResilienceContext,``0},Polly.ResilienceContext,``0)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <param name="state">The state associated with the callback.</param>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> or <paramref name="context"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.Execute(System.Action{Polly.ResilienceContext},Polly.ResilienceContext)">
            <summary>
            Executes the specified callback.
            </summary>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> or <paramref name="context"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.Execute``1(System.Action{``0,System.Threading.CancellationToken},``0,System.Threading.CancellationToken)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="state">The state associated with the callback.</param>
            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> associated with the callback.</param>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.Execute(System.Action{System.Threading.CancellationToken},System.Threading.CancellationToken)">
            <summary>
            Executes the specified callback.
            </summary>
            <param name="callback">The user-provided callback.</param>
            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> associated with the callback.</param>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.Execute``1(System.Action{``0},``0)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="state">The state associated with the callback.</param>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.Execute(System.Action)">
            <summary>
            Executes the specified callback.
            </summary>
            <param name="callback">The user-provided callback.</param>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.Execute``2(System.Func{Polly.ResilienceContext,``1,``0},Polly.ResilienceContext,``1)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of result returned by the callback.</typeparam>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <param name="state">The state associated with the callback.</param>
            <returns>An instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> or <paramref name="context"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.Execute``1(System.Func{Polly.ResilienceContext,``0},Polly.ResilienceContext)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of result returned by the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <returns>An instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> or <paramref name="context"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.Execute``1(System.Func{System.Threading.CancellationToken,``0},System.Threading.CancellationToken)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of result returned by the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> associated with the callback.</param>
            <returns>An instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.Execute``1(System.Func{``0})">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of result returned by the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <returns>An instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.Execute``2(System.Func{``1,``0},``1)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of result returned by the callback.</typeparam>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="state">The state associated with the callback.</param>
            <returns>An instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline.Execute``2(System.Func{``1,System.Threading.CancellationToken,``0},``1,System.Threading.CancellationToken)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of result returned by the callback.</typeparam>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="state">The state associated with the callback.</param>
            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> associated with the callback.</param>
            <returns>An instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="T:Polly.ResiliencePipelineBuilder">
            <summary>
            A builder that is used to create an instance of <see cref="T:Polly.ResiliencePipeline"/>.
            </summary>
            <remarks>
            The builder supports combining multiple strategies into a pipeline of resilience strategies.
            The resulting instance of <see cref="T:Polly.ResiliencePipeline"/> created by the <see cref="M:Polly.ResiliencePipelineBuilder.Build"/> call executes the strategies in the same order they were added to the builder.
            The order of the strategies is important.
            </remarks>
        </member>
        <member name="M:Polly.ResiliencePipelineBuilder.Build">
            <summary>
            Builds the resilience pipeline.
            </summary>
            <returns>An instance of <see cref="T:Polly.ResiliencePipeline"/>.</returns>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when this builder has invalid configuration.</exception>
        </member>
        <member name="T:Polly.ResiliencePipelineBuilder`1">
            <summary>
            A builder that is used to create an instance of <see cref="T:Polly.ResiliencePipeline`1"/>.
            </summary>
            <typeparam name="TResult">The type of result to handle.</typeparam>
            <remarks>
            The builder supports combining multiple strategies into a pipeline of resilience strategies.
            The resulting instance of <see cref="T:Polly.ResiliencePipeline`1"/> created by the <see cref="M:Polly.ResiliencePipelineBuilder`1.Build"/> call will execute the strategies in the same order they were added to the builder.
            The order of the strategies is important.
            </remarks>
        </member>
        <member name="M:Polly.ResiliencePipelineBuilder`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.ResiliencePipelineBuilder`1"/> class.
            </summary>
        </member>
        <member name="M:Polly.ResiliencePipelineBuilder`1.Build">
            <summary>
            Builds the resilience pipeline.
            </summary>
            <returns>An instance of <see cref="T:Polly.ResiliencePipeline`1"/>.</returns>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when this builder has invalid configuration.</exception>
        </member>
        <member name="T:Polly.ResiliencePipelineBuilderBase">
            <summary>
            A builder that is used to create an instance of <see cref="T:Polly.ResiliencePipeline"/>.
            </summary>
            <remarks>
            The builder supports combining multiple strategies into a pipeline of resilience strategies.
            The resulting instance of <see cref="T:Polly.ResiliencePipeline"/> executes the strategies in the same order they were added to the builder.
            The order of the strategies is important.
            </remarks>
        </member>
        <member name="P:Polly.ResiliencePipelineBuilderBase.Name">
            <summary>
            Gets or sets the name of the builder.
            </summary>
            <remarks>
            This property is also included in the telemetry that is produced by the individual resilience strategies.
            </remarks>
            <value>
            The default value is <see langword="null"/>.
            </value>
        </member>
        <member name="P:Polly.ResiliencePipelineBuilderBase.InstanceName">
            <summary>
            Gets or sets the instance name of the builder.
            </summary>
            <remarks>
            This property is also included in the telemetry that is produced by the individual resilience strategies.
            The instance name can be used to differentiate between multiple builder instances with the same <see cref="P:Polly.ResiliencePipelineBuilderBase.Name"/>.
            </remarks>
            <value>
            The default value is <see langword="null"/>.
            </value>
        </member>
        <member name="P:Polly.ResiliencePipelineBuilderBase.ContextPool">
            <summary>
            Gets or sets the <see cref="T:Polly.ResilienceContextPool"/> associated with the builder.
            </summary>
            <remarks>
            A custom pool can be used to configure custom behavior for  creation.
            This can include setting a default <c>continueOnCapturedContext</c> parameter or custom operation key resolution.
            </remarks>
            <value>
            If the default value of <see langword="null"/> is used, <see cref="P:Polly.ResilienceContextPool.Shared"/> will be used.
            </value>
        </member>
        <member name="P:Polly.ResiliencePipelineBuilderBase.TimeProvider">
            <summary>
            Gets or sets a <see cref="P:Polly.ResiliencePipelineBuilderBase.TimeProvider"/> that is used by strategies that work with time.
            </summary>
            <value>
            The default value is <see langword="null"/> and unless set, <see cref="P:System.TimeProvider.System"/> will be used.
            </value>
        </member>
        <member name="P:Polly.ResiliencePipelineBuilderBase.TelemetryListener">
            <summary>
            Gets or sets the <see cref="T:Polly.Telemetry.TelemetryListener"/> that is used by Polly to report resilience events.
            </summary>
            <remarks>
            This property is used by the telemetry infrastructure and should not be used directly by user code.
            </remarks>
            <value>
            The default value is <see langword="null"/>.
            </value>
        </member>
        <member name="P:Polly.ResiliencePipelineBuilderBase.Validator">
            <summary>
            Gets the validator that is used for the validation.
            </summary>
            <value>The default value is a validation function that uses data annotations for validation.</value>
            <remarks>
            The validator should throw <see cref="T:System.ComponentModel.DataAnnotations.ValidationException"/> when the validated instance is invalid.
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown when the attempting to assign <see langword="null"/> to this property.</exception>
        </member>
        <member name="T:Polly.ResiliencePipelineBuilderExtensions">
            <summary>
            Extensions for <see cref="T:Polly.ResiliencePipelineBuilderBase"/>.
            </summary>
        </member>
        <member name="M:Polly.ResiliencePipelineBuilderExtensions.AddPipeline``1(``0,Polly.ResiliencePipeline)">
            <summary>
            Adds an already created pipeline instance to the builder.
            </summary>
            <typeparam name="TBuilder">The builder type.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="pipeline">The pipeline instance.</param>
            <returns>The same builder instance.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="pipeline"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.InvalidOperationException">Thrown when this builder was already used to create a pipeline. The builder cannot be modified after it has been used.</exception>
        </member>
        <member name="M:Polly.ResiliencePipelineBuilderExtensions.AddPipeline``1(Polly.ResiliencePipelineBuilder{``0},Polly.ResiliencePipeline{``0})">
            <summary>
            Adds an already created pipeline instance to the builder.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="pipeline">The pipeline instance.</param>
            <returns>The same builder instance.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="pipeline"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.InvalidOperationException">Thrown when this builder was already used to create a strategy. The builder cannot be modified after it has been used.</exception>
        </member>
        <member name="M:Polly.ResiliencePipelineBuilderExtensions.AddStrategy``1(``0,System.Func{Polly.StrategyBuilderContext,Polly.ResilienceStrategy},Polly.ResilienceStrategyOptions)">
            <summary>
            Adds a proactive resilience strategy to the builder.
            </summary>
            <typeparam name="TBuilder">The builder type.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="factory">The factory that creates a resilience strategy.</param>
            <param name="options">The options associated with the strategy.</param>
            <returns>The same builder instance.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/>, <paramref name="factory"/> or <paramref name="options"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.InvalidOperationException">Thrown when this builder was already used to create a pipeline. The builder cannot be modified after it has been used.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when <paramref name="options"/> is invalid.</exception>
        </member>
        <member name="M:Polly.ResiliencePipelineBuilderExtensions.AddStrategy(Polly.ResiliencePipelineBuilder,System.Func{Polly.StrategyBuilderContext,Polly.ResilienceStrategy{System.Object}},Polly.ResilienceStrategyOptions)">
            <summary>
            Adds a reactive strategy to the builder.
            </summary>
            <param name="builder">The builder instance.</param>
            <param name="factory">The factory that creates a resilience strategy.</param>
            <param name="options">The options associated with the strategy.</param>
            <returns>The same builder instance.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/>, <paramref name="factory"/> or <paramref name="options"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.InvalidOperationException">Thrown when this builder was already used to create a pipeline. The builder cannot be modified after it has been used.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when <paramref name="options"/> is invalid.</exception>
        </member>
        <member name="M:Polly.ResiliencePipelineBuilderExtensions.AddStrategy``1(Polly.ResiliencePipelineBuilder{``0},System.Func{Polly.StrategyBuilderContext,Polly.ResilienceStrategy{``0}},Polly.ResilienceStrategyOptions)">
            <summary>
            Adds a reactive strategy to the builder.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="factory">The factory that creates a resilience strategy.</param>
            <param name="options">The options associated with the strategy.</param>
            <returns>The same builder instance.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/>, <paramref name="factory"/> or <paramref name="options"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.InvalidOperationException">Thrown when this builder was already used to create a pipeline. The builder cannot be modified after it has been used.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when <paramref name="options"/> is invalid.</exception>
        </member>
        <member name="M:Polly.ResiliencePipelineBuilderExtensions.AddStrategy``1(``0,System.Func{Polly.StrategyBuilderContext,Polly.ResilienceStrategy})">
            <summary>
            Adds a reactive resilience strategy to the builder.
            </summary>
            <typeparam name="TBuilder">The builder type.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="factory">The strategy factory.</param>
            <returns>The same builder instance.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> or <paramref name="factory"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.InvalidOperationException">Thrown when this builder was already used to create a pipeline. The builder cannot be modified after it has been used.</exception>
        </member>
        <member name="M:Polly.ResiliencePipelineBuilderExtensions.AddStrategy(Polly.ResiliencePipelineBuilder,System.Func{Polly.StrategyBuilderContext,Polly.ResilienceStrategy{System.Object}})">
            <summary>
            Adds a proactive resilience strategy to the builder.
            </summary>
            <param name="builder">The builder instance.</param>
            <param name="factory">The strategy instance.</param>
            <returns>The same builder instance.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> or <paramref name="factory"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.InvalidOperationException">Thrown when this builder was already used to create a pipeline. The builder cannot be modified after it has been used.</exception>
        </member>
        <member name="M:Polly.ResiliencePipelineBuilderExtensions.AddStrategy``1(Polly.ResiliencePipelineBuilder{``0},System.Func{Polly.StrategyBuilderContext,Polly.ResilienceStrategy{``0}})">
            <summary>
            Adds a reactive resilience strategy to the builder.
            </summary>
            <typeparam name="TResult">The result type.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="factory">The strategy instance.</param>
            <returns>The same builder instance.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> or <paramref name="factory"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.InvalidOperationException">Thrown when this builder was already used to create a pipeline. The builder cannot be modified after it has been used.</exception>
        </member>
        <member name="T:Polly.ResiliencePipeline`1">
            <summary>
            Resilience pipeline is used to execute the user-provided callbacks.
            </summary>
            <typeparam name="T">The type of result this pipeline supports.</typeparam>
            <remarks>
            Resilience pipeline supports various types of callbacks of <typeparamref name="T"/> result type
            and provides a unified way to execute them. This includes overloads for synchronous and asynchronous callbacks.
            </remarks>
        </member>
        <member name="M:Polly.ResiliencePipeline`1.ExecuteAsync``2(System.Func{Polly.ResilienceContext,``1,System.Threading.Tasks.ValueTask{``0}},Polly.ResilienceContext,``1)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <param name="state">The state associated with the callback.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> or <paramref name="context"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline`1.ExecuteAsync``1(System.Func{Polly.ResilienceContext,System.Threading.Tasks.ValueTask{``0}},Polly.ResilienceContext)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> or <paramref name="context"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline`1.ExecuteAsync``2(System.Func{``1,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask{``0}},``1,System.Threading.CancellationToken)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="state">The state associated with the callback.</param>
            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> associated with the callback.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline`1.ExecuteAsync``1(System.Func{System.Threading.CancellationToken,System.Threading.Tasks.ValueTask{``0}},System.Threading.CancellationToken)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> associated with the callback.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline`1.ExecuteOutcomeAsync``2(System.Func{Polly.ResilienceContext,``1,System.Threading.Tasks.ValueTask{Polly.Outcome{``0}}},Polly.ResilienceContext,``1)">
            <summary>
            Executes the specified outcome-based callback.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <param name="state">The state associated with the callback.</param>
            <returns>The instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> or <paramref name="context"/> is <see langword="null"/>.</exception>
            <remarks>
            This method is for advanced and high performance scenarios. The caller must make sure that the <paramref name="callback"/>
            does not throw any exceptions. Instead, it converts them to <see cref="T:Polly.Outcome`1"/>.
            </remarks>
        </member>
        <member name="F:Polly.ResiliencePipeline`1.Empty">
            <summary>
            Resilience pipeline that executes the user-provided callback without any additional logic.
            </summary>
        </member>
        <member name="M:Polly.ResiliencePipeline`1.Execute``2(System.Func{Polly.ResilienceContext,``1,``0},Polly.ResilienceContext,``1)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <param name="state">The state associated with the callback.</param>
            <returns>An instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> or <paramref name="context"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline`1.Execute``1(System.Func{Polly.ResilienceContext,``0},Polly.ResilienceContext)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <returns>An instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> or <paramref name="context"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline`1.Execute``1(System.Func{System.Threading.CancellationToken,``0},System.Threading.CancellationToken)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> associated with the callback.</param>
            <returns>An instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline`1.Execute``1(System.Func{``0})">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <returns>An instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline`1.Execute``2(System.Func{``1,``0},``1)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="state">The state associated with the callback.</param>
            <returns>An instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.ResiliencePipeline`1.Execute``2(System.Func{``1,System.Threading.CancellationToken,``0},``1,System.Threading.CancellationToken)">
            <summary>
            Executes the specified callback.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="state">The state associated with the callback.</param>
            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> associated with the callback.</param>
            <returns>An instance of <see cref="T:System.Threading.Tasks.ValueTask"/> that represents the asynchronous execution.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="callback"/> is <see langword="null"/>.</exception>
        </member>
        <member name="T:Polly.ResilienceProperties">
            <summary>
            Represents a collection of custom resilience properties.
            </summary>
        </member>
        <member name="M:Polly.ResilienceProperties.TryGetValue``1(Polly.ResiliencePropertyKey{``0},``0@)">
            <summary>
            Gets the value of a given property.
            </summary>
            <param name="key">Strongly typed key to get the value of the property.</param>
            <param name="value">Returns the value of the property.</param>
            <typeparam name="TValue">The type of property value as defined by <paramref name="key"/> parameter.</typeparam>
            <returns>True, if a property was retrieved.</returns>
        </member>
        <member name="M:Polly.ResilienceProperties.GetValue``1(Polly.ResiliencePropertyKey{``0},``0)">
            <summary>
            Gets the value of a given property with a fallback default value.
            </summary>
            <param name="key">Strongly typed key to get the value of the property.</param>
            <param name="defaultValue">The default value to use if property is not found.</param>
            <typeparam name="TValue">The type of property value as defined by <paramref name="key"/> parameter.</typeparam>
            <returns>The property value or the default value.</returns>
        </member>
        <member name="M:Polly.ResilienceProperties.Set``1(Polly.ResiliencePropertyKey{``0},``0)">
            <summary>
            Sets the value of a given property.
            </summary>
            <param name="key">Strongly typed key to get the value of the property.</param>
            <param name="value">Returns the value of the property.</param>
            <typeparam name="TValue">The type of property value as defined by <paramref name="key"/> parameter.</typeparam>
        </member>
        <member name="T:Polly.ResiliencePropertyKey`1">
            <summary>
            Represents a key used by <see cref="T:Polly.ResilienceProperties"/>.
            </summary>
            <typeparam name="TValue">The type of the value of the property.</typeparam>
        </member>
        <member name="M:Polly.ResiliencePropertyKey`1.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.ResiliencePropertyKey`1"/> struct.
            </summary>
            <param name="key">The key name.</param>
        </member>
        <member name="P:Polly.ResiliencePropertyKey`1.Key">
            <summary>
            Gets the name of the key.
            </summary>
        </member>
        <member name="M:Polly.ResiliencePropertyKey`1.ToString">
            <inheritdoc/>
        </member>
        <member name="T:Polly.ResilienceStrategy">
            <summary>
            Base class for all proactive resilience strategies.
            </summary>
        </member>
        <member name="M:Polly.ResilienceStrategy.ExecuteCore``2(System.Func{Polly.ResilienceContext,``1,System.Threading.Tasks.ValueTask{Polly.Outcome{``0}}},Polly.ResilienceContext,``1)">
            <summary>
            An implementation of a proactive resilience strategy that executes the specified <paramref name="callback"/>.
            </summary>
            <typeparam name="TResult">The type of result returned by the callback.</typeparam>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <param name="state">The state associated with the callback.</param>
            <returns>
            An instance of a pending <see cref="T:System.Threading.Tasks.ValueTask"/> for asynchronous executions or a completed <see cref="T:System.Threading.Tasks.ValueTask"/> task for synchronous executions.
            </returns>
            <remarks>
            The provided callback never throws an exception. Instead, the exception is captured and converted to an <see cref="T:Polly.Outcome`1"/>.
            Similarly, do not throw exceptions from your strategy implementation. Instead, return an exception instance as <see cref="T:Polly.Outcome`1"/>.
            </remarks>
        </member>
        <member name="T:Polly.ResilienceStrategy`1">
            <summary>
            This base strategy class is used to simplify the implementation of generic (reactive)
            strategies by limiting the number of generic types the execute method receives.
            </summary>
            <typeparam name="TResult">The type of result this strategy handles.</typeparam>
            <remarks>
            For strategies that handle all result types the generic parameter must be of type <see cref="T:System.Object"/>.
            </remarks>
        </member>
        <member name="M:Polly.ResilienceStrategy`1.ExecuteCore``1(System.Func{Polly.ResilienceContext,``0,System.Threading.Tasks.ValueTask{Polly.Outcome{`0}}},Polly.ResilienceContext,``0)">
            <summary>
            An implementation of a reactive resilience strategy that executes the specified <paramref name="callback"/>.
            </summary>
            <typeparam name="TState">The type of state associated with the callback.</typeparam>
            <param name="callback">The user-provided callback.</param>
            <param name="context">The context associated with the callback.</param>
            <param name="state">The state associated with the callback.</param>
            <returns>
            An instance of a pending <see cref="T:System.Threading.Tasks.ValueTask"/> for asynchronous executions or a completed <see cref="T:System.Threading.Tasks.ValueTask"/> task for synchronous executions.
            </returns>
            <remarks>
            The provided callback never throws an exception. Instead, the exception is captured and converted to an <see cref="T:Polly.Outcome`1"/>.
            Similarly, do not throw exceptions from your strategy implementation. Instead, return an exception instance as <see cref="T:Polly.Outcome`1"/>.
            </remarks>
        </member>
        <member name="T:Polly.ResilienceStrategyOptions">
            <summary>
            The options associated with the individual resilience strategy.
            </summary>
        </member>
        <member name="P:Polly.ResilienceStrategyOptions.Name">
            <summary>
            Gets or sets the name of the strategy.
            </summary>
            <remarks>
            This name uniquely identifies a particular instance of a specific strategy and is also included
            in the telemetry that is produced by the individual resilience strategies.
            </remarks>
            <value>The default value is <see langword="null"/>.</value>
        </member>
        <member name="T:Polly.ResilienceValidationContext">
            <summary>
            The validation context that encapsulates parameters for the validation.
            </summary>
        </member>
        <member name="M:Polly.ResilienceValidationContext.#ctor(System.Object,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.ResilienceValidationContext"/> class.
            </summary>
            <param name="instance">The instance being validated.</param>
            <param name="primaryMessage">The primary validation message.</param>
        </member>
        <member name="P:Polly.ResilienceValidationContext.Instance">
            <summary>
            Gets the instance being validated.
            </summary>
        </member>
        <member name="P:Polly.ResilienceValidationContext.PrimaryMessage">
            <summary>
            Gets the primary validation message.
            </summary>
            <remarks>
            The primary message is displayed first followed by the details about the validation errors.
            </remarks>
        </member>
        <member name="T:Polly.Retry.OnRetryArguments`1">
            <summary>
            Represents the arguments used by <see cref="P:Polly.Retry.RetryStrategyOptions`1.OnRetry"/> for handling the retry event.
            </summary>
            <typeparam name="TResult">The type of result.</typeparam>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.Retry.OnRetryArguments`1.#ctor(Polly.ResilienceContext,Polly.Outcome{`0},System.Int32,System.TimeSpan,System.TimeSpan)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Retry.OnRetryArguments`1"/> struct.
            </summary>
            <param name="outcome">The context in which the resilience operation or event occurred.</param>
            <param name="context">The outcome of the resilience operation or event.</param>
            <param name="attemptNumber">The zero-based attempt number.</param>
            <param name="retryDelay">The delay before the next retry.</param>
            <param name="duration">The duration of this attempt.</param>
        </member>
        <member name="P:Polly.Retry.OnRetryArguments`1.Outcome">
            <summary>
            Gets the outcome that will be retried.
            </summary>
        </member>
        <member name="P:Polly.Retry.OnRetryArguments`1.Context">
            <summary>
            Gets the context of this event.
            </summary>
        </member>
        <member name="P:Polly.Retry.OnRetryArguments`1.AttemptNumber">
            <summary>
            Gets the zero-based attempt number.
            </summary>
        </member>
        <member name="P:Polly.Retry.OnRetryArguments`1.RetryDelay">
            <summary>
            Gets the delay before the next retry.
            </summary>
        </member>
        <member name="P:Polly.Retry.OnRetryArguments`1.Duration">
            <summary>
            Gets the duration of this attempt.
            </summary>
        </member>
        <member name="T:Polly.Retry.RetryDelayGeneratorArguments`1">
            <summary>
            Represents the arguments used by <see cref="P:Polly.Retry.RetryStrategyOptions`1.DelayGenerator"/> for generating the next retry delay.
            </summary>
            <typeparam name="TResult">The type of result.</typeparam>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.Retry.RetryDelayGeneratorArguments`1.#ctor(Polly.ResilienceContext,Polly.Outcome{`0},System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Retry.RetryDelayGeneratorArguments`1"/> struct.
            </summary>
            <param name="outcome">The context in which the resilience operation or event occurred.</param>
            <param name="context">The outcome of the resilience operation or event.</param>
            <param name="attemptNumber">The zero-based attempt number.</param>
        </member>
        <member name="P:Polly.Retry.RetryDelayGeneratorArguments`1.Outcome">
            <summary>
            Gets the outcome of the resilience operation or event.
            </summary>
        </member>
        <member name="P:Polly.Retry.RetryDelayGeneratorArguments`1.Context">
            <summary>
            Gets the context in which the resilience operation or event occurred.
            </summary>
        </member>
        <member name="P:Polly.Retry.RetryDelayGeneratorArguments`1.AttemptNumber">
            <summary>
            Gets The zero-based attempt number.
            </summary>
        </member>
        <member name="M:Polly.Retry.RetryHelper.DecorrelatedJitterBackoffV2(System.Int32,System.TimeSpan,System.Double@,System.Func{System.Double})">
            <summary>
            Generates sleep durations in an exponentially backing-off, jittered manner, making sure to mitigate any correlations.
            For example: 850ms, 1455ms, 3060ms.
            Per discussion in Polly issue https://github.com/App-vNext/Polly/issues/530, the jitter of this implementation exhibits fewer spikes and a smoother distribution than the AWS jitter formula.
            </summary>
            <param name="attempt">The current attempt.</param>
            <param name="baseDelay">The median delay to target before the first retry, call it <c>f (= f * 2^0).</c>
            Choose this value both to approximate the first delay, and to scale the remainder of the series.
            Subsequent retries will (over a large sample size) have a median approximating retries at time <c>f * 2^1, f * 2^2 ... f * 2^t</c> etc for try t.
            The actual amount of delay-before-retry for try t may be distributed between 0 and <c>f * (2^(t+1) - 2^(t-1)) for t >= 2;</c>
            or between 0 and <c>f * 2^(t+1)</c>, for t is 0 or 1.</param>
            <param name="prev">The previous state value used for calculations.</param>
            <param name="randomizer">The generator to use.</param>
            <remarks>
            This code was adopted from https://github.com/Polly-Contrib/Polly.Contrib.WaitAndRetry/blob/master/src/Polly.Contrib.WaitAndRetry/Backoff.DecorrelatedJitterV2.cs.
            </remarks>
        </member>
        <member name="T:Polly.Retry.RetryPredicateArguments`1">
            <summary>
            Represents the arguments used by <see cref="P:Polly.Retry.RetryStrategyOptions`1.ShouldHandle"/> for determining whether a retry should be performed.
            </summary>
            <typeparam name="TResult">The type of result.</typeparam>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.Retry.RetryPredicateArguments`1.#ctor(Polly.ResilienceContext,Polly.Outcome{`0},System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Retry.RetryPredicateArguments`1"/> struct.
            </summary>
            <param name="outcome">The context in which the resilience operation or event occurred.</param>
            <param name="context">The outcome of the resilience operation or event.</param>
            <param name="attemptNumber">The zero-based attempt number.</param>
        </member>
        <member name="P:Polly.Retry.RetryPredicateArguments`1.Outcome">
            <summary>
            Gets the outcome of the user-specified callback.
            </summary>
        </member>
        <member name="P:Polly.Retry.RetryPredicateArguments`1.Context">
            <summary>
            Gets the context of this event.
            </summary>
        </member>
        <member name="P:Polly.Retry.RetryPredicateArguments`1.AttemptNumber">
            <summary>
            Gets the zero-based attempt number.
            </summary>
        </member>
        <member name="T:Polly.Retry.RetryStrategyOptions">
            <inheritdoc/>
        </member>
        <member name="T:Polly.Retry.RetryStrategyOptions`1">
            <summary>
            Represents the options used to configure a retry strategy.
            </summary>
            <typeparam name="TResult">The type of result the retry strategy handles.</typeparam>
        </member>
        <member name="M:Polly.Retry.RetryStrategyOptions`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Retry.RetryStrategyOptions`1"/> class.
            </summary>
        </member>
        <member name="P:Polly.Retry.RetryStrategyOptions`1.MaxRetryAttempts">
            <summary>
            Gets or sets the maximum number of retries to use, in addition to the original call.
            </summary>
            <value>
            The default value is 3 retries.
            </value>
            <remarks>
            To retry indefinitely use <see cref="F:System.Int32.MaxValue"/>. Note that the reported attempt number is capped at <see cref="F:System.Int32.MaxValue"/>.
            </remarks>
        </member>
        <member name="P:Polly.Retry.RetryStrategyOptions`1.BackoffType">
            <summary>
            Gets or sets the type of the back-off.
            </summary>
            <remarks>
            This property is ignored when <see cref="P:Polly.Retry.RetryStrategyOptions`1.DelayGenerator"/> is set.
            </remarks>
            <value>
            The default value is <see cref="F:Polly.DelayBackoffType.Constant"/>.
            </value>
        </member>
        <member name="P:Polly.Retry.RetryStrategyOptions`1.UseJitter">
            <summary>
            Gets or sets a value indicating whether jitter should be used when calculating the backoff delay between retries.
            </summary>
            <remarks>
            See <see href="https://github.com/Polly-Contrib/Polly.Contrib.WaitAndRetry#new-jitter-recommendation"/> for more details
            on how jitter can improve the resilience when the retries are correlated.
            </remarks>
            <value>
            The default value is <see langword="false"/>.
            </value>
        </member>
        <member name="P:Polly.Retry.RetryStrategyOptions`1.Delay">
            <summary>
            Gets or sets the base delay between retries.
            </summary>
            <remarks>
            This value is used with the combination of <see cref="P:Polly.Retry.RetryStrategyOptions`1.BackoffType"/> to generate the final delay for each individual retry attempt:
            <list type="bullet">
            <item>
            <see cref="F:Polly.DelayBackoffType.Exponential"/>: Represents the median delay to target before the first retry.
            </item>
            <item>
            <see cref="F:Polly.DelayBackoffType.Linear"/>: Represents the initial delay, the following delays increasing linearly with this value.
            </item>
            <item>
            <see cref="F:Polly.DelayBackoffType.Constant"/> Represents the constant delay between retries.
            </item>
            </list>
            This property is ignored when <see cref="P:Polly.Retry.RetryStrategyOptions`1.DelayGenerator"/> is set and returns a valid <see cref="T:System.TimeSpan"/> value.
            </remarks>
            <value>
            The default value is 2 seconds.
            </value>
        </member>
        <member name="P:Polly.Retry.RetryStrategyOptions`1.MaxDelay">
            <summary>
            Gets or sets the maximum delay between retries.
            </summary>
            <remarks>
            This property is used to cap the maximum delay between retries. It is useful when you want to limit the maximum delay after a certain
            number of retries when it could reach a unreasonably high values, especially if <see cref="F:Polly.DelayBackoffType.Exponential"/> backoff is used.
            If not specified, the delay is not capped. This property is ignored for delays generated by <see cref="P:Polly.Retry.RetryStrategyOptions`1.DelayGenerator"/>.
            </remarks>
            <value>
            The default value is <see langword="null"/>.
            </value>
        </member>
        <member name="P:Polly.Retry.RetryStrategyOptions`1.ShouldHandle">
            <summary>
            Gets or sets a predicate that determines whether the retry should be executed for a given outcome.
            </summary>
            <value>
            The default is a delegate that retries on any exception except <see cref="T:System.OperationCanceledException"/>. This property is required.
            </value>
        </member>
        <member name="P:Polly.Retry.RetryStrategyOptions`1.DelayGenerator">
            <summary>
            Gets or sets a generator that calculates the delay between retries.
            </summary>
            <remarks>
            The generator can override the delay generated by the retry strategy. If the generator returns <see langword="null"/>, the delay generated
            by the retry strategy for that attempt will be used.
            </remarks>
            <value>
            The default value is <see langword="null"/>.
            </value>
        </member>
        <member name="P:Polly.Retry.RetryStrategyOptions`1.OnRetry">
            <summary>
            Gets or sets an event delegate that is raised when the retry happens.
            </summary>
            <remarks>
            After this event, the result produced the by user-callback is discarded and disposed to prevent resource over-consumption. If
            you need to preserve the result for further processing, create the copy of the result or extract and store all necessary information
            from the result within the event.
            </remarks>
            <value>
            The default value is <see langword="null"/>.
            </value>
        </member>
        <member name="P:Polly.Retry.RetryStrategyOptions`1.Randomizer">
            <summary>
            Gets or sets the randomizer that is used by the retry strategy to generate random numbers.
            </summary>
            <value>
            The default value is thread-safe randomizer that returns values between 0.0 and 1.0.
            </value>
        </member>
        <member name="T:Polly.RetryResiliencePipelineBuilderExtensions">
            <summary>
            Extensions for adding retries to <see cref="T:Polly.ResiliencePipelineBuilder"/>.
            </summary>
        </member>
        <member name="M:Polly.RetryResiliencePipelineBuilderExtensions.AddRetry(Polly.ResiliencePipelineBuilder,Polly.Retry.RetryStrategyOptions)">
            <summary>
            Adds a retry to the builder.
            </summary>
            <param name="builder">The builder instance.</param>
            <param name="options">The retry options.</param>
            <returns>The builder instance with the retry strategy added.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> or <paramref name="options"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when <paramref name="options"/> are invalid.</exception>
        </member>
        <member name="M:Polly.RetryResiliencePipelineBuilderExtensions.AddRetry``1(Polly.ResiliencePipelineBuilder{``0},Polly.Retry.RetryStrategyOptions{``0})">
            <summary>
            Adds a retry to the builder.
            </summary>
            <typeparam name="TResult">The type of result the retry handles.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="options">The retry options.</param>
            <returns>The builder instance with the retry added.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> or <paramref name="options"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when <paramref name="options"/> are invalid.</exception>
        </member>
        <member name="T:Polly.Simmy.Behavior.BehaviorGeneratorArguments">
            <summary>
            Arguments used by the behavior chaos strategy to execute a user's delegate custom action.
            </summary>
        </member>
        <member name="M:Polly.Simmy.Behavior.BehaviorGeneratorArguments.#ctor(Polly.ResilienceContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.Behavior.BehaviorGeneratorArguments"/> struct.
            </summary>
            <param name="context">The resilience context instance.</param>
        </member>
        <member name="P:Polly.Simmy.Behavior.BehaviorGeneratorArguments.Context">
            <summary>
            Gets the resilience context instance.
            </summary>
        </member>
        <member name="T:Polly.Simmy.Behavior.ChaosBehaviorStrategyOptions">
            <summary>
            Represents the options for the behavior chaos strategy.
            </summary>
        </member>
        <member name="M:Polly.Simmy.Behavior.ChaosBehaviorStrategyOptions.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.Behavior.ChaosBehaviorStrategyOptions"/> class.
            </summary>
        </member>
        <member name="P:Polly.Simmy.Behavior.ChaosBehaviorStrategyOptions.OnBehaviorInjected">
            <summary>
            Gets or sets the delegate that's raised when the behavior is injected.
            </summary>
            <value>
            Defaults to <see langword="null"/>.
            </value>
        </member>
        <member name="P:Polly.Simmy.Behavior.ChaosBehaviorStrategyOptions.BehaviorGenerator">
            <summary>
            Gets or sets the behavior that is going to be injected for a given execution.
            </summary>
            <value>
            Defaults to <see langword="null"/>. This property is required.
            </value>
        </member>
        <member name="T:Polly.Simmy.Behavior.OnBehaviorInjectedArguments">
            <summary>
            Arguments used by the behavior chaos strategy to notify that a custom behavior was injected.
            </summary>
        </member>
        <member name="M:Polly.Simmy.Behavior.OnBehaviorInjectedArguments.#ctor(Polly.ResilienceContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.Behavior.OnBehaviorInjectedArguments"/> struct.
            </summary>
            <param name="context">The resilience context instance.</param>
        </member>
        <member name="P:Polly.Simmy.Behavior.OnBehaviorInjectedArguments.Context">
            <summary>
            Gets the resilience context instance.
            </summary>
        </member>
        <member name="T:Polly.Simmy.ChaosBehaviorPipelineBuilderExtensions">
            <summary>
            Extension methods for adding chaos behaviors to a <see cref="T:Polly.ResiliencePipelineBuilder"/>.
            </summary>
        </member>
        <member name="M:Polly.Simmy.ChaosBehaviorPipelineBuilderExtensions.AddChaosBehavior``1(``0,System.Double,System.Func{System.Threading.CancellationToken,System.Threading.Tasks.ValueTask})">
            <summary>
            Adds a behavior chaos strategy to the builder.
            </summary>
            <typeparam name="TBuilder">The builder type.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="injectionRate">The injection rate for a given execution, which the value should be between [0, 1] (inclusive).</param>
            <param name="behavior">The behavior to be injected.</param>
            <returns>The same builder instance.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when the options produced from the arguments are invalid.</exception>
        </member>
        <member name="M:Polly.Simmy.ChaosBehaviorPipelineBuilderExtensions.AddChaosBehavior``1(``0,Polly.Simmy.Behavior.ChaosBehaviorStrategyOptions)">
            <summary>
            Adds a behavior chaos strategy to the builder.
            </summary>
            <typeparam name="TBuilder">The builder type.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="options">The behavior options.</param>
            <returns>The same builder instance.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> or <paramref name="options"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when <paramref name="options"/> are invalid.</exception>
        </member>
        <member name="T:Polly.Simmy.ChaosStrategy">
            <summary>
            Base class for chaos strategies.
            </summary>
        </member>
        <member name="M:Polly.Simmy.ChaosStrategy.#ctor(Polly.Simmy.ChaosStrategyOptions)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.ChaosStrategy"/> class.
            </summary>
            <param name="options">The chaos strategy options.</param>
        </member>
        <member name="P:Polly.Simmy.ChaosStrategy.InjectionRateGenerator">
            <summary>
            Gets the injection rate for a given execution, which the value should be between [0, 1] (inclusive).
            </summary>
        </member>
        <member name="P:Polly.Simmy.ChaosStrategy.EnabledGenerator">
            <summary>
            Gets a value that indicates whether or not the chaos strategy is enabled for a given execution.
            </summary>
        </member>
        <member name="M:Polly.Simmy.ChaosStrategy.ShouldInjectAsync(Polly.ResilienceContext)">
            <summary>
            Determines whether or not the chaos strategy should be injected based on the injection rate and enabled flag.
            </summary>
            <param name="context">The <see cref="T:Polly.ResilienceContext"/> instance.</param>
            <returns>A boolean value that indicates whether or not the chaos strategy should be injected.</returns>
            <remarks>Use this method before injecting any chaos strategy to evaluate whether a given chaos strategy needs to be injected during the execution.</remarks>
        </member>
        <member name="T:Polly.Simmy.ChaosStrategy`1">
            <summary>
            Base class for generic (reactive) chaos strategies.
            </summary>
            <typeparam name="T">The type of result this strategy handles.</typeparam>
            <remarks>
            For strategies that handle all result types the generic parameter must be of type <see cref="T:System.Object"/>.
            </remarks>
        </member>
        <member name="M:Polly.Simmy.ChaosStrategy`1.#ctor(Polly.Simmy.ChaosStrategyOptions)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.ChaosStrategy`1"/> class.
            </summary>
            <param name="options">The chaos strategy options.</param>
        </member>
        <member name="P:Polly.Simmy.ChaosStrategy`1.InjectionRateGenerator">
            <summary>
            Gets the injection rate for a given execution, which the value should be between [0, 1] (inclusive).
            </summary>
        </member>
        <member name="P:Polly.Simmy.ChaosStrategy`1.EnabledGenerator">
            <summary>
            Gets a value that indicates whether or not the chaos strategy is enabled for a given execution.
            </summary>
        </member>
        <member name="M:Polly.Simmy.ChaosStrategy`1.ShouldInjectAsync(Polly.ResilienceContext)">
            <summary>
            Determines whether or not the chaos strategy should be injected based on the injection rate and enabled flag.
            </summary>
            <param name="context">The <see cref="T:Polly.ResilienceContext"/> instance.</param>
            <returns>A boolean value that indicates whether or not the chaos strategy should be injected.</returns>
            <remarks>Use this method before injecting any chaos strategy to evaluate whether a given chaos strategy needs to be injected during the execution.</remarks>
        </member>
        <member name="T:Polly.Simmy.ChaosStrategyOptions">
            <summary>
            The options associated with the <see cref="T:Polly.Simmy.ChaosStrategy"/>.
            </summary>
        </member>
        <member name="P:Polly.Simmy.ChaosStrategyOptions.InjectionRate">
            <summary>
            Gets or sets the injection rate for a given execution, which the value should be between [0, 1] (inclusive).
            </summary>
            <value>
            Defaults to <c>0.001</c>, meaning one in a thousand executions/0.1%. When <see cref="P:Polly.Simmy.ChaosStrategyOptions.InjectionRateGenerator"/> is specified, this property is ignored.
            </value>
        </member>
        <member name="P:Polly.Simmy.ChaosStrategyOptions.InjectionRateGenerator">
            <summary>
            Gets or sets the injection rate generator for a given execution, which the value should be between [0, 1] (inclusive).
            </summary>
            <value>
            Defaults to <see langword="null"/>. When generator is specified, the <see cref="P:Polly.Simmy.ChaosStrategyOptions.InjectionRate"/> property is ignored.
            </value>
        </member>
        <member name="P:Polly.Simmy.ChaosStrategyOptions.EnabledGenerator">
            <summary>
            Gets or sets the enable generator that indicates whether or not the chaos strategy is enabled for a given execution.
            </summary>
            <value>
            Defaults to <see langword="null"/>. When the generator is specified, the <see cref="P:Polly.Simmy.ChaosStrategyOptions.Enabled"/> property is ignored.
            </value>
        </member>
        <member name="P:Polly.Simmy.ChaosStrategyOptions.Enabled">
            <summary>
            Gets or sets a value indicating whether or not the chaos strategy is enabled for a given execution.
            </summary>
            <value>
            Defaults to <see langword="true"/>. When <see cref="P:Polly.Simmy.ChaosStrategyOptions.EnabledGenerator"/> is specified, this property is ignored.
            </value>
        </member>
        <member name="P:Polly.Simmy.ChaosStrategyOptions.Randomizer">
            <summary>
            Gets or sets the Randomizer generator instance that is used to evaluate the injection rate.
            </summary>
            <value>
            The default randomizer is thread safe and returns values between <c>0.0</c> and <c>1.0</c>.
            </value>
        </member>
        <member name="T:Polly.Simmy.EnabledGeneratorArguments">
            <summary>
            Defines the arguments for the <see cref="P:Polly.Simmy.ChaosStrategyOptions.EnabledGenerator"/>.
            </summary>
        </member>
        <member name="M:Polly.Simmy.EnabledGeneratorArguments.#ctor(Polly.ResilienceContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.EnabledGeneratorArguments"/> struct.
            </summary>
            <param name="context">The resilience context instance.</param>
        </member>
        <member name="P:Polly.Simmy.EnabledGeneratorArguments.Context">
            <summary>
            Gets the ResilienceContext instance.
            </summary>
        </member>
        <member name="T:Polly.Simmy.Fault.ChaosFaultStrategyOptions">
            <summary>
            Represents the options for the fault chaos strategy.
            </summary>
        </member>
        <member name="M:Polly.Simmy.Fault.ChaosFaultStrategyOptions.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.Fault.ChaosFaultStrategyOptions"/> class.
            </summary>
        </member>
        <member name="P:Polly.Simmy.Fault.ChaosFaultStrategyOptions.OnFaultInjected">
            <summary>
            Gets or sets the delegate that's raised when the fault is injected.
            </summary>
            <value>
            Defaults to <see langword="null"/>.
            </value>
        </member>
        <member name="P:Polly.Simmy.Fault.ChaosFaultStrategyOptions.FaultGenerator">
            <summary>
            Gets or sets the fault generator to be used for fault injection.
            </summary>
            <value>
            Defaults to <see langword="null"/>. This property is required.
            </value>
        </member>
        <member name="T:Polly.Simmy.Fault.FaultGenerator">
            <summary>
            A generator for creating faults (exceptions) using registered delegate functions.
            </summary>
            <remarks>
            An instance of this class can be assigned to the <see cref="P:Polly.Simmy.Fault.ChaosFaultStrategyOptions.FaultGenerator"/> property.
            </remarks>
        </member>
        <member name="M:Polly.Simmy.Fault.FaultGenerator.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.Fault.FaultGenerator"/> class.
            </summary>
        </member>
        <member name="M:Polly.Simmy.Fault.FaultGenerator.AddException(System.Func{System.Exception},System.Int32)">
            <summary>
            Registers an exception generator delegate.
            </summary>
            <param name="generator">The delegate that generates the exception.</param>
            <param name="weight">The weight assigned to this generator. Defaults to <c>100</c>.</param>
            <returns>The current instance of <see cref="T:Polly.Simmy.Fault.FaultGenerator"/>.</returns>
        </member>
        <member name="M:Polly.Simmy.Fault.FaultGenerator.AddException(System.Func{Polly.ResilienceContext,System.Exception},System.Int32)">
            <summary>
            Registers an exception generator delegate that accepts a <see cref="T:Polly.ResilienceContext"/>.
            </summary>
            <param name="generator">The delegate that generates the exception, accepting a <see cref="T:Polly.ResilienceContext"/>.</param>
            <param name="weight">The weight assigned to this generator. Defaults to <c>100</c>.</param>
            <returns>The current instance of <see cref="T:Polly.Simmy.Fault.FaultGenerator"/>.</returns>
        </member>
        <member name="M:Polly.Simmy.Fault.FaultGenerator.AddException``1(System.Int32)">
            <summary>
            Registers an exception generator for a specific exception type, using the default constructor of that exception.
            </summary>
            <typeparam name="TException">The type of the exception to generate.</typeparam>
            <param name="weight">The weight assigned to this generator. Defaults to <c>100</c>.</param>
            <returns>The current instance of <see cref="T:Polly.Simmy.Fault.FaultGenerator"/>.</returns>
        </member>
        <member name="M:Polly.Simmy.Fault.FaultGenerator.op_Implicit(Polly.Simmy.Fault.FaultGenerator)~System.Func{Polly.Simmy.Fault.FaultGeneratorArguments,System.Threading.Tasks.ValueTask{System.Exception}}">
            <summary>
            Provides an implicit conversion from <see cref="T:Polly.Simmy.Fault.FaultGenerator"/> to a delegate compatible with <see cref="P:Polly.Simmy.Fault.ChaosFaultStrategyOptions.FaultGenerator"/>.
            </summary>
            <param name="generator">The instance of <see cref="T:Polly.Simmy.Fault.FaultGenerator"/>.</param>
        </member>
        <member name="T:Polly.Simmy.Fault.FaultGeneratorArguments">
            <summary>
            Arguments used by the fault chaos strategy to ge the fault that is going to be injected.
            </summary>
        </member>
        <member name="M:Polly.Simmy.Fault.FaultGeneratorArguments.#ctor(Polly.ResilienceContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.Fault.FaultGeneratorArguments"/> struct.
            </summary>
            <param name="context">The resilience context instance.</param>
        </member>
        <member name="P:Polly.Simmy.Fault.FaultGeneratorArguments.Context">
            <summary>
            Gets the resilience context instance.
            </summary>
        </member>
        <member name="T:Polly.Simmy.Fault.OnFaultInjectedArguments">
            <summary>
            Arguments used by the fault chaos strategy to notify that an fault was injected.
            </summary>
        </member>
        <member name="M:Polly.Simmy.Fault.OnFaultInjectedArguments.#ctor(Polly.ResilienceContext,System.Exception)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.Fault.OnFaultInjectedArguments"/> struct.
            </summary>
            <param name="context">The resilience context instance.</param>
            <param name="fault">The fault that was injected.</param>
        </member>
        <member name="P:Polly.Simmy.Fault.OnFaultInjectedArguments.Context">
            <summary>
            Gets the resilience context instance.
            </summary>
        </member>
        <member name="P:Polly.Simmy.Fault.OnFaultInjectedArguments.Fault">
            <summary>
            Gets the fault that was injected.
            </summary>
        </member>
        <member name="T:Polly.Simmy.ChaosFaultPipelineBuilderExtensions">
            <summary>
            Extension methods for adding chaos fault strategy to a <see cref="T:Polly.ResiliencePipelineBuilder"/>.
            </summary>
        </member>
        <member name="M:Polly.Simmy.ChaosFaultPipelineBuilderExtensions.AddChaosFault``1(``0,System.Double,System.Func{System.Exception})">
            <summary>
            Adds a fault chaos strategy to the builder.
            </summary>
            <typeparam name="TBuilder">The builder type.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="injectionRate">The injection rate for a given execution, which the value should be between [0, 1] (inclusive).</param>
            <param name="faultGenerator">The exception generator delegate.</param>
            <returns>The same builder instance.</returns>
        </member>
        <member name="M:Polly.Simmy.ChaosFaultPipelineBuilderExtensions.AddChaosFault``1(``0,Polly.Simmy.Fault.ChaosFaultStrategyOptions)">
            <summary>
            Adds a fault chaos strategy to the builder.
            </summary>
            <typeparam name="TBuilder">The builder type.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="options">The fault strategy options.</param>
            <returns>The same builder instance.</returns>
        </member>
        <member name="T:Polly.Simmy.InjectionRateGeneratorArguments">
            <summary>
            Defines the arguments for the <see cref="P:Polly.Simmy.ChaosStrategyOptions.InjectionRateGenerator"/>.
            </summary>
        </member>
        <member name="M:Polly.Simmy.InjectionRateGeneratorArguments.#ctor(Polly.ResilienceContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.InjectionRateGeneratorArguments"/> struct.
            </summary>
            <param name="context">The resilience context instance.</param>
        </member>
        <member name="P:Polly.Simmy.InjectionRateGeneratorArguments.Context">
            <summary>
            Gets the ResilienceContext instance.
            </summary>
        </member>
        <member name="T:Polly.Simmy.Latency.ChaosLatencyStrategyOptions">
            <summary>
            Represents the options for the latency chaos strategy.
            </summary>
        </member>
        <member name="M:Polly.Simmy.Latency.ChaosLatencyStrategyOptions.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.Latency.ChaosLatencyStrategyOptions"/> class.
            </summary>
        </member>
        <member name="P:Polly.Simmy.Latency.ChaosLatencyStrategyOptions.OnLatencyInjected">
            <summary>
            Gets or sets the delegate that's raised when a latency is injected.
            </summary>
            <value>
            Defaults to <see langword="null"/>.
            </value>
        </member>
        <member name="P:Polly.Simmy.Latency.ChaosLatencyStrategyOptions.LatencyGenerator">
            <summary>
            Gets or sets the latency generator that generates the delay for a given execution.
            </summary>
            <value>
            Defaults to <see langword="null"/>. When this property is <see langword="null"/> the <see cref="P:Polly.Simmy.Latency.ChaosLatencyStrategyOptions.Latency"/> is used.
            </value>
        </member>
        <member name="P:Polly.Simmy.Latency.ChaosLatencyStrategyOptions.Latency">
            <summary>
            Gets or sets the latency to be injected for a given execution.
            </summary>
            <value>
            Defaults to <c>30</c> seconds. When <see cref="P:Polly.Simmy.Latency.ChaosLatencyStrategyOptions.LatencyGenerator"/> is specified, this property is ignored.
            </value>
        </member>
        <member name="T:Polly.Simmy.Latency.LatencyGeneratorArguments">
            <summary>
            Arguments used by the <see cref="P:Polly.Simmy.Latency.ChaosLatencyStrategyOptions.LatencyGenerator"/>.
            </summary>
        </member>
        <member name="M:Polly.Simmy.Latency.LatencyGeneratorArguments.#ctor(Polly.ResilienceContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.Latency.LatencyGeneratorArguments"/> struct.
            </summary>
            <param name="context">The resilience context instance.</param>
        </member>
        <member name="P:Polly.Simmy.Latency.LatencyGeneratorArguments.Context">
            <summary>
            Gets the resilience context instance.
            </summary>
        </member>
        <member name="T:Polly.Simmy.Latency.OnLatencyInjectedArguments">
            <summary>
            Arguments used by the latency chaos strategy to notify that a latency was injected.
            </summary>
        </member>
        <member name="M:Polly.Simmy.Latency.OnLatencyInjectedArguments.#ctor(Polly.ResilienceContext,System.TimeSpan)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.Latency.OnLatencyInjectedArguments"/> struct.
            </summary>
            <param name="context">The resilience context instance.</param>
            <param name="latency">The latency that was injected.</param>
        </member>
        <member name="P:Polly.Simmy.Latency.OnLatencyInjectedArguments.Context">
            <summary>
            Gets the resilience context instance.
            </summary>
        </member>
        <member name="P:Polly.Simmy.Latency.OnLatencyInjectedArguments.Latency">
            <summary>
            Gets the latency that was injected.
            </summary>
        </member>
        <member name="T:Polly.Simmy.ChaosLatencyPipelineBuilderExtensions">
            <summary>
            Extension methods for adding chaos latency strategies to a <see cref="T:Polly.ResiliencePipelineBuilderBase"/>.
            </summary>
        </member>
        <member name="M:Polly.Simmy.ChaosLatencyPipelineBuilderExtensions.AddChaosLatency``1(``0,System.Double,System.TimeSpan)">
            <summary>
            Adds a latency chaos strategy to the builder.
            </summary>
            <typeparam name="TBuilder">The builder type.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="injectionRate">The injection rate for a given execution, which the value should be between [0, 1] (inclusive).</param>
            <param name="latency">The delay value.</param>
            <returns>The same builder instance.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when the options produced from the arguments are invalid.</exception>
        </member>
        <member name="M:Polly.Simmy.ChaosLatencyPipelineBuilderExtensions.AddChaosLatency``1(``0,Polly.Simmy.Latency.ChaosLatencyStrategyOptions)">
            <summary>
            Adds a latency chaos strategy to the builder.
            </summary>
            <typeparam name="TBuilder">The builder type.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="options">The latency options.</param>
            <returns>The same builder instance.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> or <paramref name="options"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when <paramref name="options"/> are invalid.</exception>
        </member>
        <member name="T:Polly.Simmy.Outcomes.ChaosOutcomeStrategyOptions`1">
            <summary>
            Represents the options for the outcome chaos strategy.
            </summary>
            <typeparam name="TResult">The type of the outcome that was injected.</typeparam>
        </member>
        <member name="M:Polly.Simmy.Outcomes.ChaosOutcomeStrategyOptions`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.Outcomes.ChaosOutcomeStrategyOptions`1"/> class.
            </summary>
        </member>
        <member name="P:Polly.Simmy.Outcomes.ChaosOutcomeStrategyOptions`1.OnOutcomeInjected">
            <summary>
            Gets or sets the delegate that's invoked when the outcome is injected.
            </summary>
            <value>
            Defaults to <see langword="null"/>.
            </value>
        </member>
        <member name="P:Polly.Simmy.Outcomes.ChaosOutcomeStrategyOptions`1.OutcomeGenerator">
            <summary>
            Gets or sets the generator that generates the outcomes to be injected.
            </summary>
            <value>
            Defaults to <see langword="null"/>. This property is required.
            </value>
        </member>
        <member name="T:Polly.Simmy.Outcomes.OnOutcomeInjectedArguments`1">
            <summary>
            Arguments used by the outcome chaos strategy to notify that an outcome was injected.
            </summary>
            <typeparam name="TResult">The type of the outcome that was injected.</typeparam>
        </member>
        <member name="M:Polly.Simmy.Outcomes.OnOutcomeInjectedArguments`1.#ctor(Polly.ResilienceContext,Polly.Outcome{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.Outcomes.OnOutcomeInjectedArguments`1"/> struct.
            </summary>
            <param name="context">The resilience context instance.</param>
            <param name="outcome">The outcome that was injected.</param>
        </member>
        <member name="P:Polly.Simmy.Outcomes.OnOutcomeInjectedArguments`1.Context">
            <summary>
            Gets the resilience context instance.
            </summary>
        </member>
        <member name="P:Polly.Simmy.Outcomes.OnOutcomeInjectedArguments`1.Outcome">
            <summary>
            Gets the outcome that was injected.
            </summary>
        </member>
        <member name="T:Polly.Simmy.Outcomes.OutcomeGenerator`1">
            <summary>
            Generator that produces outcomes such as exceptions or results.
            </summary>
            <typeparam name="TResult">The type of the result.</typeparam>
            <remarks>
            An instance of this class is assignable to <see cref="P:Polly.Simmy.Outcomes.ChaosOutcomeStrategyOptions`1.OutcomeGenerator"/>.
            </remarks>
        </member>
        <member name="M:Polly.Simmy.Outcomes.OutcomeGenerator`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.Outcomes.OutcomeGenerator`1"/> class.
            </summary>
        </member>
        <member name="M:Polly.Simmy.Outcomes.OutcomeGenerator`1.AddException(System.Func{System.Exception},System.Int32)">
            <summary>
            Registers an exception generator delegate.
            </summary>
            <param name="generator">The delegate that generates the exception.</param>
            <param name="weight">The weight assigned to this generator. Defaults to <c>100</c>.</param>
            <returns>The current instance of <see cref="T:Polly.Simmy.Outcomes.OutcomeGenerator`1"/>.</returns>
        </member>
        <member name="M:Polly.Simmy.Outcomes.OutcomeGenerator`1.AddException(System.Func{Polly.ResilienceContext,System.Exception},System.Int32)">
            <summary>
            Registers an exception generator delegate that accepts a <see cref="T:Polly.ResilienceContext"/>.
            </summary>
            <param name="generator">The delegate that generates the exception, accepting a <see cref="T:Polly.ResilienceContext"/>.</param>
            <param name="weight">The weight assigned to this generator. Defaults to <c>100</c>.</param>
            <returns>The current instance of <see cref="T:Polly.Simmy.Outcomes.OutcomeGenerator`1"/>.</returns>
        </member>
        <member name="M:Polly.Simmy.Outcomes.OutcomeGenerator`1.AddException``1(System.Int32)">
            <summary>
            Registers an exception generator for a specific exception type, using the default constructor of that exception.
            </summary>
            <typeparam name="TException">The type of the exception to generate.</typeparam>
            <param name="weight">The weight assigned to this generator. Defaults to <c>100</c>.</param>
            <returns>The current instance of <see cref="T:Polly.Simmy.Outcomes.OutcomeGenerator`1"/>.</returns>
        </member>
        <member name="M:Polly.Simmy.Outcomes.OutcomeGenerator`1.AddResult(System.Func{`0},System.Int32)">
            <summary>
            Registers a result generator.
            </summary>
            <param name="generator">The delegate that generates the result.</param>
            <param name="weight">The weight assigned to this generator. Defaults to <c>100</c>.</param>
            <returns>The current instance of <see cref="T:Polly.Simmy.Outcomes.OutcomeGenerator`1"/>.</returns>
        </member>
        <member name="M:Polly.Simmy.Outcomes.OutcomeGenerator`1.AddResult(System.Func{Polly.ResilienceContext,`0},System.Int32)">
            <summary>
            Registers a result generator.
            </summary>
            <param name="generator">The delegate that generates the result, accepting a <see cref="T:Polly.ResilienceContext"/>.</param>
            <param name="weight">The weight assigned to this generator. Defaults to <c>100</c>.</param>
            <returns>The current instance of <see cref="T:Polly.Simmy.Outcomes.OutcomeGenerator`1"/>.</returns>
        </member>
        <member name="M:Polly.Simmy.Outcomes.OutcomeGenerator`1.op_Implicit(Polly.Simmy.Outcomes.OutcomeGenerator{`0})~System.Func{Polly.Simmy.Outcomes.OutcomeGeneratorArguments,System.Threading.Tasks.ValueTask{System.Nullable{Polly.Outcome{`0}}}}">
            <summary>
            Implicit conversion to <see cref="P:Polly.Simmy.Outcomes.ChaosOutcomeStrategyOptions`1.OutcomeGenerator"/>.
            </summary>
            <param name="generator">The generator instance.</param>
        </member>
        <member name="T:Polly.Simmy.Outcomes.OutcomeGeneratorArguments">
            <summary>
            Arguments used by <see cref="P:Polly.Simmy.Outcomes.ChaosOutcomeStrategyOptions`1.OutcomeGenerator"/>.
            </summary>
        </member>
        <member name="M:Polly.Simmy.Outcomes.OutcomeGeneratorArguments.#ctor(Polly.ResilienceContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Simmy.Outcomes.OutcomeGeneratorArguments"/> struct.
            </summary>
            <param name="context">The resilience context instance.</param>
        </member>
        <member name="P:Polly.Simmy.Outcomes.OutcomeGeneratorArguments.Context">
            <summary>
            Gets the resilience context instance.
            </summary>
        </member>
        <member name="T:Polly.Simmy.ChaosOutcomePipelineBuilderExtensions">
            <summary>
            Extension methods for adding chaos outcome strategy to a <see cref="T:Polly.ResiliencePipelineBuilder"/>.
            </summary>
        </member>
        <member name="M:Polly.Simmy.ChaosOutcomePipelineBuilderExtensions.AddChaosOutcome``1(Polly.ResiliencePipelineBuilder{``0},System.Double,System.Func{``0})">
            <summary>
            Adds an outcome chaos strategy to the builder.
            </summary>
            <typeparam name="TResult">The type of result the strategy handles.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="injectionRate">The injection rate for a given execution, which the value should be between [0, 1] (inclusive).</param>
            <param name="resultGenerator">The outcome generator delegate.</param>
            <returns>The same builder instance.</returns>
        </member>
        <member name="M:Polly.Simmy.ChaosOutcomePipelineBuilderExtensions.AddChaosOutcome``1(Polly.ResiliencePipelineBuilder{``0},Polly.Simmy.Outcomes.ChaosOutcomeStrategyOptions{``0})">
            <summary>
            Adds an outcome chaos strategy to the builder.
            </summary>
            <typeparam name="TResult">The type of result the strategy handles.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="options">The strategy options.</param>
            <returns>The same builder instance.</returns>
        </member>
        <member name="T:Polly.StrategyBuilderContext">
            <summary>
            The context used for building an individual resilience strategy.
            </summary>
        </member>
        <member name="P:Polly.StrategyBuilderContext.Telemetry">
            <summary>
            Gets the resilience telemetry used to report important events.
            </summary>
        </member>
        <member name="P:Polly.StrategyBuilderContext.TimeProvider">
            <summary>
            Gets the <see cref="P:Polly.StrategyBuilderContext.TimeProvider"/> used by this strategy.
            </summary>
        </member>
        <member name="T:Polly.Telemetry.ExecutionAttemptArguments">
            <summary>
            Arguments that encapsulate the execution attempt for retries or hedging.
            </summary>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.Telemetry.ExecutionAttemptArguments.#ctor(System.Int32,System.TimeSpan,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Telemetry.ExecutionAttemptArguments"/> struct.
            </summary>
            <param name="attemptNumber">The execution attempt number.</param>
            <param name="duration">The execution duration.</param>
            <param name="handled">Determines whether the attempt was handled by the strategy.</param>
        </member>
        <member name="P:Polly.Telemetry.ExecutionAttemptArguments.AttemptNumber">
            <summary>
            Gets the attempt number.
            </summary>
        </member>
        <member name="P:Polly.Telemetry.ExecutionAttemptArguments.Duration">
            <summary>
            Gets the execution duration of the attempt.
            </summary>
        </member>
        <member name="P:Polly.Telemetry.ExecutionAttemptArguments.Handled">
            <summary>
            Gets a value indicating whether the outcome was handled by retry or hedging strategy.
            </summary>
        </member>
        <member name="T:Polly.Telemetry.PipelineExecutedArguments">
            <summary>
            Arguments that indicate the pipeline execution started.
            </summary>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.Telemetry.PipelineExecutedArguments.#ctor(System.TimeSpan)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Telemetry.PipelineExecutedArguments"/> struct.
            </summary>
            <param name="duration">The pipeline execution duration.</param>
        </member>
        <member name="P:Polly.Telemetry.PipelineExecutedArguments.Duration">
            <summary>
            Gets the pipeline execution duration.
            </summary>
        </member>
        <member name="T:Polly.Telemetry.PipelineExecutingArguments">
            <summary>
            Arguments that indicate the pipeline execution started.
            </summary>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="T:Polly.Telemetry.ResilienceEvent">
            <summary>
            Represents a resilience event that has been reported.
            </summary>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.Telemetry.ResilienceEvent.#ctor(Polly.Telemetry.ResilienceEventSeverity,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Telemetry.ResilienceEvent"/> struct.
            </summary>
            <param name="severity">The severity of the event.</param>
            <param name="eventName">The event name.</param>
        </member>
        <member name="P:Polly.Telemetry.ResilienceEvent.Severity">
            <summary>
            Gets the severity of the event.
            </summary>
        </member>
        <member name="P:Polly.Telemetry.ResilienceEvent.EventName">
            <summary>
            Gets the event name.
            </summary>
        </member>
        <member name="M:Polly.Telemetry.ResilienceEvent.ToString">
            <summary>
            Returns an <see cref="P:Polly.Telemetry.ResilienceEvent.EventName"/>.
            </summary>
            <returns>An event name.</returns>
        </member>
        <member name="T:Polly.Telemetry.ResilienceEventSeverity">
            <summary>
            The severity of reported resilience event.
            </summary>
        </member>
        <member name="F:Polly.Telemetry.ResilienceEventSeverity.None">
            <summary>
            The resilience event is not recorded.
            </summary>
        </member>
        <member name="F:Polly.Telemetry.ResilienceEventSeverity.Debug">
            <summary>
            The resilience event is used for debugging purposes only.
            </summary>
        </member>
        <member name="F:Polly.Telemetry.ResilienceEventSeverity.Information">
            <summary>
            The resilience event is informational.
            </summary>
        </member>
        <member name="F:Polly.Telemetry.ResilienceEventSeverity.Warning">
            <summary>
            The resilience event should be treated as a warning.
            </summary>
        </member>
        <member name="F:Polly.Telemetry.ResilienceEventSeverity.Error">
            <summary>
            The resilience event should be treated as an error.
            </summary>
        </member>
        <member name="F:Polly.Telemetry.ResilienceEventSeverity.Critical">
            <summary>
            The resilience event should be treated as a critical error.
            </summary>
        </member>
        <member name="T:Polly.Telemetry.ResilienceStrategyTelemetry">
            <summary>
            Resilience telemetry is used by individual resilience strategies to report some important events.
            </summary>
            <remarks>
            For example, the timeout strategy reports "OnTimeout" event when the timeout is reached or "OnRetry" for retry strategy.
            </remarks>
        </member>
        <member name="M:Polly.Telemetry.ResilienceStrategyTelemetry.SetTelemetrySource(Polly.ExecutionRejectedException)">
            <summary>
             Sets the source of the telemetry on the provided exception.
            </summary>
            <param name="exception">The to-be-set exception.</param>
        </member>
        <member name="M:Polly.Telemetry.ResilienceStrategyTelemetry.Report``1(Polly.Telemetry.ResilienceEvent,Polly.ResilienceContext,``0)">
            <summary>
            Reports an event that occurred in a resilience strategy.
            </summary>
            <typeparam name="TArgs">The arguments associated with this event.</typeparam>
            <param name="resilienceEvent">The reported resilience event.</param>
            <param name="context">The resilience context associated with this event.</param>
            <param name="args">The event arguments.</param>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="context"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:Polly.Telemetry.ResilienceStrategyTelemetry.Report``2(Polly.Telemetry.ResilienceEvent,Polly.ResilienceContext,Polly.Outcome{``1},``0)">
            <summary>
            Reports an event that occurred in a resilience strategy.
            </summary>
            <typeparam name="TArgs">The arguments associated with this event.</typeparam>
            <typeparam name="TResult">The type of the result.</typeparam>
            <param name="resilienceEvent">The reported resilience event.</param>
            <param name="context">The resilience context associated with this event.</param>
            <param name="outcome">The outcome associated with the event.</param>
            <param name="args">The event arguments.</param>
        </member>
        <member name="T:Polly.Telemetry.ResilienceTelemetrySource">
            <summary>
            The source of resilience telemetry events.
            </summary>
            <remarks>
            This class is used by the telemetry infrastructure and should not be used directly by user code.
            </remarks>
        </member>
        <member name="M:Polly.Telemetry.ResilienceTelemetrySource.#ctor(System.String,System.String,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Telemetry.ResilienceTelemetrySource"/> class.
            </summary>
            <param name="pipelineName">The pipeline name.</param>
            <param name="pipelineInstanceName">The pipeline instance name.</param>
            <param name="strategyName">The strategy name.</param>
        </member>
        <member name="P:Polly.Telemetry.ResilienceTelemetrySource.PipelineName">
            <summary>
            Gets the pipeline name.
            </summary>
        </member>
        <member name="P:Polly.Telemetry.ResilienceTelemetrySource.PipelineInstanceName">
            <summary>
            Gets the pipeline instance name.
            </summary>
        </member>
        <member name="P:Polly.Telemetry.ResilienceTelemetrySource.StrategyName">
            <summary>
            Gets the strategy name.
            </summary>
        </member>
        <member name="T:Polly.Telemetry.TelemetryEventArguments`2">
            <summary>
            Represents the information about the resilience event.
            </summary>
            <typeparam name="TResult">The type of result.</typeparam>
            <typeparam name="TArgs">The arguments associated with the resilience event.</typeparam>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.Telemetry.TelemetryEventArguments`2.#ctor(Polly.Telemetry.ResilienceTelemetrySource,Polly.Telemetry.ResilienceEvent,Polly.ResilienceContext,`1,System.Nullable{Polly.Outcome{`0}})">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Telemetry.TelemetryEventArguments`2"/> struct.
            </summary>
            <param name="source">The source that produced the resilience event.</param>
            <param name="resilienceEvent">The resilience event.</param>
            <param name="context">The context associated with the resilience event.</param>
            <param name="args">The arguments associated with the resilience event.</param>
            <param name="outcome">The outcome associated with the resilience event, if any.</param>
        </member>
        <member name="P:Polly.Telemetry.TelemetryEventArguments`2.Source">
            <summary>
            Gets the source that produced the resilience event.
            </summary>
        </member>
        <member name="P:Polly.Telemetry.TelemetryEventArguments`2.Event">
            <summary>
            Gets the resilience event.
            </summary>
        </member>
        <member name="P:Polly.Telemetry.TelemetryEventArguments`2.Context">
            <summary>
            Gets the context associated with the resilience event.
            </summary>
        </member>
        <member name="P:Polly.Telemetry.TelemetryEventArguments`2.Arguments">
            <summary>
            Gets the arguments associated with the resilience event.
            </summary>
        </member>
        <member name="P:Polly.Telemetry.TelemetryEventArguments`2.Outcome">
            <summary>
            Gets the outcome associated with the resilience event, if any.
            </summary>
        </member>
        <member name="T:Polly.Telemetry.TelemetryListener">
            <summary>
            Listener of resilience telemetry events.
            </summary>
        </member>
        <member name="M:Polly.Telemetry.TelemetryListener.Write``2(Polly.Telemetry.TelemetryEventArguments{``0,``1}@)">
            <summary>
            Writes a resilience event to the listener.
            </summary>
            <typeparam name="TResult">The result type.</typeparam>
            <typeparam name="TArgs">The type of arguments associated with the event.</typeparam>
            <param name="args">The arguments associated with the event.</param>
        </member>
        <member name="T:Polly.Timeout.OnTimeoutArguments">
            <summary>
            Arguments used by the timeout strategy to notify that a timeout occurred.
            </summary>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.Timeout.OnTimeoutArguments.#ctor(Polly.ResilienceContext,System.TimeSpan)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Timeout.OnTimeoutArguments"/> struct.
            </summary>
            <param name="context">The context associated with the execution of a user-provided callback.</param>
            <param name="timeout">The timeout value assigned.</param>
        </member>
        <member name="P:Polly.Timeout.OnTimeoutArguments.Context">
            <summary>
            Gets the context associated with the execution of a user-provided callback.
            </summary>
        </member>
        <member name="P:Polly.Timeout.OnTimeoutArguments.Timeout">
            <summary>
            Gets the timeout value assigned.
            </summary>
        </member>
        <member name="T:Polly.Timeout.TimeoutGeneratorArguments">
            <summary>
            Arguments used by the timeout strategy to retrieve a timeout for current execution.
            </summary>
            <remarks>
            Always use the constructor when creating this struct, otherwise we do not guarantee binary compatibility.
            </remarks>
        </member>
        <member name="M:Polly.Timeout.TimeoutGeneratorArguments.#ctor(Polly.ResilienceContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Timeout.TimeoutGeneratorArguments"/> struct.
            </summary>
            <param name="context">The context associated with the execution of a user-provided callback.</param>
        </member>
        <member name="P:Polly.Timeout.TimeoutGeneratorArguments.Context">
            <summary>
            Gets the context associated with the execution of a user-provided callback.
            </summary>
        </member>
        <member name="T:Polly.Timeout.TimeoutRejectedException">
            <summary>
            Exception thrown when a delegate executed through a timeout resilience strategy does not complete, before the configured timeout.
            </summary>
        </member>
        <member name="M:Polly.Timeout.TimeoutRejectedException.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Timeout.TimeoutRejectedException" /> class.
            </summary>
        </member>
        <member name="M:Polly.Timeout.TimeoutRejectedException.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Timeout.TimeoutRejectedException"/> class.
            </summary>
            <param name="message">The message.</param>
        </member>
        <member name="M:Polly.Timeout.TimeoutRejectedException.#ctor(System.String,System.Exception)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Timeout.TimeoutRejectedException"/> class.
            </summary>
            <param name="message">The message.</param>
            <param name="innerException">The inner exception.</param>
        </member>
        <member name="M:Polly.Timeout.TimeoutRejectedException.#ctor(System.TimeSpan)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Timeout.TimeoutRejectedException" /> class.
            </summary>
            <param name="timeout">The timeout value that caused this exception.</param>
        </member>
        <member name="M:Polly.Timeout.TimeoutRejectedException.#ctor(System.String,System.TimeSpan)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Timeout.TimeoutRejectedException"/> class.
            </summary>
            <param name="timeout">The timeout value that caused this exception.</param>
            <param name="message">The message.</param>
        </member>
        <member name="M:Polly.Timeout.TimeoutRejectedException.#ctor(System.String,System.TimeSpan,System.Exception)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Timeout.TimeoutRejectedException"/> class.
            </summary>
            <param name="message">The message.</param>
            <param name="timeout">The timeout value that caused this exception.</param>
            <param name="innerException">The inner exception.</param>
        </member>
        <member name="P:Polly.Timeout.TimeoutRejectedException.Timeout">
            <summary>
            Gets the timeout value that caused this exception.
            </summary>
        </member>
        <member name="M:Polly.Timeout.TimeoutRejectedException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Timeout.TimeoutRejectedException"/> class.
            </summary>
            <param name="info">The information.</param>
            <param name="context">The context.</param>
        </member>
        <member name="M:Polly.Timeout.TimeoutRejectedException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <inheritdoc/>
        </member>
        <member name="T:Polly.Timeout.TimeoutStrategyOptions">
            <summary>
            Represents the options for the timeout strategy.
            </summary>
        </member>
        <member name="M:Polly.Timeout.TimeoutStrategyOptions.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Polly.Timeout.TimeoutStrategyOptions"/> class.
            </summary>
        </member>
        <member name="P:Polly.Timeout.TimeoutStrategyOptions.Timeout">
            <summary>
            Gets or sets the default timeout.
            </summary>
            <value>
            This value must be greater than 10 milliseconds and less than 24 hours. The default value is 30 seconds.
            </value>
        </member>
        <member name="P:Polly.Timeout.TimeoutStrategyOptions.TimeoutGenerator">
            <summary>
            Gets or sets a timeout generator that generates the timeout for a given execution.
            </summary>
            <remarks>
            When generator is <see langword="null"/> then the <see cref="P:Polly.Timeout.TimeoutStrategyOptions.Timeout"/> property's value is used instead.
            When generator returns a <see cref="T:System.TimeSpan"/> value that is less than or equal to <see cref="F:System.TimeSpan.Zero"/>
            then the strategy will do nothing.
            <para>
            Return <see cref="F:System.Threading.Timeout.InfiniteTimeSpan"/> to disable the timeout for the given execution.
            </para>
            </remarks>
            <value>
            The default value is <see langword="null"/>.
            </value>
        </member>
        <member name="P:Polly.Timeout.TimeoutStrategyOptions.OnTimeout">
            <summary>
            Gets or sets the timeout delegate that raised when timeout occurs.
            </summary>
            <value>
            The default value is <see langword="null"/>.
            </value>
        </member>
        <member name="T:Polly.TimeoutResiliencePipelineBuilderExtensions">
            <summary>
            Extensions for adding timeout to <see cref="T:Polly.ResiliencePipelineBuilder"/>.
            </summary>
        </member>
        <member name="M:Polly.TimeoutResiliencePipelineBuilderExtensions.AddTimeout``1(``0,System.TimeSpan)">
            <summary>
            Adds a timeout to the builder.
            </summary>
            <typeparam name="TBuilder">The builder type.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="timeout">The timeout value. This value should be greater than <see cref="F:System.TimeSpan.Zero"/>.</param>
            <returns>The same builder instance.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when the options produced from the arguments are invalid.</exception>
        </member>
        <member name="M:Polly.TimeoutResiliencePipelineBuilderExtensions.AddTimeout``1(``0,Polly.Timeout.TimeoutStrategyOptions)">
            <summary>
            Adds a timeout to the builder.
            </summary>
            <typeparam name="TBuilder">The builder type.</typeparam>
            <param name="builder">The builder instance.</param>
            <param name="options">The timeout options.</param>
            <returns>The same builder instance.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="builder"/> or <paramref name="options"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ComponentModel.DataAnnotations.ValidationException">Thrown when <paramref name="options"/> are invalid.</exception>
        </member>
        <member name="T:Polly.Utils.IOutcomeArguments`1">
            <summary>
            Marker interface for outcome arguments.
            </summary>
            <typeparam name="TResult">The type of result.</typeparam>
        </member>
        <member name="P:Polly.Utils.IOutcomeArguments`1.Context">
            <summary>
            Gets the resilience context.
            </summary>
        </member>
        <member name="P:Polly.Utils.IOutcomeArguments`1.Outcome">
            <summary>
            Gets the outcome.
            </summary>
        </member>
        <member name="T:Polly.Utils.Pipeline.CompositeComponent">
            <summary>
            A combination of multiple components.
            </summary>
        </member>
        <member name="T:Polly.Utils.Pipeline.DelegatingComponent">
            <summary>
            A component that delegates the execution to the next component in the chain.
            </summary>
        </member>
        <member name="T:Polly.Utils.Pipeline.PipelineComponent">
            <summary>
            Represents a single component of a resilience pipeline.
            </summary>
            <remarks>
            The component of the pipeline can be either a strategy, a generic strategy or a whole pipeline.
            </remarks>
        </member>
        <member name="T:Polly.Utils.TimeProviderExtensions">
            <summary>
            Extensions for <see cref="T:System.TimeProvider"/> used by resilience strategies.
            </summary>
        </member>
        <member name="M:Polly.Utils.TimeProviderExtensions.DelayAsync(System.TimeProvider,System.TimeSpan,Polly.ResilienceContext)">
            <summary>
            Delays the execution for the specified time span.
            </summary>
            <param name="timeProvider">The instance of <see cref="T:System.TimeProvider"/>.</param>
            <param name="delay">For how long we should delay.</param>
            <param name="context">The resilience context.</param>
            <returns>The task.</returns>
            <remarks>
            The delay is performed synchronously if the <see cref="P:Polly.ResilienceContext.IsSynchronous"/> property is true, otherwise the delay is performed asynchronously.
            This method will be public later.
            </remarks>
        </member>
        <member name="T:Polly.VoidResult">
            <summary>
            Class that represents a void result.
            </summary>
        </member>
        <member name="T:System.Diagnostics.DebuggerDisableUserUnhandledExceptionsAttribute">
            <summary>
            If a .NET Debugger is attached which supports the Debugger.BreakForUserUnhandledException(Exception) API,
            this attribute will prevent the debugger from breaking on user-unhandled exceptions when the
            exception is caught by a method with this attribute, unless BreakForUserUnhandledException is called.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembersAttribute">
             <summary>
             Indicates that certain members on a specified <see cref="T:System.Type"/> are accessed dynamically,
             for example through <see cref="N:System.Reflection"/>.
             </summary>
             <remarks>
             This allows tools to understand which members are being accessed during the execution
             of a program.
            
             This attribute is valid on members whose type is <see cref="T:System.Type"/> or <see cref="T:System.String"/>.
            
             When this attribute is applied to a location of type <see cref="T:System.String"/>, the assumption is
             that the string represents a fully qualified type name.
            
             When this attribute is applied to a class, interface, or struct, the members specified
             can be accessed dynamically on <see cref="T:System.Type"/> instances returned from calling
             <see cref="M:System.Object.GetType"/> on instances of that class, interface, or struct.
            
             If the attribute is applied to a method it's treated as a special case and it implies
             the attribute should be applied to the "this" parameter of the method. As such the attribute
             should only be used on instance methods of types assignable to System.Type (or string, but no methods
             will use it there).
             </remarks>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembersAttribute.#ctor(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembersAttribute"/> class
            with the specified member types.
            </summary>
            <param name="memberTypes">The types of members dynamically accessed.</param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembersAttribute.MemberTypes">
            <summary>
            Gets the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes"/> which specifies the type
            of members dynamically accessed.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes">
             <summary>
             Specifies the types of members that are dynamically accessed.
            
             This enumeration has a <see cref="T:System.FlagsAttribute"/> attribute that allows a
             bitwise combination of its member values.
             </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.None">
            <summary>
            Specifies no members.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicParameterlessConstructor">
            <summary>
            Specifies the default, parameterless public constructor.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicConstructors">
            <summary>
            Specifies all public constructors.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicConstructors">
            <summary>
            Specifies all non-public constructors.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicMethods">
            <summary>
            Specifies all public methods.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicMethods">
            <summary>
            Specifies all non-public methods.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicFields">
            <summary>
            Specifies all public fields.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicFields">
            <summary>
            Specifies all non-public fields.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicNestedTypes">
            <summary>
            Specifies all public nested types.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicNestedTypes">
            <summary>
            Specifies all non-public nested types.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicProperties">
            <summary>
            Specifies all public properties.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicProperties">
            <summary>
            Specifies all non-public properties.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicEvents">
            <summary>
            Specifies all public events.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicEvents">
            <summary>
            Specifies all non-public events.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.Interfaces">
            <summary>
            Specifies all interfaces implemented by the type.
            </summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.All">
            <summary>
            Specifies all members.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute">
            <summary>
            States a dependency that one member has on another.
            </summary>
            <remarks>
            This can be used to inform tooling of a dependency that is otherwise not evident purely from
            metadata and IL, for example a member relied on via reflection.
            </remarks>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute"/> class
            with the specified signature of a member on the same type as the consumer.
            </summary>
            <param name="memberSignature">The signature of the member depended on.</param>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.#ctor(System.String,System.Type)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute"/> class
            with the specified signature of a member on a <see cref="T:System.Type"/>.
            </summary>
            <param name="memberSignature">The signature of the member depended on.</param>
            <param name="type">The <see cref="T:System.Type"/> containing <paramref name="memberSignature"/>.</param>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.#ctor(System.String,System.String,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute"/> class
            with the specified signature of a member on a type in an assembly.
            </summary>
            <param name="memberSignature">The signature of the member depended on.</param>
            <param name="typeName">The full name of the type containing the specified member.</param>
            <param name="assemblyName">The assembly name of the type containing the specified member.</param>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.#ctor(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes,System.Type)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute"/> class
            with the specified types of members on a <see cref="T:System.Type"/>.
            </summary>
            <param name="memberTypes">The types of members depended on.</param>
            <param name="type">The <see cref="T:System.Type"/> containing the specified members.</param>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.#ctor(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes,System.String,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute"/> class
            with the specified types of members on a type in an assembly.
            </summary>
            <param name="memberTypes">The types of members depended on.</param>
            <param name="typeName">The full name of the type containing the specified members.</param>
            <param name="assemblyName">The assembly name of the type containing the specified members.</param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.MemberSignature">
            <summary>
            Gets the signature of the member depended on.
            </summary>
            <remarks>
            Either <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.MemberSignature"/> must be a valid string or <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.MemberTypes"/>
            must not equal <see cref="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.None"/>, but not both.
            </remarks>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.MemberTypes">
            <summary>
            Gets the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes"/> which specifies the type
            of members depended on.
            </summary>
            <remarks>
            Either <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.MemberSignature"/> must be a valid string or <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.MemberTypes"/>
            must not equal <see cref="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.None"/>, but not both.
            </remarks>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.Type">
            <summary>
            Gets the <see cref="T:System.Type"/> containing the specified member.
            </summary>
            <remarks>
            If neither <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.Type"/> nor <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.TypeName"/> are specified,
            the type of the consumer is assumed.
            </remarks>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.TypeName">
            <summary>
            Gets the full name of the type containing the specified member.
            </summary>
            <remarks>
            If neither <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.Type"/> nor <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.TypeName"/> are specified,
            the type of the consumer is assumed.
            </remarks>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.AssemblyName">
            <summary>
            Gets the assembly name of the specified type.
            </summary>
            <remarks>
            <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.AssemblyName"/> is only valid when <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.TypeName"/> is specified.
            </remarks>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.Condition">
            <summary>
            Gets or sets the condition in which the dependency is applicable, e.g. "DEBUG".
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.AllowNullAttribute">
            <summary>Specifies that null is allowed as an input even if the corresponding type disallows it.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.DisallowNullAttribute">
            <summary>Specifies that null is disallowed as an input even if the corresponding type allows it.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.MaybeNullAttribute">
            <summary>Specifies that an output may be null even if the corresponding type disallows it.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.NotNullAttribute">
            <summary>Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute">
            <summary>Specifies that when a method returns <see cref="P:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.ReturnValue"/>, the parameter may be null even if the corresponding type disallows it.</summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.#ctor(System.Boolean)">
            <summary>Initializes the attribute with the specified return value condition.</summary>
            <param name="returnValue">
            The return value condition. If the method returns this value, the associated parameter may be null.
            </param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.ReturnValue">
            <summary>Gets the return value condition.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute">
            <summary>Specifies that when a method returns <see cref="P:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.ReturnValue"/>, the parameter will not be null even if the corresponding type allows it.</summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.#ctor(System.Boolean)">
            <summary>Initializes the attribute with the specified return value condition.</summary>
            <param name="returnValue">
            The return value condition. If the method returns this value, the associated parameter will not be null.
            </param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.ReturnValue">
            <summary>Gets the return value condition.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute">
            <summary>Specifies that the output will be non-null if the named parameter is non-null.</summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute.#ctor(System.String)">
            <summary>Initializes the attribute with the associated parameter name.</summary>
            <param name="parameterName">
            The associated parameter name.  The output will be non-null if the argument to the parameter specified is non-null.
            </param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute.ParameterName">
            <summary>Gets the associated parameter name.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute">
            <summary>Applied to a method that will never return under any circumstance.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute">
            <summary>Specifies that the method will not return if the associated Boolean parameter is passed the specified value.</summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute.#ctor(System.Boolean)">
            <summary>Initializes the attribute with the specified parameter value.</summary>
            <param name="parameterValue">
            The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to
            the associated parameter matches this value.
            </param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute.ParameterValue">
            <summary>Gets the condition parameter value.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute">
            <summary>Specifies that the method or property will ensure that the listed field and property members have not-null values.</summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.#ctor(System.String)">
            <summary>Initializes the attribute with a field or property member.</summary>
            <param name="member">
            The field or property member that is promised to be not-null.
            </param>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.#ctor(System.String[])">
            <summary>Initializes the attribute with the list of field and property members.</summary>
            <param name="members">
            The list of field and property members that are promised to be not-null.
            </param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.Members">
            <summary>Gets field or property member names.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute">
            <summary>Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.</summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.#ctor(System.Boolean,System.String)">
            <summary>Initializes the attribute with the specified return value condition and a field or property member.</summary>
            <param name="returnValue">
            The return value condition. If the method returns this value, the associated parameter will not be null.
            </param>
            <param name="member">
            The field or property member that is promised to be not-null.
            </param>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.#ctor(System.Boolean,System.String[])">
            <summary>Initializes the attribute with the specified return value condition and list of field and property members.</summary>
            <param name="returnValue">
            The return value condition. If the method returns this value, the associated parameter will not be null.
            </param>
            <param name="members">
            The list of field and property members that are promised to be not-null.
            </param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.ReturnValue">
            <summary>Gets the return value condition.</summary>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.Members">
            <summary>Gets field or property member names.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute">
            <summary>
            /// Indicates that the specified method requires dynamic access to code that is not referenced
            statically, for example through <see cref="N:System.Reflection"/>.
            </summary>
            <remarks>
            This allows tools to understand which methods are unsafe to call when removing unreferenced
            code from an application.
            </remarks>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute"/> class
            with the specified message.
            </summary>
            <param name="message">
            A message that contains information about the usage of unreferenced code.
            </param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute.Message">
            <summary>
            Gets a message that contains information about the usage of unreferenced code.
            </summary>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute.Url">
            <summary>
            Gets or sets an optional URL that contains more information about the method,
            why it requires unreferenced code, and what options a consumer has to deal with it.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute">
            <summary>
            /// Suppresses reporting of a specific rule violation, allowing multiple suppressions on a
            single code artifact.
            </summary>
            <remarks>
            <see cref="T:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute"/> is different than
            <see cref="T:System.Diagnostics.CodeAnalysis.SuppressMessageAttribute"/> in that it doesn't have a
            <see cref="T:System.Diagnostics.ConditionalAttribute"/>. So it is always preserved in the compiled assembly.
            </remarks>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.#ctor(System.String,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute"/>
            class, specifying the category of the tool and the identifier for an analysis rule.
            </summary>
            <param name="category">The category for the attribute.</param>
            <param name="checkId">The identifier of the analysis rule the attribute applies to.</param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.Category">
            <summary>
            Gets the category identifying the classification of the attribute.
            </summary>
            <remarks>
            The <see cref="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.Category"/> property describes the tool or tool analysis category
            for which a message suppression attribute applies.
            </remarks>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.CheckId">
            <summary>
            Gets the identifier of the analysis tool rule to be suppressed.
            </summary>
            <remarks>
            Concatenated together, the <see cref="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.Category"/> and <see cref="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.CheckId"/>
            properties form a unique check identifier.
            </remarks>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.Scope">
            <summary>
            Gets or sets the scope of the code that is relevant for the attribute.
            </summary>
            <remarks>
            The Scope property is an optional argument that specifies the metadata scope for which
            the attribute is relevant.
            </remarks>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.Target">
            <summary>
            Gets or sets a fully qualified path that represents the target of the attribute.
            </summary>
            <remarks>
            The <see cref="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.Target"/> property is an optional argument identifying the analysis target
            of the attribute. An example value is "System.IO.Stream.ctor():System.Void".
            Because it is fully qualified, it can be long, particularly for targets such as parameters.
            The analysis tool user interface should be capable of automatically formatting the parameter.
            </remarks>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.MessageId">
            <summary>
            Gets or sets an optional argument expanding on exclusion criteria.
            </summary>
            <remarks>
            The <see cref="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.MessageId"/> property is an optional argument that specifies additional
            exclusion where the literal metadata target is not sufficiently precise. For example,
            the <see cref="T:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute"/> cannot be applied within a method,
            and it may be desirable to suppress a violation against a statement in the method that will
            give a rule violation, but not against all statements in the method.
            </remarks>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.Justification">
            <summary>
            Gets or sets the justification for suppressing the code analysis message.
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute">
            <summary>
            Tags parameter that should be filled with specific caller name.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute"/> class.
            </summary>
            <param name="parameterName">Function parameter to take the name from.</param>
        </member>
        <member name="P:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute.ParameterName">
            <summary>
            Gets name of the function parameter that name should be taken from.
            </summary>
        </member>
    </members>
</doc>
