<PackageReference Include="System.Diagnostics.DiagnosticSource" Version="6.0.2" />

ObjectSequence2

using System.Runtime.InteropServices; namespace System.Diagnostics.Metrics { internal struct ObjectSequence2 : IEquatable<ObjectSequence2>, IObjectSequence { public object Value1; public object Value2; public bool Equals(ObjectSequence2 other) { if ((Value1 == null) ? (other.Value1 == null) : Value1.Equals(other.Value1)) { if (Value2 != null) return Value2.Equals(other.Value2); return other.Value2 == null; } return false; } public override bool Equals(object obj) { if (obj is ObjectSequence2) { ObjectSequence2 other = (ObjectSequence2)obj; return Equals(other); } return false; } public Span<object> AsSpan() { return MemoryMarshal.CreateSpan(ref Value1, 2); } public override int GetHashCode() { return HashCode.Combine(Value1, Value2); } } }