From ba95ee54abf4905d38f3563881a1643f102993b3 Mon Sep 17 00:00:00 2001 From: gdkchan Date: Tue, 21 Mar 2023 20:14:46 -0300 Subject: Revert "Use source generated json serializers in order to improve code trimming (#4094)" (#4576) This reverts commit 4ce4299ca2a6b11332f2341c69f40efd7205282f. --- Ryujinx.Common/Configuration/AspectRatioExtensions.cs | 6 +----- Ryujinx.Common/Configuration/BackendThreading.cs | 6 +----- .../DownloadableContentJsonSerializerContext.cs | 11 ----------- Ryujinx.Common/Configuration/GraphicsBackend.cs | 6 +----- Ryujinx.Common/Configuration/GraphicsDebugLevel.cs | 4 ---- .../Motion/JsonMotionConfigControllerConverter.cs | 13 +++++-------- .../Hid/Controller/Motion/MotionConfigController.cs | 5 +---- .../Controller/Motion/MotionConfigJsonSerializerContext.cs | 12 ------------ .../Hid/Controller/Motion/MotionInputBackendType.cs | 6 +----- Ryujinx.Common/Configuration/Hid/ControllerType.cs | 5 +---- Ryujinx.Common/Configuration/Hid/InputBackendType.cs | 6 +----- Ryujinx.Common/Configuration/Hid/InputConfig.cs | 2 -- .../Configuration/Hid/InputConfigJsonSerializerContext.cs | 14 -------------- .../Configuration/Hid/JsonInputConfigConverter.cs | 13 +++++-------- Ryujinx.Common/Configuration/Hid/PlayerIndex.cs | 4 ---- Ryujinx.Common/Configuration/MemoryManagerMode.cs | 6 +----- .../TitleUpdateMetadataJsonSerializerContext.cs | 10 ---------- 17 files changed, 18 insertions(+), 111 deletions(-) delete mode 100644 Ryujinx.Common/Configuration/DownloadableContentJsonSerializerContext.cs delete mode 100644 Ryujinx.Common/Configuration/Hid/Controller/Motion/MotionConfigJsonSerializerContext.cs delete mode 100644 Ryujinx.Common/Configuration/Hid/InputConfigJsonSerializerContext.cs delete mode 100644 Ryujinx.Common/Configuration/TitleUpdateMetadataJsonSerializerContext.cs (limited to 'Ryujinx.Common/Configuration') diff --git a/Ryujinx.Common/Configuration/AspectRatioExtensions.cs b/Ryujinx.Common/Configuration/AspectRatioExtensions.cs index 5e97ed19..3d0be88e 100644 --- a/Ryujinx.Common/Configuration/AspectRatioExtensions.cs +++ b/Ryujinx.Common/Configuration/AspectRatioExtensions.cs @@ -1,9 +1,5 @@ -using Ryujinx.Common.Utilities; -using System.Text.Json.Serialization; - -namespace Ryujinx.Common.Configuration +namespace Ryujinx.Common.Configuration { - [JsonConverter(typeof(TypedStringEnumConverter))] public enum AspectRatio { Fixed4x3, diff --git a/Ryujinx.Common/Configuration/BackendThreading.cs b/Ryujinx.Common/Configuration/BackendThreading.cs index 8833b3f0..cfc08914 100644 --- a/Ryujinx.Common/Configuration/BackendThreading.cs +++ b/Ryujinx.Common/Configuration/BackendThreading.cs @@ -1,9 +1,5 @@ -using Ryujinx.Common.Utilities; -using System.Text.Json.Serialization; - -namespace Ryujinx.Common.Configuration +namespace Ryujinx.Common.Configuration { - [JsonConverter(typeof(TypedStringEnumConverter))] public enum BackendThreading { Auto, diff --git a/Ryujinx.Common/Configuration/DownloadableContentJsonSerializerContext.cs b/Ryujinx.Common/Configuration/DownloadableContentJsonSerializerContext.cs deleted file mode 100644 index 132c45a4..00000000 --- a/Ryujinx.Common/Configuration/DownloadableContentJsonSerializerContext.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System.Collections.Generic; -using System.Text.Json.Serialization; - -namespace Ryujinx.Common.Configuration -{ - [JsonSourceGenerationOptions(WriteIndented = true)] - [JsonSerializable(typeof(List))] - public partial class DownloadableContentJsonSerializerContext : JsonSerializerContext - { - } -} \ No newline at end of file diff --git a/Ryujinx.Common/Configuration/GraphicsBackend.cs b/Ryujinx.Common/Configuration/GraphicsBackend.cs index d74dd6e1..26e4a28a 100644 --- a/Ryujinx.Common/Configuration/GraphicsBackend.cs +++ b/Ryujinx.Common/Configuration/GraphicsBackend.cs @@ -1,9 +1,5 @@ -using Ryujinx.Common.Utilities; -using System.Text.Json.Serialization; - -namespace Ryujinx.Common.Configuration +namespace Ryujinx.Common.Configuration { - [JsonConverter(typeof(TypedStringEnumConverter))] public enum GraphicsBackend { Vulkan, diff --git a/Ryujinx.Common/Configuration/GraphicsDebugLevel.cs b/Ryujinx.Common/Configuration/GraphicsDebugLevel.cs index ad12302a..556af689 100644 --- a/Ryujinx.Common/Configuration/GraphicsDebugLevel.cs +++ b/Ryujinx.Common/Configuration/GraphicsDebugLevel.cs @@ -1,9 +1,5 @@ -using Ryujinx.Common.Utilities; -using System.Text.Json.Serialization; - namespace Ryujinx.Common.Configuration { - [JsonConverter(typeof(TypedStringEnumConverter))] public enum GraphicsDebugLevel { None, diff --git a/Ryujinx.Common/Configuration/Hid/Controller/Motion/JsonMotionConfigControllerConverter.cs b/Ryujinx.Common/Configuration/Hid/Controller/Motion/JsonMotionConfigControllerConverter.cs index 2b9e0af4..d1c2e4e8 100644 --- a/Ryujinx.Common/Configuration/Hid/Controller/Motion/JsonMotionConfigControllerConverter.cs +++ b/Ryujinx.Common/Configuration/Hid/Controller/Motion/JsonMotionConfigControllerConverter.cs @@ -1,5 +1,4 @@ -using Ryujinx.Common.Utilities; -using System; +using System; using System.Text.Json; using System.Text.Json.Serialization; @@ -7,8 +6,6 @@ namespace Ryujinx.Common.Configuration.Hid.Controller.Motion { class JsonMotionConfigControllerConverter : JsonConverter { - private static readonly MotionConfigJsonSerializerContext SerializerContext = new(JsonHelper.GetDefaultSerializerOptions()); - private static MotionInputBackendType GetMotionInputBackendType(ref Utf8JsonReader reader) { // Temporary reader to get the backend type @@ -55,8 +52,8 @@ namespace Ryujinx.Common.Configuration.Hid.Controller.Motion return motionBackendType switch { - MotionInputBackendType.GamepadDriver => JsonSerializer.Deserialize(ref reader, SerializerContext.StandardMotionConfigController), - MotionInputBackendType.CemuHook => JsonSerializer.Deserialize(ref reader, SerializerContext.CemuHookMotionConfigController), + MotionInputBackendType.GamepadDriver => (MotionConfigController)JsonSerializer.Deserialize(ref reader, typeof(StandardMotionConfigController), options), + MotionInputBackendType.CemuHook => (MotionConfigController)JsonSerializer.Deserialize(ref reader, typeof(CemuHookMotionConfigController), options), _ => throw new InvalidOperationException($"Unknown backend type {motionBackendType}"), }; } @@ -66,10 +63,10 @@ namespace Ryujinx.Common.Configuration.Hid.Controller.Motion switch (value.MotionBackend) { case MotionInputBackendType.GamepadDriver: - JsonSerializer.Serialize(writer, value as StandardMotionConfigController, SerializerContext.StandardMotionConfigController); + JsonSerializer.Serialize(writer, value as StandardMotionConfigController, options); break; case MotionInputBackendType.CemuHook: - JsonSerializer.Serialize(writer, value as CemuHookMotionConfigController, SerializerContext.CemuHookMotionConfigController); + JsonSerializer.Serialize(writer, value as CemuHookMotionConfigController, options); break; default: throw new ArgumentException($"Unknown motion backend type {value.MotionBackend}"); diff --git a/Ryujinx.Common/Configuration/Hid/Controller/Motion/MotionConfigController.cs b/Ryujinx.Common/Configuration/Hid/Controller/Motion/MotionConfigController.cs index 7636aa41..832aae0d 100644 --- a/Ryujinx.Common/Configuration/Hid/Controller/Motion/MotionConfigController.cs +++ b/Ryujinx.Common/Configuration/Hid/Controller/Motion/MotionConfigController.cs @@ -1,8 +1,5 @@ -using System.Text.Json.Serialization; - -namespace Ryujinx.Common.Configuration.Hid.Controller.Motion +namespace Ryujinx.Common.Configuration.Hid.Controller.Motion { - [JsonConverter(typeof(JsonMotionConfigControllerConverter))] public class MotionConfigController { public MotionInputBackendType MotionBackend { get; set; } diff --git a/Ryujinx.Common/Configuration/Hid/Controller/Motion/MotionConfigJsonSerializerContext.cs b/Ryujinx.Common/Configuration/Hid/Controller/Motion/MotionConfigJsonSerializerContext.cs deleted file mode 100644 index 5cd9e452..00000000 --- a/Ryujinx.Common/Configuration/Hid/Controller/Motion/MotionConfigJsonSerializerContext.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Text.Json.Serialization; - -namespace Ryujinx.Common.Configuration.Hid.Controller.Motion -{ - [JsonSourceGenerationOptions(WriteIndented = true)] - [JsonSerializable(typeof(MotionConfigController))] - [JsonSerializable(typeof(CemuHookMotionConfigController))] - [JsonSerializable(typeof(StandardMotionConfigController))] - public partial class MotionConfigJsonSerializerContext : JsonSerializerContext - { - } -} \ No newline at end of file diff --git a/Ryujinx.Common/Configuration/Hid/Controller/Motion/MotionInputBackendType.cs b/Ryujinx.Common/Configuration/Hid/Controller/Motion/MotionInputBackendType.cs index c6551047..45d654ed 100644 --- a/Ryujinx.Common/Configuration/Hid/Controller/Motion/MotionInputBackendType.cs +++ b/Ryujinx.Common/Configuration/Hid/Controller/Motion/MotionInputBackendType.cs @@ -1,9 +1,5 @@ -using Ryujinx.Common.Utilities; -using System.Text.Json.Serialization; - -namespace Ryujinx.Common.Configuration.Hid.Controller.Motion +namespace Ryujinx.Common.Configuration.Hid.Controller.Motion { - [JsonConverter(typeof(TypedStringEnumConverter))] public enum MotionInputBackendType : byte { Invalid, diff --git a/Ryujinx.Common/Configuration/Hid/ControllerType.cs b/Ryujinx.Common/Configuration/Hid/ControllerType.cs index 70f811c8..0ad01bbb 100644 --- a/Ryujinx.Common/Configuration/Hid/ControllerType.cs +++ b/Ryujinx.Common/Configuration/Hid/ControllerType.cs @@ -1,12 +1,9 @@ -using Ryujinx.Common.Utilities; using System; -using System.Text.Json.Serialization; namespace Ryujinx.Common.Configuration.Hid { - // This enum was duplicated from Ryujinx.HLE.HOS.Services.Hid.PlayerIndex and should be kept identical [Flags] - [JsonConverter(typeof(TypedStringEnumConverter))] + // This enum was duplicated from Ryujinx.HLE.HOS.Services.Hid.PlayerIndex and should be kept identical public enum ControllerType : int { None, diff --git a/Ryujinx.Common/Configuration/Hid/InputBackendType.cs b/Ryujinx.Common/Configuration/Hid/InputBackendType.cs index 1db3f570..9e944f9e 100644 --- a/Ryujinx.Common/Configuration/Hid/InputBackendType.cs +++ b/Ryujinx.Common/Configuration/Hid/InputBackendType.cs @@ -1,9 +1,5 @@ -using Ryujinx.Common.Utilities; -using System.Text.Json.Serialization; - -namespace Ryujinx.Common.Configuration.Hid +namespace Ryujinx.Common.Configuration.Hid { - [JsonConverter(typeof(TypedStringEnumConverter))] public enum InputBackendType { Invalid, diff --git a/Ryujinx.Common/Configuration/Hid/InputConfig.cs b/Ryujinx.Common/Configuration/Hid/InputConfig.cs index 16c8f8e3..3364e35f 100644 --- a/Ryujinx.Common/Configuration/Hid/InputConfig.cs +++ b/Ryujinx.Common/Configuration/Hid/InputConfig.cs @@ -1,10 +1,8 @@ using System.ComponentModel; using System.Runtime.CompilerServices; -using System.Text.Json.Serialization; namespace Ryujinx.Common.Configuration.Hid { - [JsonConverter(typeof(JsonInputConfigConverter))] public class InputConfig : INotifyPropertyChanged { /// diff --git a/Ryujinx.Common/Configuration/Hid/InputConfigJsonSerializerContext.cs b/Ryujinx.Common/Configuration/Hid/InputConfigJsonSerializerContext.cs deleted file mode 100644 index 254c4feb..00000000 --- a/Ryujinx.Common/Configuration/Hid/InputConfigJsonSerializerContext.cs +++ /dev/null @@ -1,14 +0,0 @@ -using Ryujinx.Common.Configuration.Hid.Controller; -using Ryujinx.Common.Configuration.Hid.Keyboard; -using System.Text.Json.Serialization; - -namespace Ryujinx.Common.Configuration.Hid -{ - [JsonSourceGenerationOptions(WriteIndented = true)] - [JsonSerializable(typeof(InputConfig))] - [JsonSerializable(typeof(StandardKeyboardInputConfig))] - [JsonSerializable(typeof(StandardControllerInputConfig))] - public partial class InputConfigJsonSerializerContext : JsonSerializerContext - { - } -} \ No newline at end of file diff --git a/Ryujinx.Common/Configuration/Hid/JsonInputConfigConverter.cs b/Ryujinx.Common/Configuration/Hid/JsonInputConfigConverter.cs index 08bbcbf1..7223ad45 100644 --- a/Ryujinx.Common/Configuration/Hid/JsonInputConfigConverter.cs +++ b/Ryujinx.Common/Configuration/Hid/JsonInputConfigConverter.cs @@ -1,16 +1,13 @@ using Ryujinx.Common.Configuration.Hid.Controller; using Ryujinx.Common.Configuration.Hid.Keyboard; -using Ryujinx.Common.Utilities; using System; using System.Text.Json; using System.Text.Json.Serialization; namespace Ryujinx.Common.Configuration.Hid { - public class JsonInputConfigConverter : JsonConverter + class JsonInputConfigConverter : JsonConverter { - private static readonly InputConfigJsonSerializerContext SerializerContext = new(JsonHelper.GetDefaultSerializerOptions()); - private static InputBackendType GetInputBackendType(ref Utf8JsonReader reader) { // Temporary reader to get the backend type @@ -57,8 +54,8 @@ namespace Ryujinx.Common.Configuration.Hid return backendType switch { - InputBackendType.WindowKeyboard => JsonSerializer.Deserialize(ref reader, SerializerContext.StandardKeyboardInputConfig), - InputBackendType.GamepadSDL2 => JsonSerializer.Deserialize(ref reader, SerializerContext.StandardControllerInputConfig), + InputBackendType.WindowKeyboard => (InputConfig)JsonSerializer.Deserialize(ref reader, typeof(StandardKeyboardInputConfig), options), + InputBackendType.GamepadSDL2 => (InputConfig)JsonSerializer.Deserialize(ref reader, typeof(StandardControllerInputConfig), options), _ => throw new InvalidOperationException($"Unknown backend type {backendType}"), }; } @@ -68,10 +65,10 @@ namespace Ryujinx.Common.Configuration.Hid switch (value.Backend) { case InputBackendType.WindowKeyboard: - JsonSerializer.Serialize(writer, value as StandardKeyboardInputConfig, SerializerContext.StandardKeyboardInputConfig); + JsonSerializer.Serialize(writer, value as StandardKeyboardInputConfig, options); break; case InputBackendType.GamepadSDL2: - JsonSerializer.Serialize(writer, value as StandardControllerInputConfig, SerializerContext.StandardControllerInputConfig); + JsonSerializer.Serialize(writer, value as StandardControllerInputConfig, options); break; default: throw new ArgumentException($"Unknown backend type {value.Backend}"); diff --git a/Ryujinx.Common/Configuration/Hid/PlayerIndex.cs b/Ryujinx.Common/Configuration/Hid/PlayerIndex.cs index dd6495d4..2e34cb96 100644 --- a/Ryujinx.Common/Configuration/Hid/PlayerIndex.cs +++ b/Ryujinx.Common/Configuration/Hid/PlayerIndex.cs @@ -1,10 +1,6 @@ -using Ryujinx.Common.Utilities; -using System.Text.Json.Serialization; - namespace Ryujinx.Common.Configuration.Hid { // This enum was duplicated from Ryujinx.HLE.HOS.Services.Hid.PlayerIndex and should be kept identical - [JsonConverter(typeof(TypedStringEnumConverter))] public enum PlayerIndex : int { Player1 = 0, diff --git a/Ryujinx.Common/Configuration/MemoryManagerMode.cs b/Ryujinx.Common/Configuration/MemoryManagerMode.cs index f10fd6f1..ad6c2a34 100644 --- a/Ryujinx.Common/Configuration/MemoryManagerMode.cs +++ b/Ryujinx.Common/Configuration/MemoryManagerMode.cs @@ -1,9 +1,5 @@ -using Ryujinx.Common.Utilities; -using System.Text.Json.Serialization; - -namespace Ryujinx.Common.Configuration +namespace Ryujinx.Common.Configuration { - [JsonConverter(typeof(TypedStringEnumConverter))] public enum MemoryManagerMode : byte { SoftwarePageTable, diff --git a/Ryujinx.Common/Configuration/TitleUpdateMetadataJsonSerializerContext.cs b/Ryujinx.Common/Configuration/TitleUpdateMetadataJsonSerializerContext.cs deleted file mode 100644 index 5b661b87..00000000 --- a/Ryujinx.Common/Configuration/TitleUpdateMetadataJsonSerializerContext.cs +++ /dev/null @@ -1,10 +0,0 @@ -using System.Text.Json.Serialization; - -namespace Ryujinx.Common.Configuration -{ - [JsonSourceGenerationOptions(WriteIndented = true)] - [JsonSerializable(typeof(TitleUpdateMetadata))] - public partial class TitleUpdateMetadataJsonSerializerContext : JsonSerializerContext - { - } -} \ No newline at end of file -- cgit v1.2.3