From 4da44e09cb2a32f69b4a6b47221117b78e4618dc Mon Sep 17 00:00:00 2001 From: Andrey Sukharev Date: Mon, 5 Dec 2022 16:47:39 +0300 Subject: Make structs readonly when applicable (#4002) * Make all structs readonly when applicable. It should reduce amount of needless defensive copies * Make structs with trivial boilerplate equality code record structs * Remove unnecessary readonly modifiers from TextureCreateInfo * Make BitMap structs readonly too --- Ryujinx.Graphics.GAL/ColorF.cs | 30 +----------------------------- 1 file changed, 1 insertion(+), 29 deletions(-) (limited to 'Ryujinx.Graphics.GAL/ColorF.cs') diff --git a/Ryujinx.Graphics.GAL/ColorF.cs b/Ryujinx.Graphics.GAL/ColorF.cs index b3002f8c..235f4229 100644 --- a/Ryujinx.Graphics.GAL/ColorF.cs +++ b/Ryujinx.Graphics.GAL/ColorF.cs @@ -1,32 +1,4 @@ -using System; - namespace Ryujinx.Graphics.GAL { - public struct ColorF : IEquatable - { - public float Red { get; } - public float Green { get; } - public float Blue { get; } - public float Alpha { get; } - - public ColorF(float red, float green, float blue, float alpha) - { - Red = red; - Green = green; - Blue = blue; - Alpha = alpha; - } - - public bool Equals(ColorF color) => Red == color.Red && - Green == color.Green && - Blue == color.Blue && - Alpha == color.Alpha; - - public override bool Equals(object obj) => (obj is ColorF color) && Equals(color); - - public override int GetHashCode() => HashCode.Combine(Red, Green, Blue, Alpha); - - public static bool operator ==(ColorF l, ColorF r) => l.Equals(r); - public static bool operator !=(ColorF l, ColorF r) => !l.Equals(r); - } + public readonly record struct ColorF(float Red, float Green, float Blue, float Alpha); } -- cgit v1.2.3