diff --git a/src/ImageSharp/ColorSpaces/CieLch.cs b/src/ImageSharp/ColorSpaces/CieLch.cs
index 94443fd863..1b9cf9c2b7 100644
--- a/src/ImageSharp/ColorSpaces/CieLch.cs
+++ b/src/ImageSharp/ColorSpaces/CieLch.cs
@@ -194,12 +194,7 @@ namespace SixLabors.ImageSharp.ColorSpaces
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override bool Equals(object obj)
{
- if (obj is CieLch)
- {
- return this.Equals((CieLch)obj);
- }
-
- return false;
+ return obj is CieLch other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/CieLchuv.cs b/src/ImageSharp/ColorSpaces/CieLchuv.cs
index 705b770d35..7ec27806d8 100644
--- a/src/ImageSharp/ColorSpaces/CieLchuv.cs
+++ b/src/ImageSharp/ColorSpaces/CieLchuv.cs
@@ -194,12 +194,7 @@ namespace SixLabors.ImageSharp.ColorSpaces
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override bool Equals(object obj)
{
- if (obj is CieLchuv)
- {
- return this.Equals((CieLchuv)obj);
- }
-
- return false;
+ return obj is CieLchuv other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/CieLuv.cs b/src/ImageSharp/ColorSpaces/CieLuv.cs
index b0ae048ab7..e46b736a75 100644
--- a/src/ImageSharp/ColorSpaces/CieLuv.cs
+++ b/src/ImageSharp/ColorSpaces/CieLuv.cs
@@ -196,12 +196,7 @@ namespace SixLabors.ImageSharp.ColorSpaces
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override bool Equals(object obj)
{
- if (obj is CieLuv)
- {
- return this.Equals((CieLuv)obj);
- }
-
- return false;
+ return obj is CieLuv other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/CieXyChromaticityCoordinates.cs b/src/ImageSharp/ColorSpaces/CieXyChromaticityCoordinates.cs
index d0a70dd191..d54de43bbb 100644
--- a/src/ImageSharp/ColorSpaces/CieXyChromaticityCoordinates.cs
+++ b/src/ImageSharp/ColorSpaces/CieXyChromaticityCoordinates.cs
@@ -132,12 +132,7 @@ namespace SixLabors.ImageSharp.ColorSpaces
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override bool Equals(object obj)
{
- if (obj is CieXyChromaticityCoordinates)
- {
- return this.Equals((CieXyChromaticityCoordinates)obj);
- }
-
- return false;
+ return obj is CieXyChromaticityCoordinates other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/CieXyy.cs b/src/ImageSharp/ColorSpaces/CieXyy.cs
index 751830a0ba..9633f83ad0 100644
--- a/src/ImageSharp/ColorSpaces/CieXyy.cs
+++ b/src/ImageSharp/ColorSpaces/CieXyy.cs
@@ -148,12 +148,7 @@ namespace SixLabors.ImageSharp.ColorSpaces
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override bool Equals(object obj)
{
- if (obj is CieXyy)
- {
- return this.Equals((CieXyy)obj);
- }
-
- return false;
+ return obj is CieXyy other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/CieXyz.cs b/src/ImageSharp/ColorSpaces/CieXyz.cs
index 0f1866009b..eedfed0798 100644
--- a/src/ImageSharp/ColorSpaces/CieXyz.cs
+++ b/src/ImageSharp/ColorSpaces/CieXyz.cs
@@ -148,12 +148,7 @@ namespace SixLabors.ImageSharp.ColorSpaces
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override bool Equals(object obj)
{
- if (obj is CieXyz)
- {
- return this.Equals((CieXyz)obj);
- }
-
- return false;
+ return obj is CieXyz other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/Cmyk.cs b/src/ImageSharp/ColorSpaces/Cmyk.cs
index 2eb148a8c3..2e44ea920a 100644
--- a/src/ImageSharp/ColorSpaces/Cmyk.cs
+++ b/src/ImageSharp/ColorSpaces/Cmyk.cs
@@ -150,12 +150,7 @@ namespace SixLabors.ImageSharp.ColorSpaces
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override bool Equals(object obj)
{
- if (obj is Cmyk)
- {
- return this.Equals((Cmyk)obj);
- }
-
- return false;
+ return obj is Cmyk other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RGBPrimariesChromaticityCoordinates.cs b/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RGBPrimariesChromaticityCoordinates.cs
index d279aba850..8afe2ffa05 100644
--- a/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RGBPrimariesChromaticityCoordinates.cs
+++ b/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RGBPrimariesChromaticityCoordinates.cs
@@ -9,7 +9,7 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSap
/// Represents the chromaticity coordinates of RGB primaries.
/// One of the specifiers of .
///
- internal struct RgbPrimariesChromaticityCoordinates : IEquatable
+ internal readonly struct RgbPrimariesChromaticityCoordinates : IEquatable
{
///
/// Initializes a new instance of the struct.
@@ -76,12 +76,7 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSap
///
public override bool Equals(object obj)
{
- if (obj is RgbPrimariesChromaticityCoordinates)
- {
- return this.Equals((RgbPrimariesChromaticityCoordinates)obj);
- }
-
- return false;
+ return obj is RgbPrimariesChromaticityCoordinates other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RgbWorkingSpace.cs b/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RgbWorkingSpace.cs
index 5a5c39647f..530c016916 100644
--- a/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RgbWorkingSpace.cs
+++ b/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RgbWorkingSpace.cs
@@ -73,12 +73,7 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSap
///
public override bool Equals(object obj)
{
- if (obj is RgbWorkingSpace)
- {
- return this.Equals((RgbWorkingSpace)obj);
- }
-
- return false;
+ return obj is RgbWorkingSpace other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/Hsl.cs b/src/ImageSharp/ColorSpaces/Hsl.cs
index 1944ac0c6b..3b2ceae27f 100644
--- a/src/ImageSharp/ColorSpaces/Hsl.cs
+++ b/src/ImageSharp/ColorSpaces/Hsl.cs
@@ -150,12 +150,7 @@ namespace SixLabors.ImageSharp.ColorSpaces
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override bool Equals(object obj)
{
- if (obj is Hsl)
- {
- return this.Equals((Hsl)obj);
- }
-
- return false;
+ return obj is Hsl other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/Hsv.cs b/src/ImageSharp/ColorSpaces/Hsv.cs
index fdfbfe5dd1..f646eb29d0 100644
--- a/src/ImageSharp/ColorSpaces/Hsv.cs
+++ b/src/ImageSharp/ColorSpaces/Hsv.cs
@@ -202,12 +202,7 @@ namespace SixLabors.ImageSharp.ColorSpaces
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override bool Equals(object obj)
{
- if (obj is Hsv)
- {
- return this.Equals((Hsv)obj);
- }
-
- return false;
+ return obj is Hsv other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/HunterLab.cs b/src/ImageSharp/ColorSpaces/HunterLab.cs
index de42518d76..4ace27def9 100644
--- a/src/ImageSharp/ColorSpaces/HunterLab.cs
+++ b/src/ImageSharp/ColorSpaces/HunterLab.cs
@@ -190,12 +190,7 @@ namespace SixLabors.ImageSharp.ColorSpaces
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override bool Equals(object obj)
{
- if (obj is HunterLab)
- {
- return this.Equals((HunterLab)obj);
- }
-
- return false;
+ return obj is HunterLab other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/LinearRgb.cs b/src/ImageSharp/ColorSpaces/LinearRgb.cs
index b8c446285a..f2dc297a01 100644
--- a/src/ImageSharp/ColorSpaces/LinearRgb.cs
+++ b/src/ImageSharp/ColorSpaces/LinearRgb.cs
@@ -182,12 +182,7 @@ namespace SixLabors.ImageSharp.ColorSpaces
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override bool Equals(object obj)
{
- if (obj is LinearRgb)
- {
- return this.Equals((LinearRgb)obj);
- }
-
- return false;
+ return obj is LinearRgb other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/Lms.cs b/src/ImageSharp/ColorSpaces/Lms.cs
index 72ac16f213..09c20269ab 100644
--- a/src/ImageSharp/ColorSpaces/Lms.cs
+++ b/src/ImageSharp/ColorSpaces/Lms.cs
@@ -149,12 +149,7 @@ namespace SixLabors.ImageSharp.ColorSpaces
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override bool Equals(object obj)
{
- if (obj is Lms)
- {
- return this.Equals((Lms)obj);
- }
-
- return false;
+ return obj is Lms other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/Rgb.cs b/src/ImageSharp/ColorSpaces/Rgb.cs
index ac86cfbf06..1282394670 100644
--- a/src/ImageSharp/ColorSpaces/Rgb.cs
+++ b/src/ImageSharp/ColorSpaces/Rgb.cs
@@ -204,12 +204,7 @@ namespace SixLabors.ImageSharp.ColorSpaces
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override bool Equals(object obj)
{
- if (obj is Rgb)
- {
- return this.Equals((Rgb)obj);
- }
-
- return false;
+ return obj is Rgb other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/ColorSpaces/YCbCr.cs b/src/ImageSharp/ColorSpaces/YCbCr.cs
index 44a0b245d5..a6e27de94b 100644
--- a/src/ImageSharp/ColorSpaces/YCbCr.cs
+++ b/src/ImageSharp/ColorSpaces/YCbCr.cs
@@ -152,12 +152,7 @@ namespace SixLabors.ImageSharp.ColorSpaces
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public override bool Equals(object obj)
{
- if (obj is YCbCr)
- {
- return this.Equals((YCbCr)obj);
- }
-
- return false;
+ return obj is YCbCr other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/Formats/Gif/PackedField.cs b/src/ImageSharp/Formats/Gif/PackedField.cs
index 28a415e2b8..969449a9f9 100644
--- a/src/ImageSharp/Formats/Gif/PackedField.cs
+++ b/src/ImageSharp/Formats/Gif/PackedField.cs
@@ -169,9 +169,7 @@ namespace SixLabors.ImageSharp.Formats.Gif
///
public override bool Equals(object obj)
{
- PackedField? field = obj as PackedField?;
-
- return this.Byte == field?.Byte;
+ return obj is PackedField other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/Formats/Jpeg/Common/Block8x8.cs b/src/ImageSharp/Formats/Jpeg/Common/Block8x8.cs
index 11a456ef9b..06fdb2c76d 100644
--- a/src/ImageSharp/Formats/Jpeg/Common/Block8x8.cs
+++ b/src/ImageSharp/Formats/Jpeg/Common/Block8x8.cs
@@ -273,12 +273,7 @@ namespace SixLabors.ImageSharp.Formats.Jpeg.Common
///
public override bool Equals(object obj)
{
- if (ReferenceEquals(null, obj))
- {
- return false;
- }
-
- return obj is Block8x8 && this.Equals((Block8x8)obj);
+ return obj is Block8x8 other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/Formats/Jpeg/Common/Decoder/AdobeMarker.cs b/src/ImageSharp/Formats/Jpeg/Common/Decoder/AdobeMarker.cs
index d55e36bd48..40059c5a0f 100644
--- a/src/ImageSharp/Formats/Jpeg/Common/Decoder/AdobeMarker.cs
+++ b/src/ImageSharp/Formats/Jpeg/Common/Decoder/AdobeMarker.cs
@@ -94,12 +94,7 @@ namespace SixLabors.ImageSharp.Formats.Jpeg.Common.Decoder
///
public override bool Equals(object obj)
{
- if (ReferenceEquals(null, obj))
- {
- return false;
- }
-
- return obj is AdobeMarker && this.Equals((AdobeMarker)obj);
+ return obj is AdobeMarker other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/Formats/Jpeg/Common/Decoder/JFifMarker.cs b/src/ImageSharp/Formats/Jpeg/Common/Decoder/JFifMarker.cs
index c856fd04a6..afe4794a23 100644
--- a/src/ImageSharp/Formats/Jpeg/Common/Decoder/JFifMarker.cs
+++ b/src/ImageSharp/Formats/Jpeg/Common/Decoder/JFifMarker.cs
@@ -87,7 +87,7 @@ namespace SixLabors.ImageSharp.Formats.Jpeg.Common.Decoder
}
}
- marker = default(JFifMarker);
+ marker = default;
return false;
}
@@ -104,12 +104,7 @@ namespace SixLabors.ImageSharp.Formats.Jpeg.Common.Decoder
///
public override bool Equals(object obj)
{
- if (ReferenceEquals(null, obj))
- {
- return false;
- }
-
- return obj is JFifMarker && this.Equals((JFifMarker)obj);
+ return obj is JFifMarker other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/MetaData/ImageProperty.cs b/src/ImageSharp/MetaData/ImageProperty.cs
index c60aaecfba..a663573763 100644
--- a/src/ImageSharp/MetaData/ImageProperty.cs
+++ b/src/ImageSharp/MetaData/ImageProperty.cs
@@ -110,9 +110,7 @@ namespace SixLabors.ImageSharp.MetaData
///
public override bool Equals(object obj)
{
- ImageProperty other = obj as ImageProperty;
-
- return this.Equals(other);
+ return obj is ImageProperty other && Equals(other);
}
///
diff --git a/src/ImageSharp/MetaData/Profiles/Exif/ExifValue.cs b/src/ImageSharp/MetaData/Profiles/Exif/ExifValue.cs
index 3c2b23f37f..fd00c8585e 100644
--- a/src/ImageSharp/MetaData/Profiles/Exif/ExifValue.cs
+++ b/src/ImageSharp/MetaData/Profiles/Exif/ExifValue.cs
@@ -77,37 +77,24 @@ namespace SixLabors.ImageSharp.MetaData.Profiles.Exif
///
/// Gets the data type of the exif value.
///
- public ExifDataType DataType
- {
- get;
- }
+ public ExifDataType DataType { get; }
///
/// Gets a value indicating whether the value is an array.
///
- public bool IsArray
- {
- get;
- }
+ public bool IsArray { get; }
///
/// Gets the tag of the exif value.
///
- public ExifTag Tag
- {
- get;
- }
+ public ExifTag Tag { get; }
///
/// Gets or sets the value.
///
public object Value
{
- get
- {
- return this.exifValue;
- }
-
+ get => this.exifValue;
set
{
this.CheckValue(value);
@@ -217,12 +204,7 @@ namespace SixLabors.ImageSharp.MetaData.Profiles.Exif
///
public override bool Equals(object obj)
{
- if (ReferenceEquals(this, obj))
- {
- return true;
- }
-
- return this.Equals(obj as ExifValue);
+ return obj is ExifValue other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccParametricCurve.cs b/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccParametricCurve.cs
index 46aec49be6..ee8b4c731e 100644
--- a/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccParametricCurve.cs
+++ b/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccParametricCurve.cs
@@ -158,7 +158,7 @@ namespace SixLabors.ImageSharp.MetaData.Profiles.Icc
return true;
}
- return obj is IccParametricCurve && this.Equals((IccParametricCurve)obj);
+ return obj is IccParametricCurve other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccResponseCurve.cs b/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccResponseCurve.cs
index ae9cd84b47..8a7162198b 100644
--- a/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccResponseCurve.cs
+++ b/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccResponseCurve.cs
@@ -77,7 +77,7 @@ namespace SixLabors.ImageSharp.MetaData.Profiles.Icc
return true;
}
- return obj is IccResponseCurve && this.Equals((IccResponseCurve)obj);
+ return obj is IccResponseCurve other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/PixelFormats/Alpha8.cs b/src/ImageSharp/PixelFormats/Alpha8.cs
index c266035a6b..ad887b7145 100644
--- a/src/ImageSharp/PixelFormats/Alpha8.cs
+++ b/src/ImageSharp/PixelFormats/Alpha8.cs
@@ -124,7 +124,7 @@ namespace SixLabors.ImageSharp.PixelFormats
/// True if the object is equal to the packed vector.
public override bool Equals(object obj)
{
- return (obj is Alpha8) && this.Equals((Alpha8)obj);
+ return obj is Alpha8 other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/PixelFormats/Bgr24.cs b/src/ImageSharp/PixelFormats/Bgr24.cs
index e210856b36..801edcc0bf 100644
--- a/src/ImageSharp/PixelFormats/Bgr24.cs
+++ b/src/ImageSharp/PixelFormats/Bgr24.cs
@@ -57,7 +57,7 @@ namespace SixLabors.ImageSharp.PixelFormats
///
public override bool Equals(object obj)
{
- return obj?.GetType() == typeof(Bgr24) && this.Equals((Bgr24)obj);
+ return obj is Bgr24 other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/PixelFormats/Bgra32.cs b/src/ImageSharp/PixelFormats/Bgra32.cs
index e8469414d3..ec2296844b 100644
--- a/src/ImageSharp/PixelFormats/Bgra32.cs
+++ b/src/ImageSharp/PixelFormats/Bgra32.cs
@@ -101,7 +101,7 @@ namespace SixLabors.ImageSharp.PixelFormats
}
///
- public override bool Equals(object obj) => obj?.GetType() == typeof(Bgra32) && this.Equals((Bgra32)obj);
+ public override bool Equals(object obj) => obj is Bgra32 other && this.Equals(other);
///
public override int GetHashCode()
diff --git a/src/ImageSharp/PixelFormats/Bgra4444.cs b/src/ImageSharp/PixelFormats/Bgra4444.cs
index c51a872d1a..fd75125503 100644
--- a/src/ImageSharp/PixelFormats/Bgra4444.cs
+++ b/src/ImageSharp/PixelFormats/Bgra4444.cs
@@ -142,7 +142,7 @@ namespace SixLabors.ImageSharp.PixelFormats
///
public override bool Equals(object obj)
{
- return (obj is Bgra4444) && this.Equals((Bgra4444)obj);
+ return obj is Bgra4444 other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/PixelFormats/Bgra5551.cs b/src/ImageSharp/PixelFormats/Bgra5551.cs
index 8be4ce82c9..2169949765 100644
--- a/src/ImageSharp/PixelFormats/Bgra5551.cs
+++ b/src/ImageSharp/PixelFormats/Bgra5551.cs
@@ -142,7 +142,7 @@ namespace SixLabors.ImageSharp.PixelFormats
///
public override bool Equals(object obj)
{
- return (obj is Bgra5551) && this.Equals((Bgra5551)obj);
+ return obj is Bgra5551 other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/PixelFormats/HalfVector4.cs b/src/ImageSharp/PixelFormats/HalfVector4.cs
index 87a1c9a498..8356624871 100644
--- a/src/ImageSharp/PixelFormats/HalfVector4.cs
+++ b/src/ImageSharp/PixelFormats/HalfVector4.cs
@@ -172,7 +172,7 @@ namespace SixLabors.ImageSharp.PixelFormats
///
public override bool Equals(object obj)
{
- return (obj is HalfVector4) && this.Equals((HalfVector4)obj);
+ return obj is HalfVector4 other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/PixelFormats/NormalizedByte2.cs b/src/ImageSharp/PixelFormats/NormalizedByte2.cs
index 9a69f6ab36..e38e3a6bfd 100644
--- a/src/ImageSharp/PixelFormats/NormalizedByte2.cs
+++ b/src/ImageSharp/PixelFormats/NormalizedByte2.cs
@@ -175,7 +175,7 @@ namespace SixLabors.ImageSharp.PixelFormats
///
public override bool Equals(object obj)
{
- return (obj is NormalizedByte2) && this.Equals((NormalizedByte2)obj);
+ return obj is NormalizedByte2 other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/PixelFormats/NormalizedByte4.cs b/src/ImageSharp/PixelFormats/NormalizedByte4.cs
index 920f92cae7..8568cd3fc6 100644
--- a/src/ImageSharp/PixelFormats/NormalizedByte4.cs
+++ b/src/ImageSharp/PixelFormats/NormalizedByte4.cs
@@ -168,7 +168,7 @@ namespace SixLabors.ImageSharp.PixelFormats
///
public override bool Equals(object obj)
{
- return (obj is NormalizedByte4) && this.Equals((NormalizedByte4)obj);
+ return obj is NormalizedByte4 other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/PixelFormats/NormalizedShort4.cs b/src/ImageSharp/PixelFormats/NormalizedShort4.cs
index 45f984da0b..94df4ec505 100644
--- a/src/ImageSharp/PixelFormats/NormalizedShort4.cs
+++ b/src/ImageSharp/PixelFormats/NormalizedShort4.cs
@@ -170,7 +170,7 @@ namespace SixLabors.ImageSharp.PixelFormats
///
public override bool Equals(object obj)
{
- return (obj is NormalizedShort4) && this.Equals((NormalizedShort4)obj);
+ return obj is NormalizedShort4 other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/PixelFormats/Rgb24.cs b/src/ImageSharp/PixelFormats/Rgb24.cs
index d867d9065e..b82b47a389 100644
--- a/src/ImageSharp/PixelFormats/Rgb24.cs
+++ b/src/ImageSharp/PixelFormats/Rgb24.cs
@@ -57,7 +57,7 @@ namespace SixLabors.ImageSharp.PixelFormats
///
public override bool Equals(object obj)
{
- return obj?.GetType() == typeof(Rgb24) && this.Equals((Rgb24)obj);
+ return obj is Rgb24 other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/PixelFormats/RgbaVector.cs b/src/ImageSharp/PixelFormats/RgbaVector.cs
index ba641d590c..a7c112aa63 100644
--- a/src/ImageSharp/PixelFormats/RgbaVector.cs
+++ b/src/ImageSharp/PixelFormats/RgbaVector.cs
@@ -290,7 +290,7 @@ namespace SixLabors.ImageSharp.PixelFormats
///
public override bool Equals(object obj)
{
- return (obj is RgbaVector) && this.Equals((RgbaVector)obj);
+ return obj is RgbaVector other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/PixelFormats/Short2.cs b/src/ImageSharp/PixelFormats/Short2.cs
index 1355a94135..6b95a3e042 100644
--- a/src/ImageSharp/PixelFormats/Short2.cs
+++ b/src/ImageSharp/PixelFormats/Short2.cs
@@ -171,7 +171,7 @@ namespace SixLabors.ImageSharp.PixelFormats
///
public override bool Equals(object obj)
{
- return (obj is Short2) && this.Equals((Short2)obj);
+ return obj is Short2 other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/PixelFormats/Short4.cs b/src/ImageSharp/PixelFormats/Short4.cs
index aecb4d2de8..c35e0d6aa9 100644
--- a/src/ImageSharp/PixelFormats/Short4.cs
+++ b/src/ImageSharp/PixelFormats/Short4.cs
@@ -166,7 +166,7 @@ namespace SixLabors.ImageSharp.PixelFormats
///
public override bool Equals(object obj)
{
- return (obj is Short4) && this == (Short4)obj;
+ return obj is Short4 other && this.Equals(other);
}
///
diff --git a/src/ImageSharp/Primitives/DenseMatrix{T}.cs b/src/ImageSharp/Primitives/DenseMatrix{T}.cs
index 1f459e7cb0..5f3defd118 100644
--- a/src/ImageSharp/Primitives/DenseMatrix{T}.cs
+++ b/src/ImageSharp/Primitives/DenseMatrix{T}.cs
@@ -207,7 +207,7 @@ namespace SixLabors.ImageSharp.Primitives
}
///
- public override bool Equals(object obj) => obj is DenseMatrix matrix && this.Equals(matrix);
+ public override bool Equals(object obj) => obj is DenseMatrix other && this.Equals(other);
///
public override int GetHashCode() => this.Data.GetHashCode();