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
This commit is contained in:
Andrey Sukharev 2022-12-05 16:47:39 +03:00 committed by GitHub
parent ae13f0ab4d
commit 4da44e09cb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
133 changed files with 156 additions and 378 deletions

View file

@ -37,7 +37,7 @@ namespace Ryujinx.Graphics.Gpu.Shader.DiskCache
/// <summary>
/// Program validation entry.
/// </summary>
private struct ProgramEntry
private readonly struct ProgramEntry
{
/// <summary>
/// Cached shader program.
@ -90,7 +90,7 @@ namespace Ryujinx.Graphics.Gpu.Shader.DiskCache
/// <summary>
/// Translated shader compilation entry.
/// </summary>
private struct ProgramCompilation
private readonly struct ProgramCompilation
{
/// <summary>
/// Translated shader stages.
@ -143,7 +143,7 @@ namespace Ryujinx.Graphics.Gpu.Shader.DiskCache
/// <summary>
/// Program translation entry.
/// </summary>
private struct AsyncProgramTranslation
private readonly struct AsyncProgramTranslation
{
/// <summary>
/// Guest code for each active stage.