<PackageReference Include="Polly.Core" Version="8.0.0-alpha.7" />

HealthInfo

using System; using System.Collections.Generic; using System.Runtime.CompilerServices; using System.Text; namespace Polly.CircuitBreaker.Health { internal readonly struct HealthInfo : IEquatable<HealthInfo> { public int Throughput { get; set; } public double FailureRate { get; set; } public HealthInfo(int Throughput, double FailureRate) { Throughput = Throughput; FailureRate = FailureRate; } public static HealthInfo Create(int successes, int failures) { int num = successes + failures; if (num == 0) return new HealthInfo(0, 0); return new HealthInfo(num, (double)failures / (double)num); } [CompilerGenerated] public override string ToString() { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append("HealthInfo"); stringBuilder.Append(" { "); if (PrintMembers(stringBuilder)) stringBuilder.Append(' '); stringBuilder.Append('}'); return stringBuilder.ToString(); } [CompilerGenerated] private bool PrintMembers(StringBuilder builder) { builder.Append("Throughput = "); builder.Append(Throughput.ToString()); builder.Append(", FailureRate = "); builder.Append(FailureRate.ToString()); return true; } public static bool operator !=(HealthInfo left, HealthInfo right) { return !(left == right); } public static bool operator ==(HealthInfo left, HealthInfo right) { return left.Equals(right); } [CompilerGenerated] public override int GetHashCode() { return EqualityComparer<int>.Default.GetHashCode(Throughput) * -1521134295 + EqualityComparer<double>.Default.GetHashCode(FailureRate); } [CompilerGenerated] public override bool Equals(object obj) { if (obj is HealthInfo) return Equals((HealthInfo)obj); return false; } [CompilerGenerated] public bool Equals(HealthInfo other) { if (EqualityComparer<int>.Default.Equals(Throughput, other.Throughput)) return EqualityComparer<double>.Default.Equals(FailureRate, other.FailureRate); return false; } [CompilerGenerated] public void Deconstruct(out int Throughput, out double FailureRate) { Throughput = this.Throughput; FailureRate = this.FailureRate; } } }