aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Common/Logging/Formatters/DynamicObjectFormatter.cs
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2023-03-21 20:14:46 -0300
committerGitHub <noreply@github.com>2023-03-21 20:14:46 -0300
commitba95ee54abf4905d38f3563881a1643f102993b3 (patch)
tree4a17ec5f209e64e4944b7deceec5dbdf1e0d9dc3 /Ryujinx.Common/Logging/Formatters/DynamicObjectFormatter.cs
parent4ce4299ca2a6b11332f2341c69f40efd7205282f (diff)
Revert "Use source generated json serializers in order to improve code trimming (#4094)" (#4576)1.1.675
This reverts commit 4ce4299ca2a6b11332f2341c69f40efd7205282f.
Diffstat (limited to 'Ryujinx.Common/Logging/Formatters/DynamicObjectFormatter.cs')
-rw-r--r--Ryujinx.Common/Logging/Formatters/DynamicObjectFormatter.cs84
1 files changed, 0 insertions, 84 deletions
diff --git a/Ryujinx.Common/Logging/Formatters/DynamicObjectFormatter.cs b/Ryujinx.Common/Logging/Formatters/DynamicObjectFormatter.cs
deleted file mode 100644
index 5f15cc2a..00000000
--- a/Ryujinx.Common/Logging/Formatters/DynamicObjectFormatter.cs
+++ /dev/null
@@ -1,84 +0,0 @@
-#nullable enable
-using System;
-using System.Reflection;
-using System.Text;
-
-namespace Ryujinx.Common.Logging
-{
- internal class DynamicObjectFormatter
- {
- private static readonly ObjectPool<StringBuilder> StringBuilderPool = SharedPools.Default<StringBuilder>();
-
- public static string? Format(object? dynamicObject)
- {
- if (dynamicObject is null)
- {
- return null;
- }
-
- StringBuilder sb = StringBuilderPool.Allocate();
-
- try
- {
- Format(sb, dynamicObject);
-
- return sb.ToString();
- }
- finally
- {
- StringBuilderPool.Release(sb);
- }
- }
-
- public static void Format(StringBuilder sb, object? dynamicObject)
- {
- if (dynamicObject is null)
- {
- return;
- }
-
- PropertyInfo[] props = dynamicObject.GetType().GetProperties();
-
- sb.Append('{');
-
- foreach (var prop in props)
- {
- sb.Append(prop.Name);
- sb.Append(": ");
-
- if (typeof(Array).IsAssignableFrom(prop.PropertyType))
- {
- Array? array = (Array?) prop.GetValue(dynamicObject);
-
- if (array is not null)
- {
- foreach (var item in array)
- {
- sb.Append(item);
- sb.Append(", ");
- }
-
- if (array.Length > 0)
- {
- sb.Remove(sb.Length - 2, 2);
- }
- }
- }
- else
- {
- sb.Append(prop.GetValue(dynamicObject));
- }
-
- sb.Append(" ; ");
- }
-
- // We remove the final ';' from the string
- if (props.Length > 0)
- {
- sb.Remove(sb.Length - 3, 3);
- }
-
- sb.Append('}');
- }
- }
-} \ No newline at end of file