diff --git a/src/ImageSharp.Drawing/Processing/BrushApplicator.cs b/src/ImageSharp.Drawing/Processing/BrushApplicator.cs index 04e2d0b9d..0ac4e4dd1 100644 --- a/src/ImageSharp.Drawing/Processing/BrushApplicator.cs +++ b/src/ImageSharp.Drawing/Processing/BrushApplicator.cs @@ -24,9 +24,7 @@ namespace SixLabors.ImageSharp.Processing internal BrushApplicator(ImageFrame target, GraphicsOptions options) { this.Target = target; - this.Options = options; - this.Blender = PixelOperations.Instance.GetPixelBlender(options.BlenderMode); } diff --git a/src/ImageSharp/ColorSpaces/CieLab.cs b/src/ImageSharp/ColorSpaces/CieLab.cs index 18693d553..82975d933 100644 --- a/src/ImageSharp/ColorSpaces/CieLab.cs +++ b/src/ImageSharp/ColorSpaces/CieLab.cs @@ -111,11 +111,7 @@ namespace SixLabors.ImageSharp.ColorSpaces } /// - public Vector3 Vector - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get => this.backingVector; - } + public Vector3 Vector => this.backingVector; /// /// Compares two objects for equality. diff --git a/src/ImageSharp/ColorSpaces/CieLch.cs b/src/ImageSharp/ColorSpaces/CieLch.cs index 4fa853206..67a9956bd 100644 --- a/src/ImageSharp/ColorSpaces/CieLch.cs +++ b/src/ImageSharp/ColorSpaces/CieLch.cs @@ -111,11 +111,7 @@ namespace SixLabors.ImageSharp.ColorSpaces } /// - public Vector3 Vector - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get => this.backingVector; - } + public Vector3 Vector => this.backingVector; /// /// Compares two objects for equality. diff --git a/src/ImageSharp/ColorSpaces/CieLchuv.cs b/src/ImageSharp/ColorSpaces/CieLchuv.cs index 16c5f0bcc..0b4c7a903 100644 --- a/src/ImageSharp/ColorSpaces/CieLchuv.cs +++ b/src/ImageSharp/ColorSpaces/CieLchuv.cs @@ -111,11 +111,7 @@ namespace SixLabors.ImageSharp.ColorSpaces } /// - public Vector3 Vector - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get => this.backingVector; - } + public Vector3 Vector => this.backingVector; /// /// Compares two objects for equality. diff --git a/src/ImageSharp/ColorSpaces/CieLuv.cs b/src/ImageSharp/ColorSpaces/CieLuv.cs index fc216b97e..dbc3b6dee 100644 --- a/src/ImageSharp/ColorSpaces/CieLuv.cs +++ b/src/ImageSharp/ColorSpaces/CieLuv.cs @@ -113,11 +113,7 @@ namespace SixLabors.ImageSharp.ColorSpaces } /// - public Vector3 Vector - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get => this.backingVector; - } + public Vector3 Vector => this.backingVector; /// /// Compares two objects for equality. diff --git a/src/ImageSharp/ColorSpaces/CieXyz.cs b/src/ImageSharp/ColorSpaces/CieXyz.cs index ddca51b95..fa4261b46 100644 --- a/src/ImageSharp/ColorSpaces/CieXyz.cs +++ b/src/ImageSharp/ColorSpaces/CieXyz.cs @@ -73,11 +73,7 @@ namespace SixLabors.ImageSharp.ColorSpaces } /// - public Vector3 Vector - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get => this.backingVector; - } + public Vector3 Vector => this.backingVector; /// /// Compares two objects for equality. diff --git a/src/ImageSharp/ColorSpaces/Conversion/ColorSpaceConverter.CieXyz.cs b/src/ImageSharp/ColorSpaces/Conversion/ColorSpaceConverter.CieXyz.cs index ff3822c86..f4f28401f 100644 --- a/src/ImageSharp/ColorSpaces/Conversion/ColorSpaceConverter.CieXyz.cs +++ b/src/ImageSharp/ColorSpaces/Conversion/ColorSpaceConverter.CieXyz.cs @@ -211,7 +211,7 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion /// /// The source working space /// The - private LinearRgbToCieXyzConverter GetLinearRgbToCieXyzConverter(IRgbWorkingSpace workingSpace) + private LinearRgbToCieXyzConverter GetLinearRgbToCieXyzConverter(RgbWorkingSpace workingSpace) { if (this.linearRgbToCieXyzConverter != null && this.linearRgbToCieXyzConverter.SourceWorkingSpace.Equals(workingSpace)) { diff --git a/src/ImageSharp/ColorSpaces/Conversion/ColorSpaceConverter.LinearRgb.cs b/src/ImageSharp/ColorSpaces/Conversion/ColorSpaceConverter.LinearRgb.cs index 6cfdb4853..5fdde5c75 100644 --- a/src/ImageSharp/ColorSpaces/Conversion/ColorSpaceConverter.LinearRgb.cs +++ b/src/ImageSharp/ColorSpaces/Conversion/ColorSpaceConverter.LinearRgb.cs @@ -168,7 +168,7 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion /// /// The target working space /// The - private CieXyzToLinearRgbConverter GetCieXyxToLinearRgbConverter(IRgbWorkingSpace workingSpace) + private CieXyzToLinearRgbConverter GetCieXyxToLinearRgbConverter(RgbWorkingSpace workingSpace) { if (this.cieXyzToLinearRgbConverter != null && this.cieXyzToLinearRgbConverter.TargetWorkingSpace.Equals(workingSpace)) { diff --git a/src/ImageSharp/ColorSpaces/Conversion/ColorSpaceConverter.cs b/src/ImageSharp/ColorSpaces/Conversion/ColorSpaceConverter.cs index f86f50538..7142ab0e8 100644 --- a/src/ImageSharp/ColorSpaces/Conversion/ColorSpaceConverter.cs +++ b/src/ImageSharp/ColorSpaces/Conversion/ColorSpaceConverter.cs @@ -2,8 +2,8 @@ // Licensed under the Apache License, Version 2.0. using System.Numerics; -using SixLabors.ImageSharp.ColorSpaces; using SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.LmsColorSapce; +using SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSapce; namespace SixLabors.ImageSharp.ColorSpaces.Conversion { @@ -64,7 +64,7 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion /// Gets or sets the target working space used *when creating* RGB colors. (RGB colors on the input already contain the working space information) /// Defaults to: . /// - public IRgbWorkingSpace TargetRgbWorkingSpace { get; set; } + public RgbWorkingSpace TargetRgbWorkingSpace { get; set; } /// /// Gets or sets the chromatic adaptation method used. When null, no adaptation will be performed. diff --git a/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/CieXyzToLinearRgbConverter.cs b/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/CieXyzToLinearRgbConverter.cs index e75d4a804..217698c23 100644 --- a/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/CieXyzToLinearRgbConverter.cs +++ b/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/CieXyzToLinearRgbConverter.cs @@ -8,7 +8,7 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSap /// /// Color converter between CieXyz and LinearRgb /// - internal class CieXyzToLinearRgbConverter : LinearRgbAndCieXyzConverterBase, IColorConversion + internal sealed class CieXyzToLinearRgbConverter : LinearRgbAndCieXyzConverterBase, IColorConversion { private readonly Matrix4x4 conversionMatrix; @@ -24,7 +24,7 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSap /// Initializes a new instance of the class. /// /// The target working space. - public CieXyzToLinearRgbConverter(IRgbWorkingSpace workingSpace) + public CieXyzToLinearRgbConverter(RgbWorkingSpace workingSpace) { this.TargetWorkingSpace = workingSpace; this.conversionMatrix = GetRgbToCieXyzMatrix(workingSpace); @@ -33,7 +33,7 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSap /// /// Gets the target working space /// - public IRgbWorkingSpace TargetWorkingSpace { get; } + public RgbWorkingSpace TargetWorkingSpace { get; } /// public LinearRgb Convert(in CieXyz input) diff --git a/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/LinearRgbAndCieXyzConverterBase.cs b/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/LinearRgbAndCieXyzConverterBase.cs index a0da2bc26..bc11c51b5 100644 --- a/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/LinearRgbAndCieXyzConverterBase.cs +++ b/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/LinearRgbAndCieXyzConverterBase.cs @@ -15,7 +15,7 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSap /// /// The Rgb working space. /// The based on the chromaticity and working space. - public static Matrix4x4 GetRgbToCieXyzMatrix(IRgbWorkingSpace workingSpace) + public static Matrix4x4 GetRgbToCieXyzMatrix(RgbWorkingSpace workingSpace) { DebugGuard.NotNull(workingSpace, nameof(workingSpace)); diff --git a/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/LinearRgbToCieXyzConverter.cs b/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/LinearRgbToCieXyzConverter.cs index 05cd5b72f..e597b66af 100644 --- a/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/LinearRgbToCieXyzConverter.cs +++ b/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/LinearRgbToCieXyzConverter.cs @@ -8,7 +8,7 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSap /// /// Color converter between LinearRgb and CieXyz /// - internal class LinearRgbToCieXyzConverter : LinearRgbAndCieXyzConverterBase, IColorConversion + internal sealed class LinearRgbToCieXyzConverter : LinearRgbAndCieXyzConverterBase, IColorConversion { private readonly Matrix4x4 conversionMatrix; @@ -24,7 +24,7 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSap /// Initializes a new instance of the class. /// /// The target working space. - public LinearRgbToCieXyzConverter(IRgbWorkingSpace workingSpace) + public LinearRgbToCieXyzConverter(RgbWorkingSpace workingSpace) { this.SourceWorkingSpace = workingSpace; this.conversionMatrix = GetRgbToCieXyzMatrix(workingSpace); @@ -33,7 +33,7 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSap /// /// Gets the source working space /// - public IRgbWorkingSpace SourceWorkingSpace { get; } + public RgbWorkingSpace SourceWorkingSpace { get; } /// public CieXyz Convert(in LinearRgb input) diff --git a/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RGBPrimariesChromaticityCoordinates.cs b/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RGBPrimariesChromaticityCoordinates.cs index 8afe2ffa0..4359d666e 100644 --- a/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RGBPrimariesChromaticityCoordinates.cs +++ b/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RGBPrimariesChromaticityCoordinates.cs @@ -7,7 +7,7 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSap { /// /// Represents the chromaticity coordinates of RGB primaries. - /// One of the specifiers of . + /// One of the specifiers of . /// internal readonly struct RgbPrimariesChromaticityCoordinates : IEquatable { diff --git a/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RgbWorkingSpace.cs b/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RgbWorkingSpace.cs index d4d00db86..f4a79c744 100644 --- a/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RgbWorkingSpace.cs +++ b/src/ImageSharp/ColorSpaces/Conversion/Implementation/Rgb/RgbWorkingSpace.cs @@ -4,9 +4,9 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSapce { /// - /// Trivial implementation of + /// Trivial implementation of /// - internal class RgbWorkingSpace : IRgbWorkingSpace + internal class RgbWorkingSpace { /// /// Initializes a new instance of the class. @@ -70,14 +70,12 @@ namespace SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSap return !Equals(left, right); } - /// public override bool Equals(object obj) { return obj is RgbWorkingSpace other && this.Equals(other); } - /// - public bool Equals(IRgbWorkingSpace other) + public bool Equals(RgbWorkingSpace other) { // TODO: Object.Equals for ICompanding will be slow. return this.WhitePoint.Equals(other.WhitePoint) diff --git a/src/ImageSharp/ColorSpaces/Hsv.cs b/src/ImageSharp/ColorSpaces/Hsv.cs index c8cc7eea0..78a49097e 100644 --- a/src/ImageSharp/ColorSpaces/Hsv.cs +++ b/src/ImageSharp/ColorSpaces/Hsv.cs @@ -78,11 +78,7 @@ namespace SixLabors.ImageSharp.ColorSpaces } /// - public Vector3 Vector - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get => this.backingVector; - } + public Vector3 Vector => this.backingVector; /// /// Allows the implicit conversion of an instance of to a diff --git a/src/ImageSharp/ColorSpaces/ICompanding.cs b/src/ImageSharp/ColorSpaces/ICompanding.cs index 2dfa575ed..053c8d17b 100644 --- a/src/ImageSharp/ColorSpaces/ICompanding.cs +++ b/src/ImageSharp/ColorSpaces/ICompanding.cs @@ -1,12 +1,14 @@ // Copyright (c) Six Labors and contributors. // Licensed under the Apache License, Version 2.0. +using SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSapce; + namespace SixLabors.ImageSharp.ColorSpaces { /// - /// Pair of companding functions for . + /// Pair of companding functions for . /// Used for conversion to and backwards. - /// See also: + /// See also: /// internal interface ICompanding { diff --git a/src/ImageSharp/ColorSpaces/IRgbWorkingSpace.cs b/src/ImageSharp/ColorSpaces/IRgbWorkingSpace.cs deleted file mode 100644 index 26c4ad6d4..000000000 --- a/src/ImageSharp/ColorSpaces/IRgbWorkingSpace.cs +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Six Labors and contributors. -// Licensed under the Apache License, Version 2.0. - -using System; -using SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSapce; - -namespace SixLabors.ImageSharp.ColorSpaces -{ - /// - /// Encasulates the RGB working color space - /// - internal interface IRgbWorkingSpace : IEquatable - { - /// - /// Gets the reference white of the color space. - /// - CieXyz WhitePoint { get; } - - /// - /// Gets the chromaticity coordinates of the primaries. - /// - RgbPrimariesChromaticityCoordinates ChromaticityCoordinates { get; } - - /// - /// Gets the companding function associated with the RGB color system. Used for conversion to XYZ and backwards. - /// - /// - /// - ICompanding Companding { get; } - } -} \ No newline at end of file diff --git a/src/ImageSharp/ColorSpaces/LinearRgb.cs b/src/ImageSharp/ColorSpaces/LinearRgb.cs index 312187c9d..aaf05e035 100644 --- a/src/ImageSharp/ColorSpaces/LinearRgb.cs +++ b/src/ImageSharp/ColorSpaces/LinearRgb.cs @@ -2,21 +2,21 @@ // Licensed under the Apache License, Version 2.0. using System; -using System.ComponentModel; using System.Numerics; using System.Runtime.CompilerServices; +using SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSapce; namespace SixLabors.ImageSharp.ColorSpaces { /// - /// Represents an linear Rgb color with specified working space + /// Represents an linear Rgb color with specified working space /// internal readonly struct LinearRgb : IColorVector, IEquatable, IAlmostEquatable { /// /// The default LinearRgb working space. /// - public static readonly IRgbWorkingSpace DefaultWorkingSpace = RgbWorkingSpaces.SRgb; + public static readonly RgbWorkingSpace DefaultWorkingSpace = RgbWorkingSpaces.SRgb; /// /// The backing vector for SIMD support. @@ -43,7 +43,7 @@ namespace SixLabors.ImageSharp.ColorSpaces /// The blue component ranging between 0 and 1. /// The rgb working space. [MethodImpl(MethodImplOptions.AggressiveInlining)] - public LinearRgb(float r, float g, float b, IRgbWorkingSpace workingSpace) + public LinearRgb(float r, float g, float b, RgbWorkingSpace workingSpace) : this(new Vector3(r, g, b), workingSpace) { } @@ -64,7 +64,7 @@ namespace SixLabors.ImageSharp.ColorSpaces /// The vector representing the r, g, b components. /// The LinearRgb working space. [MethodImpl(MethodImplOptions.AggressiveInlining)] - public LinearRgb(Vector3 vector, IRgbWorkingSpace workingSpace) + public LinearRgb(Vector3 vector, RgbWorkingSpace workingSpace) : this() { // Clamp to 0-1 range. @@ -105,7 +105,7 @@ namespace SixLabors.ImageSharp.ColorSpaces /// /// Gets the LinearRgb color space /// - public IRgbWorkingSpace WorkingSpace { get; } + public RgbWorkingSpace WorkingSpace { get; } /// public Vector3 Vector => this.backingVector; diff --git a/src/ImageSharp/ColorSpaces/Rgb.cs b/src/ImageSharp/ColorSpaces/Rgb.cs index 777e1f4c1..ccfa1760f 100644 --- a/src/ImageSharp/ColorSpaces/Rgb.cs +++ b/src/ImageSharp/ColorSpaces/Rgb.cs @@ -2,23 +2,22 @@ // Licensed under the Apache License, Version 2.0. using System; -using System.ComponentModel; using System.Numerics; using System.Runtime.CompilerServices; - +using SixLabors.ImageSharp.ColorSpaces.Conversion.Implementation.RgbColorSapce; using SixLabors.ImageSharp.PixelFormats; namespace SixLabors.ImageSharp.ColorSpaces { /// - /// Represents an RGB color with specified working space + /// Represents an RGB color with specified working space /// internal readonly struct Rgb : IColorVector, IEquatable, IAlmostEquatable { /// /// The default rgb working space /// - public static readonly IRgbWorkingSpace DefaultWorkingSpace = RgbWorkingSpaces.SRgb; + public static readonly RgbWorkingSpace DefaultWorkingSpace = RgbWorkingSpaces.SRgb; /// /// The backing vector for SIMD support. @@ -45,7 +44,7 @@ namespace SixLabors.ImageSharp.ColorSpaces /// The blue component ranging between 0 and 1. /// The rgb working space. [MethodImpl(MethodImplOptions.AggressiveInlining)] - public Rgb(float r, float g, float b, IRgbWorkingSpace workingSpace) + public Rgb(float r, float g, float b, RgbWorkingSpace workingSpace) : this(new Vector3(r, g, b), workingSpace) { } @@ -66,7 +65,7 @@ namespace SixLabors.ImageSharp.ColorSpaces /// The vector representing the r, g, b components. /// The rgb working space. [MethodImpl(MethodImplOptions.AggressiveInlining)] - public Rgb(Vector3 vector, IRgbWorkingSpace workingSpace) + public Rgb(Vector3 vector, RgbWorkingSpace workingSpace) : this() { // Clamp to 0-1 range. @@ -107,7 +106,7 @@ namespace SixLabors.ImageSharp.ColorSpaces /// /// Gets the Rgb color space /// - public IRgbWorkingSpace WorkingSpace { get; } + public RgbWorkingSpace WorkingSpace { get; } /// public Vector3 Vector => this.backingVector; diff --git a/src/ImageSharp/Common/Constants.cs b/src/ImageSharp/Common/Constants.cs index b7cfddcb6..a8a693fa6 100644 --- a/src/ImageSharp/Common/Constants.cs +++ b/src/ImageSharp/Common/Constants.cs @@ -18,4 +18,4 @@ namespace SixLabors.ImageSharp /// public static readonly float EpsilonSquared = Epsilon * Epsilon; } -} +} \ No newline at end of file diff --git a/src/ImageSharp/Common/Extensions/Vector4Extensions.cs b/src/ImageSharp/Common/Extensions/Vector4Extensions.cs index 88712a736..b88c229c5 100644 --- a/src/ImageSharp/Common/Extensions/Vector4Extensions.cs +++ b/src/ImageSharp/Common/Extensions/Vector4Extensions.cs @@ -110,4 +110,4 @@ namespace SixLabors.ImageSharp return MathF.Pow((signal + 0.055F) / 1.055F, 2.4F); } } -} +} \ No newline at end of file diff --git a/src/ImageSharp/Formats/Bmp/IBmpEncoderOptions.cs b/src/ImageSharp/Formats/Bmp/IBmpEncoderOptions.cs index 0bfd6980b..56952f035 100644 --- a/src/ImageSharp/Formats/Bmp/IBmpEncoderOptions.cs +++ b/src/ImageSharp/Formats/Bmp/IBmpEncoderOptions.cs @@ -14,4 +14,4 @@ namespace SixLabors.ImageSharp.Formats.Bmp /// BmpBitsPerPixel BitsPerPixel { get; } } -} +} \ No newline at end of file diff --git a/src/ImageSharp/Formats/Gif/DisposalMethod.cs b/src/ImageSharp/Formats/Gif/DisposalMethod.cs index 5371fc0fa..5d3e1b4d8 100644 --- a/src/ImageSharp/Formats/Gif/DisposalMethod.cs +++ b/src/ImageSharp/Formats/Gif/DisposalMethod.cs @@ -35,4 +35,4 @@ namespace SixLabors.ImageSharp.Formats.Gif /// RestoreToPrevious = 3 } -} +} \ No newline at end of file diff --git a/src/ImageSharp/IConfigurationModule.cs b/src/ImageSharp/IConfigurationModule.cs index 93c40497d..3ca8ed918 100644 --- a/src/ImageSharp/IConfigurationModule.cs +++ b/src/ImageSharp/IConfigurationModule.cs @@ -14,4 +14,4 @@ namespace SixLabors.ImageSharp /// The configuration that will retain the encoders, decodes and mime type detectors. void Configure(Configuration configuration); } -} +} \ No newline at end of file diff --git a/src/ImageSharp/ImageFrame{TPixel}.cs b/src/ImageSharp/ImageFrame{TPixel}.cs index bd86b7dee..93e888cca 100644 --- a/src/ImageSharp/ImageFrame{TPixel}.cs +++ b/src/ImageSharp/ImageFrame{TPixel}.cs @@ -174,16 +174,10 @@ namespace SixLabors.ImageSharp public TPixel this[int x, int y] { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get - { - return this.PixelBuffer[x, y]; - } + get => this.PixelBuffer[x, y]; [MethodImpl(MethodImplOptions.AggressiveInlining)] - set - { - this.PixelBuffer[x, y] = value; - } + set => this.PixelBuffer[x, y] = value; } /// diff --git a/src/ImageSharp/ImageInfoExtensions.cs b/src/ImageSharp/ImageInfoExtensions.cs index 0f2b2ba97..dca5502d0 100644 --- a/src/ImageSharp/ImageInfoExtensions.cs +++ b/src/ImageSharp/ImageInfoExtensions.cs @@ -24,4 +24,4 @@ namespace SixLabors.ImageSharp /// The public static Rectangle Bounds(this IImageInfo info) => new Rectangle(0, 0, info.Width, info.Height); } -} +} \ No newline at end of file diff --git a/src/ImageSharp/Memory/ArrayPoolMemoryAllocator.cs b/src/ImageSharp/Memory/ArrayPoolMemoryAllocator.cs index 90950d4b3..f1c4c49c3 100644 --- a/src/ImageSharp/Memory/ArrayPoolMemoryAllocator.cs +++ b/src/ImageSharp/Memory/ArrayPoolMemoryAllocator.cs @@ -9,7 +9,7 @@ namespace SixLabors.Memory /// /// Implements by allocating memory from . /// - public partial class ArrayPoolMemoryAllocator : MemoryAllocator + public sealed partial class ArrayPoolMemoryAllocator : MemoryAllocator { /// /// The for small-to-medium buffers which is not kept clean. diff --git a/src/ImageSharp/Memory/BasicByteBuffer.cs b/src/ImageSharp/Memory/BasicByteBuffer.cs index a8a30b1aa..9f995e347 100644 --- a/src/ImageSharp/Memory/BasicByteBuffer.cs +++ b/src/ImageSharp/Memory/BasicByteBuffer.cs @@ -3,7 +3,7 @@ namespace SixLabors.Memory { - internal class BasicByteBuffer : BasicArrayBuffer, IManagedByteBuffer + internal sealed class BasicByteBuffer : BasicArrayBuffer, IManagedByteBuffer { internal BasicByteBuffer(byte[] array) : base(array) diff --git a/src/ImageSharp/Memory/Buffer2D{T}.cs b/src/ImageSharp/Memory/Buffer2D{T}.cs index f8d75b54c..b76c06df8 100644 --- a/src/ImageSharp/Memory/Buffer2D{T}.cs +++ b/src/ImageSharp/Memory/Buffer2D{T}.cs @@ -12,7 +12,7 @@ namespace SixLabors.Memory /// interpreted as a 2D region of x elements. /// /// The value type. - internal class Buffer2D : IDisposable + internal sealed class Buffer2D : IDisposable where T : struct { /// diff --git a/src/ImageSharp/Memory/ManagedBufferBase.cs b/src/ImageSharp/Memory/ManagedBufferBase.cs index 606d1c962..8de2f5392 100644 --- a/src/ImageSharp/Memory/ManagedBufferBase.cs +++ b/src/ImageSharp/Memory/ManagedBufferBase.cs @@ -9,7 +9,7 @@ namespace SixLabors.Memory /// /// Provides a base class for implementations by implementing pinning logic for adaption. /// - internal abstract class ManagedBufferBase : System.Buffers.MemoryManager, IBuffer + internal abstract class ManagedBufferBase : MemoryManager, IBuffer where T : struct { private GCHandle pinHandle; diff --git a/src/ImageSharp/Memory/SimpleGcMemoryAllocator.cs b/src/ImageSharp/Memory/SimpleGcMemoryAllocator.cs index 2d339f4c7..df69cec6e 100644 --- a/src/ImageSharp/Memory/SimpleGcMemoryAllocator.cs +++ b/src/ImageSharp/Memory/SimpleGcMemoryAllocator.cs @@ -3,7 +3,7 @@ /// /// Implements by newing up arrays by the GC on every allocation requests. /// - public class SimpleGcMemoryAllocator : MemoryAllocator + public sealed class SimpleGcMemoryAllocator : MemoryAllocator { /// internal override IBuffer Allocate(int length, bool clear) @@ -16,4 +16,4 @@ return new BasicByteBuffer(new byte[length]); } } -} +} \ No newline at end of file diff --git a/src/ImageSharp/MetaData/ImageFrameMetaData.cs b/src/ImageSharp/MetaData/ImageFrameMetaData.cs index d507a5b3e..47a2fb775 100644 --- a/src/ImageSharp/MetaData/ImageFrameMetaData.cs +++ b/src/ImageSharp/MetaData/ImageFrameMetaData.cs @@ -56,4 +56,4 @@ namespace SixLabors.ImageSharp.MetaData return new ImageFrameMetaData(this); } } -} +} \ No newline at end of file diff --git a/src/ImageSharp/MetaData/ImageProperty.cs b/src/ImageSharp/MetaData/ImageProperty.cs index 3e0cccd42..a08a95fed 100644 --- a/src/ImageSharp/MetaData/ImageProperty.cs +++ b/src/ImageSharp/MetaData/ImageProperty.cs @@ -136,4 +136,4 @@ namespace SixLabors.ImageSharp.MetaData return this.Name.Equals(other.Name) && Equals(this.Value, other.Value); } } -} +} \ No newline at end of file diff --git a/src/ImageSharp/MetaData/Profiles/Exif/ExifValue.cs b/src/ImageSharp/MetaData/Profiles/Exif/ExifValue.cs index d475959c6..87e3e4494 100644 --- a/src/ImageSharp/MetaData/Profiles/Exif/ExifValue.cs +++ b/src/ImageSharp/MetaData/Profiles/Exif/ExifValue.cs @@ -147,12 +147,7 @@ namespace SixLabors.ImageSharp.MetaData.Profiles.Exif /// public static bool operator ==(ExifValue left, ExifValue right) { - if (ReferenceEquals(left, right)) - { - return true; - } - - return left.Equals(right); + return ReferenceEquals(left, right) || left.Equals(right); } /// diff --git a/src/ImageSharp/MetaData/Profiles/ICC/DataReader/IccDataReader.cs b/src/ImageSharp/MetaData/Profiles/ICC/DataReader/IccDataReader.cs index d6df9e666..49b453a46 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/DataReader/IccDataReader.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/DataReader/IccDataReader.cs @@ -35,10 +35,7 @@ namespace SixLabors.ImageSharp.MetaData.Profiles.Icc /// /// Gets the length in bytes of the raw data /// - public int DataLength - { - get { return this.data.Length; } - } + public int DataLength => this.data.Length; /// /// Sets the reading position to the given value diff --git a/src/ImageSharp/MetaData/Profiles/ICC/IccReader.cs b/src/ImageSharp/MetaData/Profiles/ICC/IccReader.cs index f6ed9325a..da47b565e 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/IccReader.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/IccReader.cs @@ -146,4 +146,4 @@ namespace SixLabors.ImageSharp.MetaData.Profiles.Icc return table.ToArray(); } } -} +} \ No newline at end of file diff --git a/src/ImageSharp/MetaData/Profiles/ICC/IccWriter.cs b/src/ImageSharp/MetaData/Profiles/ICC/IccWriter.cs index d7221e8cf..c42e32d55 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/IccWriter.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/IccWriter.cs @@ -93,4 +93,4 @@ namespace SixLabors.ImageSharp.MetaData.Profiles.Icc return table.ToArray(); } } -} +} \ No newline at end of file diff --git a/tests/ImageSharp.Benchmarks/ImageSharp.Benchmarks.csproj b/tests/ImageSharp.Benchmarks/ImageSharp.Benchmarks.csproj index 67faa7213..3f67f175f 100644 --- a/tests/ImageSharp.Benchmarks/ImageSharp.Benchmarks.csproj +++ b/tests/ImageSharp.Benchmarks/ImageSharp.Benchmarks.csproj @@ -17,7 +17,7 @@ - + diff --git a/tests/ImageSharp.Tests/TestUtilities/ApproximateFloatComparer.cs b/tests/ImageSharp.Tests/TestUtilities/ApproximateFloatComparer.cs index 24363173a..102a629be 100644 --- a/tests/ImageSharp.Tests/TestUtilities/ApproximateFloatComparer.cs +++ b/tests/ImageSharp.Tests/TestUtilities/ApproximateFloatComparer.cs @@ -15,7 +15,7 @@ namespace SixLabors.ImageSharp.Tests IEqualityComparer, IEqualityComparer, IEqualityComparer, - IEqualityComparer + IEqualityComparer { private readonly float Eps; @@ -76,9 +76,9 @@ namespace SixLabors.ImageSharp.Tests throw new NotImplementedException(); } - public bool Equals(IRgbWorkingSpace x, IRgbWorkingSpace y) + public bool Equals(RgbWorkingSpace x, RgbWorkingSpace y) { - if (x is IRgbWorkingSpace g1 && y is IRgbWorkingSpace g2) + if (x is RgbWorkingSpace g1 && y is RgbWorkingSpace g2) { return this.Equals(g1.WhitePoint, g2.WhitePoint) && this.Equals(g1.ChromaticityCoordinates, g2.ChromaticityCoordinates); @@ -88,7 +88,7 @@ namespace SixLabors.ImageSharp.Tests && this.Equals(x.ChromaticityCoordinates, y.ChromaticityCoordinates); } - public int GetHashCode(IRgbWorkingSpace obj) + public int GetHashCode(RgbWorkingSpace obj) { throw new NotImplementedException(); }