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.Texture/Region.cs | 2 +- Ryujinx.Graphics.Texture/Size.cs | 2 +- Ryujinx.Graphics.Texture/SizeInfo.cs | 2 +- Ryujinx.Graphics.Texture/Utils/BC7ModeInfo.cs | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) (limited to 'Ryujinx.Graphics.Texture') diff --git a/Ryujinx.Graphics.Texture/Region.cs b/Ryujinx.Graphics.Texture/Region.cs index a60951e3..e59888a0 100644 --- a/Ryujinx.Graphics.Texture/Region.cs +++ b/Ryujinx.Graphics.Texture/Region.cs @@ -1,6 +1,6 @@ namespace Ryujinx.Graphics.Texture { - public struct Region + public readonly struct Region { public int Offset { get; } public int Size { get; } diff --git a/Ryujinx.Graphics.Texture/Size.cs b/Ryujinx.Graphics.Texture/Size.cs index 35611b98..21c45b38 100644 --- a/Ryujinx.Graphics.Texture/Size.cs +++ b/Ryujinx.Graphics.Texture/Size.cs @@ -1,6 +1,6 @@ namespace Ryujinx.Graphics.Texture { - public struct Size + public readonly struct Size { public int Width { get; } public int Height { get; } diff --git a/Ryujinx.Graphics.Texture/SizeInfo.cs b/Ryujinx.Graphics.Texture/SizeInfo.cs index ed5379b3..eb573728 100644 --- a/Ryujinx.Graphics.Texture/SizeInfo.cs +++ b/Ryujinx.Graphics.Texture/SizeInfo.cs @@ -3,7 +3,7 @@ using System.Collections.Generic; namespace Ryujinx.Graphics.Texture { - public struct SizeInfo + public readonly struct SizeInfo { private readonly int[] _mipOffsets; diff --git a/Ryujinx.Graphics.Texture/Utils/BC7ModeInfo.cs b/Ryujinx.Graphics.Texture/Utils/BC7ModeInfo.cs index 749324bf..687df22c 100644 --- a/Ryujinx.Graphics.Texture/Utils/BC7ModeInfo.cs +++ b/Ryujinx.Graphics.Texture/Utils/BC7ModeInfo.cs @@ -1,6 +1,6 @@ namespace Ryujinx.Graphics.Texture.Utils { - struct BC7ModeInfo + readonly struct BC7ModeInfo { public readonly int SubsetCount; public readonly int PartitionBitCount; -- cgit v1.2.3