From 0dab6fc986cf986dc49740342674ddc563e3886b Mon Sep 17 00:00:00 2001 From: Jason Nelson Date: Tue, 3 Jul 2018 09:46:03 -0700 Subject: [PATCH] Remove IsEmpty properties when we can just compare to default --- src/ImageSharp/ColorSpaces/CieLab.cs | 13 +--------- src/ImageSharp/ColorSpaces/CieLch.cs | 13 +--------- src/ImageSharp/ColorSpaces/CieLchuv.cs | 13 +--------- src/ImageSharp/ColorSpaces/CieLuv.cs | 13 +--------- .../CieXyChromaticityCoordinates.cs | 20 +++----------- src/ImageSharp/ColorSpaces/CieXyy.cs | 20 +++----------- src/ImageSharp/ColorSpaces/CieXyz.cs | 20 +++----------- src/ImageSharp/ColorSpaces/Cmyk.cs | 20 +++----------- src/ImageSharp/ColorSpaces/Hsl.cs | 20 +++----------- src/ImageSharp/ColorSpaces/Hsv.cs | 23 +++------------- src/ImageSharp/ColorSpaces/HunterLab.cs | 13 +--------- src/ImageSharp/ColorSpaces/LinearRgb.cs | 20 +++----------- src/ImageSharp/ColorSpaces/Lms.cs | 20 +++----------- src/ImageSharp/ColorSpaces/Rgb.cs | 26 +++---------------- src/ImageSharp/ColorSpaces/YCbCr.cs | 24 +++-------------- 15 files changed, 36 insertions(+), 242 deletions(-) diff --git a/src/ImageSharp/ColorSpaces/CieLab.cs b/src/ImageSharp/ColorSpaces/CieLab.cs index 9eb072a535..c9581379bf 100644 --- a/src/ImageSharp/ColorSpaces/CieLab.cs +++ b/src/ImageSharp/ColorSpaces/CieLab.cs @@ -20,11 +20,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public static readonly CieXyz DefaultWhitePoint = Illuminants.D50; - /// - /// Represents a that has L, A, B values set to zero. - /// - public static readonly CieLab Empty = default; - /// /// The backing vector for SIMD support. /// @@ -115,12 +110,6 @@ namespace SixLabors.ImageSharp.ColorSpaces get => this.backingVector.Z; } - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); - /// public Vector3 Vector { @@ -171,7 +160,7 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - return this.IsEmpty + return this.Equals(default) ? "CieLab [Empty]" : $"CieLab [ L={this.L:#0.##}, A={this.A:#0.##}, B={this.B:#0.##}]"; } diff --git a/src/ImageSharp/ColorSpaces/CieLch.cs b/src/ImageSharp/ColorSpaces/CieLch.cs index 059e9684f5..4fa853206a 100644 --- a/src/ImageSharp/ColorSpaces/CieLch.cs +++ b/src/ImageSharp/ColorSpaces/CieLch.cs @@ -20,11 +20,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public static readonly CieXyz DefaultWhitePoint = Illuminants.D50; - /// - /// Represents a that has L, C, H values set to zero. - /// - public static readonly CieLch Empty = default; - /// /// The backing vector for SIMD support. /// @@ -115,12 +110,6 @@ namespace SixLabors.ImageSharp.ColorSpaces get => this.backingVector.Z; } - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); - /// public Vector3 Vector { @@ -173,7 +162,7 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - return this.IsEmpty + return this.Equals(default) ? "CieLch [Empty]" : $"CieLch [ L={this.L:#0.##}, C={this.C:#0.##}, H={this.H:#0.##}]"; } diff --git a/src/ImageSharp/ColorSpaces/CieLchuv.cs b/src/ImageSharp/ColorSpaces/CieLchuv.cs index 503ce65aa3..13cedc96d0 100644 --- a/src/ImageSharp/ColorSpaces/CieLchuv.cs +++ b/src/ImageSharp/ColorSpaces/CieLchuv.cs @@ -20,11 +20,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public static readonly CieXyz DefaultWhitePoint = Illuminants.D65; - /// - /// Represents a that has L, C, H values set to zero. - /// - public static readonly CieLchuv Empty = default; - /// /// The backing vector for SIMD support. /// @@ -115,12 +110,6 @@ namespace SixLabors.ImageSharp.ColorSpaces get => this.backingVector.Z; } - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); - /// public Vector3 Vector { @@ -171,7 +160,7 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - return this.IsEmpty + return this.Equals(default) ? "CieLchuv [Empty]" : $"CieLchuv [ L={this.L:#0.##}, C={this.C:#0.##}, H={this.H:#0.##}"; } diff --git a/src/ImageSharp/ColorSpaces/CieLuv.cs b/src/ImageSharp/ColorSpaces/CieLuv.cs index 8b385418c5..8050529239 100644 --- a/src/ImageSharp/ColorSpaces/CieLuv.cs +++ b/src/ImageSharp/ColorSpaces/CieLuv.cs @@ -22,11 +22,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public static readonly CieXyz DefaultWhitePoint = Illuminants.D65; - /// - /// Represents a that has L, U, and V values set to zero. - /// - public static readonly CieLuv Empty = default; - /// /// The backing vector for SIMD support. /// @@ -117,12 +112,6 @@ namespace SixLabors.ImageSharp.ColorSpaces get => this.backingVector.Z; } - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); - /// public Vector3 Vector { @@ -173,7 +162,7 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - return this.IsEmpty + return this.Equals(default) ? "CieLuv [ Empty ]" : $"CieLuv [ L={this.L:#0.##}, U={this.U:#0.##}, V={this.V:#0.##} ]"; } diff --git a/src/ImageSharp/ColorSpaces/CieXyChromaticityCoordinates.cs b/src/ImageSharp/ColorSpaces/CieXyChromaticityCoordinates.cs index 10a2514206..013bed890a 100644 --- a/src/ImageSharp/ColorSpaces/CieXyChromaticityCoordinates.cs +++ b/src/ImageSharp/ColorSpaces/CieXyChromaticityCoordinates.cs @@ -14,11 +14,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// internal readonly struct CieXyChromaticityCoordinates : IEquatable, IAlmostEquatable { - /// - /// Represents a that has X, Y values set to zero. - /// - public static readonly CieXyChromaticityCoordinates Empty = default; - /// /// The backing vector for SIMD support. /// @@ -69,12 +64,6 @@ namespace SixLabors.ImageSharp.ColorSpaces get => this.backingVector.Y; } - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); - /// /// Compares two objects for equality. /// @@ -119,12 +108,9 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - if (this.IsEmpty) - { - return "CieXyChromaticityCoordinates [Empty]"; - } - - return $"CieXyChromaticityCoordinates [ X={this.X:#0.##}, Y={this.Y:#0.##}]"; + return this.Equals(default) + ? "CieXyChromaticityCoordinates [Empty]" + : $"CieXyChromaticityCoordinates [ X={this.X:#0.##}, Y={this.Y:#0.##}]"; } /// diff --git a/src/ImageSharp/ColorSpaces/CieXyy.cs b/src/ImageSharp/ColorSpaces/CieXyy.cs index 690b3fcfcc..d5ad2aa1f0 100644 --- a/src/ImageSharp/ColorSpaces/CieXyy.cs +++ b/src/ImageSharp/ColorSpaces/CieXyy.cs @@ -14,11 +14,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// internal readonly struct CieXyy : IColorVector, IEquatable, IAlmostEquatable { - /// - /// Represents a that has X, Y, and Y values set to zero. - /// - public static readonly CieXyy Empty = default; - /// /// The backing vector for SIMD support. /// @@ -78,12 +73,6 @@ namespace SixLabors.ImageSharp.ColorSpaces get => this.backingVector.Z; } - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); - /// public Vector3 Vector => this.backingVector; @@ -130,12 +119,9 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - if (this.IsEmpty) - { - return "CieXyy [ Empty ]"; - } - - return $"CieXyy [ X={this.X:#0.##}, Y={this.Y:#0.##}, Yl={this.Yl:#0.##} ]"; + return this.Equals(default) + ? "CieXyy [ Empty ]" + : $"CieXyy [ X={this.X:#0.##}, Y={this.Y:#0.##}, Yl={this.Yl:#0.##} ]"; } /// diff --git a/src/ImageSharp/ColorSpaces/CieXyz.cs b/src/ImageSharp/ColorSpaces/CieXyz.cs index fec4c74e26..b1d2392d6d 100644 --- a/src/ImageSharp/ColorSpaces/CieXyz.cs +++ b/src/ImageSharp/ColorSpaces/CieXyz.cs @@ -14,11 +14,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// internal readonly struct CieXyz : IColorVector, IEquatable, IAlmostEquatable { - /// - /// Represents a that has X, Y, and Z values set to zero. - /// - public static readonly CieXyz Empty = default; - /// /// The backing vector for SIMD support. /// @@ -77,12 +72,6 @@ namespace SixLabors.ImageSharp.ColorSpaces get => this.backingVector.Z; } - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); - /// public Vector3 Vector { @@ -133,12 +122,9 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - if (this.IsEmpty) - { - return "CieXyz [ Empty ]"; - } - - return $"CieXyz [ X={this.X:#0.##}, Y={this.Y:#0.##}, Z={this.Z:#0.##} ]"; + return this.Equals(default) + ? "CieXyz [ Empty ]" + : $"CieXyz [ X={this.X:#0.##}, Y={this.Y:#0.##}, Z={this.Z:#0.##} ]"; } /// diff --git a/src/ImageSharp/ColorSpaces/Cmyk.cs b/src/ImageSharp/ColorSpaces/Cmyk.cs index ffbe2e2654..2571615b5c 100644 --- a/src/ImageSharp/ColorSpaces/Cmyk.cs +++ b/src/ImageSharp/ColorSpaces/Cmyk.cs @@ -13,11 +13,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// internal readonly struct Cmyk : IEquatable, IAlmostEquatable { - /// - /// Represents a that has C, M, Y, and K values set to zero. - /// - public static readonly Cmyk Empty = default; - /// /// The backing vector for SIMD support. /// @@ -87,12 +82,6 @@ namespace SixLabors.ImageSharp.ColorSpaces get => this.backingVector.W; } - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); - /// /// Compares two objects for equality. /// @@ -138,12 +127,9 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - if (this.IsEmpty) - { - return "Cmyk [Empty]"; - } - - return $"Cmyk [ C={this.C:#0.##}, M={this.M:#0.##}, Y={this.Y:#0.##}, K={this.K:#0.##}]"; + return this.Equals(default) + ? "Cmyk [Empty]" + : $"Cmyk [ C={this.C:#0.##}, M={this.M:#0.##}, Y={this.Y:#0.##}, K={this.K:#0.##}]"; } /// diff --git a/src/ImageSharp/ColorSpaces/Hsl.cs b/src/ImageSharp/ColorSpaces/Hsl.cs index 31b93d3848..c49440a8d2 100644 --- a/src/ImageSharp/ColorSpaces/Hsl.cs +++ b/src/ImageSharp/ColorSpaces/Hsl.cs @@ -13,11 +13,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// internal readonly struct Hsl : IColorVector, IEquatable, IAlmostEquatable { - /// - /// Represents a that has H, S, and L values set to zero. - /// - public static readonly Hsl Empty = default; - /// /// Max range used for clamping /// @@ -80,12 +75,6 @@ namespace SixLabors.ImageSharp.ColorSpaces get => this.backingVector.Z; } - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); - /// public Vector3 Vector => this.backingVector; @@ -132,12 +121,9 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - if (this.IsEmpty) - { - return "Hsl [ Empty ]"; - } - - return $"Hsl [ H={this.H:#0.##}, S={this.S:#0.##}, L={this.L:#0.##} ]"; + return this.Equals(default) + ? "Hsl [ Empty ]" + : $"Hsl [ H={this.H:#0.##}, S={this.S:#0.##}, L={this.L:#0.##} ]"; } /// diff --git a/src/ImageSharp/ColorSpaces/Hsv.cs b/src/ImageSharp/ColorSpaces/Hsv.cs index 1f6c8d5eba..4e73923ccb 100644 --- a/src/ImageSharp/ColorSpaces/Hsv.cs +++ b/src/ImageSharp/ColorSpaces/Hsv.cs @@ -15,11 +15,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// internal readonly struct Hsv : IColorVector, IEquatable, IAlmostEquatable { - /// - /// Represents a that has H, S, and V values set to zero. - /// - public static readonly Hsv Empty = default; - /// /// Max range used for clamping /// @@ -82,12 +77,6 @@ namespace SixLabors.ImageSharp.ColorSpaces get => this.backingVector.Z; } - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); - /// public Vector3 Vector { @@ -157,7 +146,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// /// True if the current left is equal to the parameter; otherwise, false. /// - [MethodImpl(MethodImplOptions.AggressiveInlining)] public static bool operator ==(Hsv left, Hsv right) { return left.Equals(right); @@ -175,7 +163,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// /// True if the current left is unequal to the parameter; otherwise, false. /// - [MethodImpl(MethodImplOptions.AggressiveInlining)] public static bool operator !=(Hsv left, Hsv right) { return !left.Equals(right); @@ -190,16 +177,12 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - if (this.IsEmpty) - { - return "Hsv [ Empty ]"; - } - - return $"Hsv [ H={this.H:#0.##}, S={this.S:#0.##}, V={this.V:#0.##} ]"; + return this.Equals(default) + ? "Hsv [ Empty ]" + : $"Hsv [ H={this.H:#0.##}, S={this.S:#0.##}, V={this.V:#0.##} ]"; } /// - [MethodImpl(MethodImplOptions.AggressiveInlining)] public override bool Equals(object obj) { return obj is Hsv other && this.Equals(other); diff --git a/src/ImageSharp/ColorSpaces/HunterLab.cs b/src/ImageSharp/ColorSpaces/HunterLab.cs index 6718019499..576a48e8bc 100644 --- a/src/ImageSharp/ColorSpaces/HunterLab.cs +++ b/src/ImageSharp/ColorSpaces/HunterLab.cs @@ -20,11 +20,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public static readonly CieXyz DefaultWhitePoint = Illuminants.C; - /// - /// Represents a that has L, A, B values set to zero. - /// - public static readonly HunterLab Empty = default; - /// /// The backing vector for SIMD support. /// @@ -115,12 +110,6 @@ namespace SixLabors.ImageSharp.ColorSpaces get => this.backingVector.Z; } - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); - /// public Vector3 Vector => this.backingVector; @@ -167,7 +156,7 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - return this.IsEmpty + return this.Equals(default) ? "HunterLab [Empty]" : $"HunterLab [ L={this.L:#0.##}, A={this.A:#0.##}, B={this.B:#0.##}]"; } diff --git a/src/ImageSharp/ColorSpaces/LinearRgb.cs b/src/ImageSharp/ColorSpaces/LinearRgb.cs index f665272662..6685c506e0 100644 --- a/src/ImageSharp/ColorSpaces/LinearRgb.cs +++ b/src/ImageSharp/ColorSpaces/LinearRgb.cs @@ -13,11 +13,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// internal readonly struct LinearRgb : IColorVector, IEquatable, IAlmostEquatable { - /// - /// Represents a that has R, G, and B values set to zero. - /// - public static readonly LinearRgb Empty = default; - /// /// The default LinearRgb working space /// @@ -112,12 +107,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public IRgbWorkingSpace WorkingSpace { get; } - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); - /// public Vector3 Vector => this.backingVector; @@ -164,12 +153,9 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - if (this.IsEmpty) - { - return "LinearRgb [ Empty ]"; - } - - return $"LinearRgb [ R={this.R:#0.##}, G={this.G:#0.##}, B={this.B:#0.##} ]"; + return this.Equals(default) + ? "LinearRgb [ Empty ]" + : $"LinearRgb [ R={this.R:#0.##}, G={this.G:#0.##}, B={this.B:#0.##} ]"; } /// diff --git a/src/ImageSharp/ColorSpaces/Lms.cs b/src/ImageSharp/ColorSpaces/Lms.cs index 81a068d50a..09b092f814 100644 --- a/src/ImageSharp/ColorSpaces/Lms.cs +++ b/src/ImageSharp/ColorSpaces/Lms.cs @@ -15,11 +15,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// internal readonly struct Lms : IColorVector, IEquatable, IAlmostEquatable { - /// - /// Represents a that has L, M, and S values set to zero. - /// - public static readonly Lms Empty = default; - /// /// The backing vector for SIMD support. /// @@ -79,12 +74,6 @@ namespace SixLabors.ImageSharp.ColorSpaces get => this.backingVector.Z; } - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); - /// public Vector3 Vector => this.backingVector; @@ -131,12 +120,9 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - if (this.IsEmpty) - { - return "Lms [ Empty ]"; - } - - return $"Lms [ L={this.L:#0.##}, M={this.M:#0.##}, S={this.S:#0.##} ]"; + return this.Equals(default) + ? "Lms [ Empty ]" + : $"Lms [ L={this.L:#0.##}, M={this.M:#0.##}, S={this.S:#0.##} ]"; } /// diff --git a/src/ImageSharp/ColorSpaces/Rgb.cs b/src/ImageSharp/ColorSpaces/Rgb.cs index 351d2b187a..0041605f98 100644 --- a/src/ImageSharp/ColorSpaces/Rgb.cs +++ b/src/ImageSharp/ColorSpaces/Rgb.cs @@ -15,11 +15,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// internal readonly struct Rgb : IColorVector, IEquatable, IAlmostEquatable { - /// - /// Represents a that has R, G, and B values set to zero. - /// - public static readonly Rgb Empty = default; - /// /// The default rgb working space /// @@ -112,17 +107,7 @@ namespace SixLabors.ImageSharp.ColorSpaces /// /// Gets the Rgb color space /// - public IRgbWorkingSpace WorkingSpace - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get; - } - - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); + public IRgbWorkingSpace WorkingSpace { get; } /// public Vector3 Vector => this.backingVector; @@ -186,12 +171,9 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - if (this.IsEmpty) - { - return "Rgb [ Empty ]"; - } - - return $"Rgb [ R={this.R:#0.##}, G={this.G:#0.##}, B={this.B:#0.##} ]"; + return this.Equals(default) + ? "Rgb [ Empty ]" + : $"Rgb [ R={this.R:#0.##}, G={this.G:#0.##}, B={this.B:#0.##} ]"; } /// diff --git a/src/ImageSharp/ColorSpaces/YCbCr.cs b/src/ImageSharp/ColorSpaces/YCbCr.cs index cb1060137c..4bc70626c7 100644 --- a/src/ImageSharp/ColorSpaces/YCbCr.cs +++ b/src/ImageSharp/ColorSpaces/YCbCr.cs @@ -15,11 +15,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// internal readonly struct YCbCr : IColorVector, IEquatable, IAlmostEquatable { - /// - /// Represents a that has Y, Cb, and Cr values set to zero. - /// - public static readonly YCbCr Empty = default; - /// /// Vector which is used in clamping to the max value /// @@ -82,12 +77,6 @@ namespace SixLabors.ImageSharp.ColorSpaces get => this.backingVector.Z; } - /// - /// Gets a value indicating whether this is empty. - /// - [EditorBrowsable(EditorBrowsableState.Never)] - public bool IsEmpty => this.Equals(Empty); - /// public Vector3 Vector => this.backingVector; @@ -103,7 +92,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// /// True if the current left is equal to the parameter; otherwise, false. /// - [MethodImpl(MethodImplOptions.AggressiveInlining)] public static bool operator ==(YCbCr left, YCbCr right) { return left.Equals(right); @@ -121,7 +109,6 @@ namespace SixLabors.ImageSharp.ColorSpaces /// /// True if the current left is unequal to the parameter; otherwise, false. /// - [MethodImpl(MethodImplOptions.AggressiveInlining)] public static bool operator !=(YCbCr left, YCbCr right) { return !left.Equals(right); @@ -136,23 +123,18 @@ namespace SixLabors.ImageSharp.ColorSpaces /// public override string ToString() { - if (this.IsEmpty) - { - return "YCbCr [ Empty ]"; - } - - return $"YCbCr [ Y={this.Y}, Cb={this.Cb}, Cr={this.Cr} ]"; + return this.Equals(default) + ? "YCbCr [ Empty ]" + : $"YCbCr [ Y={this.Y}, Cb={this.Cb}, Cr={this.Cr} ]"; } /// - [MethodImpl(MethodImplOptions.AggressiveInlining)] public override bool Equals(object obj) { return obj is YCbCr other && this.Equals(other); } /// - [MethodImpl(MethodImplOptions.AggressiveInlining)] public bool Equals(YCbCr other) { return this.backingVector.Equals(other.backingVector);