diff --git a/src/libraries/System.Text.Json/src/System.Text.Json.csproj b/src/libraries/System.Text.Json/src/System.Text.Json.csproj
index 063ef297276a19..66f909300bd4e4 100644
--- a/src/libraries/System.Text.Json/src/System.Text.Json.csproj
+++ b/src/libraries/System.Text.Json/src/System.Text.Json.csproj
@@ -16,16 +16,13 @@
enable
+
+ Common\System\Runtime\CompilerServices\PreserveDependencyAttribute.cs
+
+
+ Common\System\HexConverter.cs
+
-
-
-
-
-
-
-
-
-
@@ -34,16 +31,23 @@
-
+
+
+
+
+
+
+
+
+
-
@@ -51,64 +55,64 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
@@ -125,23 +129,23 @@
+
+
-
-
-
+
-
+
@@ -158,6 +162,8 @@
+
+
@@ -192,12 +198,23 @@
-
- Common\System\Runtime\CompilerServices\PreserveDependencyAttribute.cs
-
-
- Common\System\HexConverter.cs
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -235,21 +252,4 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonArrayConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ArrayConverter.cs
similarity index 95%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonArrayConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ArrayConverter.cs
index 4d3e2fc2cd9e98..9b9137a3488b93 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonArrayConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ArrayConverter.cs
@@ -11,8 +11,8 @@ namespace System.Text.Json.Serialization.Converters
///
/// Converter for System.Array.
///
- internal sealed class JsonArrayConverter
- : JsonIEnumerableDefaultConverter
+ internal sealed class ArrayConverter
+ : IEnumerableDefaultConverter
where TCollection: IEnumerable
{
internal override bool CanHaveIdMetadata => false;
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonConcurrentQueueOfTConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ConcurrentQueueOfTConverter.cs
similarity index 94%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonConcurrentQueueOfTConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ConcurrentQueueOfTConverter.cs
index 4a4a10e8e2e369..f6673fb23c580e 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonConcurrentQueueOfTConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ConcurrentQueueOfTConverter.cs
@@ -8,7 +8,8 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConcurrentQueueOfTConverter : JsonIEnumerableDefaultConverter
+ internal sealed class ConcurrentQueueOfTConverter
+ : IEnumerableDefaultConverter
where TCollection : ConcurrentQueue
{
protected override void Add(TElement value, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonConcurrentStackOfTConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ConcurrentStackOfTConverter.cs
similarity index 94%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonConcurrentStackOfTConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ConcurrentStackOfTConverter.cs
index 5321d8d7161460..c7b173dd158666 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonConcurrentStackOfTConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ConcurrentStackOfTConverter.cs
@@ -8,7 +8,8 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConcurrentStackOfTConverter : JsonIEnumerableDefaultConverter
+ internal sealed class ConcurrentStackOfTConverter
+ : IEnumerableDefaultConverter
where TCollection : ConcurrentStack
{
protected override void Add(TElement value, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonDictionaryDefaultConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/DictionaryDefaultConverter.cs
similarity index 99%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonDictionaryDefaultConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/DictionaryDefaultConverter.cs
index 62f64bfc8be1ad..863347b10bc2d7 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonDictionaryDefaultConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/DictionaryDefaultConverter.cs
@@ -9,7 +9,7 @@ namespace System.Text.Json.Serialization.Converters
///
/// Default base class implementation of JsonDictionaryConverter{TCollection} .
///
- internal abstract class JsonDictionaryDefaultConverter
+ internal abstract class DictionaryDefaultConverter
: JsonDictionaryConverter
{
///
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonDictionaryOfStringTValueConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/DictionaryOfStringTValueConverter.cs
similarity index 96%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonDictionaryOfStringTValueConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/DictionaryOfStringTValueConverter.cs
index ef539d201b9d6a..c4685eb74ab5d5 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonDictionaryOfStringTValueConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/DictionaryOfStringTValueConverter.cs
@@ -11,8 +11,8 @@ namespace System.Text.Json.Serialization.Converters
/// Converter for Dictionary{string, TValue} that (de)serializes as a JSON object with properties
/// representing the dictionary element key and value.
///
- internal sealed class JsonDictionaryOfStringTValueConverter
- : JsonDictionaryDefaultConverter
+ internal sealed class DictionaryOfStringTValueConverter
+ : DictionaryDefaultConverter
where TCollection : Dictionary
{
protected override void Add(TValue value, JsonSerializerOptions options, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonICollectionOfTConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ICollectionOfTConverter.cs
similarity index 96%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonICollectionOfTConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ICollectionOfTConverter.cs
index 7a63ae126bcd1b..67600151d0cc34 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonICollectionOfTConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ICollectionOfTConverter.cs
@@ -10,8 +10,8 @@ namespace System.Text.Json.Serialization.Converters
///
/// Converter for System.Collections.Generic.ICollection{TElement}.
///
- internal sealed class JsonICollectionOfTConverter
- : JsonIEnumerableDefaultConverter
+ internal sealed class ICollectionOfTConverter
+ : IEnumerableDefaultConverter
where TCollection : ICollection
{
protected override void Add(TElement value, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIDictionaryConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IDictionaryConverter.cs
similarity index 96%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIDictionaryConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IDictionaryConverter.cs
index 814e1b9cc62d78..5702bd2da362a7 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIDictionaryConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IDictionaryConverter.cs
@@ -12,8 +12,8 @@ namespace System.Text.Json.Serialization.Converters
/// Converter for System.Collections.IDictionary that (de)serializes as a JSON object with properties
/// representing the dictionary element key and value.
///
- internal sealed class JsonIDictionaryConverter
- : JsonDictionaryDefaultConverter
+ internal sealed class IDictionaryConverter
+ : DictionaryDefaultConverter
where TCollection : IDictionary
{
protected override void Add(object? value, JsonSerializerOptions options, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIDictionaryOfStringTValueConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IDictionaryOfStringTValueConverter.cs
similarity index 96%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIDictionaryOfStringTValueConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IDictionaryOfStringTValueConverter.cs
index 41e03f178d1fe4..fd912fa799b1d9 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIDictionaryOfStringTValueConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IDictionaryOfStringTValueConverter.cs
@@ -11,8 +11,8 @@ namespace System.Text.Json.Serialization.Converters
/// Converter for System.Collections.Generic.IDictionary{string, TValue} that
/// (de)serializes as a JSON object with properties representing the dictionary element key and value.
///
- internal sealed class JsonIDictionaryOfStringTValueConverter
- : JsonDictionaryDefaultConverter
+ internal sealed class IDictionaryOfStringTValueConverter
+ : DictionaryDefaultConverter
where TCollection : IDictionary
{
protected override void Add(TValue value, JsonSerializerOptions options, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableConverter.cs
similarity index 95%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableConverter.cs
index 2712385e03ec44..af72f48957ecd3 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableConverter.cs
@@ -12,8 +12,8 @@ namespace System.Text.Json.Serialization.Converters
/// Converter for System.Collections.IEnumerable.
///
///
- internal sealed class JsonIEnumerableConverter
- : JsonIEnumerableDefaultConverter
+ internal sealed class IEnumerableConverter
+ : IEnumerableDefaultConverter
where TCollection : IEnumerable
{
protected override void Add(object? value, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableConverterFactory.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableConverterFactory.cs
similarity index 77%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableConverterFactory.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableConverterFactory.cs
index 0081359d7165bc..3d1de1343519ae 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableConverterFactory.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableConverterFactory.cs
@@ -16,33 +16,33 @@ namespace System.Text.Json.Serialization.Converters
///
internal class JsonIEnumerableConverterFactory : JsonConverterFactory
{
- private static readonly JsonIDictionaryConverter s_converterForIDictionary = new JsonIDictionaryConverter();
- private static readonly JsonIEnumerableConverter s_converterForIEnumerable = new JsonIEnumerableConverter();
- private static readonly JsonIListConverter s_converterForIList = new JsonIListConverter();
+ private static readonly IDictionaryConverter s_converterForIDictionary = new IDictionaryConverter();
+ private static readonly IEnumerableConverter s_converterForIEnumerable = new IEnumerableConverter();
+ private static readonly IListConverter s_converterForIList = new IListConverter();
public override bool CanConvert(Type typeToConvert)
{
return typeof(IEnumerable).IsAssignableFrom(typeToConvert);
}
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonArrayConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonConcurrentQueueOfTConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonConcurrentStackOfTConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonDefaultArrayConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonDictionaryOfStringTValueConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonICollectionOfTConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonIDictionaryOfStringTValueConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonIEnumerableOfTConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonIEnumerableWithAddMethodConverter`1")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonIListConverter`1")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonIListOfTConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonImmutableDictionaryOfStringTValueConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonImmutableEnumerableOfTConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonIReadOnlyDictionaryOfStringTValueConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonISetOfTConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonListOfTConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonQueueOfTConverter`2")]
- [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.JsonStackOfTConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.ArrayConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.ConcurrentQueueOfTConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.ConcurrentStackOfTConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.DefaultArrayConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.DictionaryOfStringTValueConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.ICollectionOfTConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.IDictionaryOfStringTValueConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.IEnumerableOfTConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.IEnumerableWithAddMethodConverter`1")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.IListConverter`1")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.IListOfTConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.ImmutableDictionaryOfStringTValueConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.ImmutableEnumerableOfTConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.IReadOnlyDictionaryOfStringTValueConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.ISetOfTConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.ListOfTConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.QueueOfTConverter`2")]
+ [PreserveDependency(".ctor", "System.Text.Json.Serialization.Converters.StackOfTConverter`2")]
public override JsonConverter? CreateConverter(Type typeToConvert, JsonSerializerOptions options)
{
JsonConverter? converter = null;
@@ -60,13 +60,13 @@ public override bool CanConvert(Type typeToConvert)
return null;
}
- converterType = typeof(JsonArrayConverter<,>);
+ converterType = typeof(ArrayConverter<,>);
elementType = typeToConvert.GetElementType();
}
// List<> or deriving from List<>
else if ((actualTypeToConvert = typeToConvert.GetCompatibleGenericBaseClass(typeof(List<>))) != null)
{
- converterType = typeof(JsonListOfTConverter<,>);
+ converterType = typeof(ListOfTConverter<,>);
elementType = actualTypeToConvert.GetGenericArguments()[0];
}
// Dictionary or deriving from Dictionary
@@ -75,7 +75,7 @@ public override bool CanConvert(Type typeToConvert)
genericArgs = actualTypeToConvert.GetGenericArguments();
if (genericArgs[0] == typeof(string))
{
- converterType = typeof(JsonDictionaryOfStringTValueConverter<,>);
+ converterType = typeof(DictionaryOfStringTValueConverter<,>);
elementType = genericArgs[1];
}
else
@@ -89,7 +89,7 @@ public override bool CanConvert(Type typeToConvert)
genericArgs = typeToConvert.GetGenericArguments();
if (genericArgs[0] == typeof(string))
{
- converterType = typeof(JsonImmutableDictionaryOfStringTValueConverter<,>);
+ converterType = typeof(ImmutableDictionaryOfStringTValueConverter<,>);
elementType = genericArgs[1];
}
else
@@ -103,7 +103,7 @@ public override bool CanConvert(Type typeToConvert)
genericArgs = actualTypeToConvert.GetGenericArguments();
if (genericArgs[0] == typeof(string))
{
- converterType = typeof(JsonIDictionaryOfStringTValueConverter<,>);
+ converterType = typeof(IDictionaryOfStringTValueConverter<,>);
elementType = genericArgs[1];
}
else
@@ -117,7 +117,7 @@ public override bool CanConvert(Type typeToConvert)
genericArgs = actualTypeToConvert.GetGenericArguments();
if (genericArgs[0] == typeof(string))
{
- converterType = typeof(JsonIReadOnlyDictionaryOfStringTValueConverter<,>);
+ converterType = typeof(IReadOnlyDictionaryOfStringTValueConverter<,>);
elementType = genericArgs[1];
}
else
@@ -128,55 +128,55 @@ public override bool CanConvert(Type typeToConvert)
// Immutable non-dictionaries from System.Collections.Immutable, e.g. ImmutableStack
else if (typeToConvert.IsImmutableEnumerableType())
{
- converterType = typeof(JsonImmutableEnumerableOfTConverter<,>);
+ converterType = typeof(ImmutableEnumerableOfTConverter<,>);
elementType = typeToConvert.GetGenericArguments()[0];
}
// IList<>
else if ((actualTypeToConvert = typeToConvert.GetCompatibleGenericInterface(typeof(IList<>))) != null)
{
- converterType = typeof(JsonIListOfTConverter<,>);
+ converterType = typeof(IListOfTConverter<,>);
elementType = actualTypeToConvert.GetGenericArguments()[0];
}
// ISet<>
else if ((actualTypeToConvert = typeToConvert.GetCompatibleGenericInterface(typeof(ISet<>))) != null)
{
- converterType = typeof(JsonISetOfTConverter<,>);
+ converterType = typeof(ISetOfTConverter<,>);
elementType = actualTypeToConvert.GetGenericArguments()[0];
}
// ICollection<>
else if ((actualTypeToConvert = typeToConvert.GetCompatibleGenericInterface(typeof(ICollection<>))) != null)
{
- converterType = typeof(JsonICollectionOfTConverter<,>);
+ converterType = typeof(ICollectionOfTConverter<,>);
elementType = actualTypeToConvert.GetGenericArguments()[0];
}
// Stack<> or deriving from Stack<>
else if ((actualTypeToConvert = typeToConvert.GetCompatibleGenericBaseClass(typeof(Stack<>))) != null)
{
- converterType = typeof(JsonStackOfTConverter<,>);
+ converterType = typeof(StackOfTConverter<,>);
elementType = actualTypeToConvert.GetGenericArguments()[0];
}
// Queue<> or deriving from Queue<>
else if ((actualTypeToConvert = typeToConvert.GetCompatibleGenericBaseClass(typeof(Queue<>))) != null)
{
- converterType = typeof(JsonQueueOfTConverter<,>);
+ converterType = typeof(QueueOfTConverter<,>);
elementType = actualTypeToConvert.GetGenericArguments()[0];
}
// ConcurrentStack<> or deriving from ConcurrentStack<>
else if ((actualTypeToConvert = typeToConvert.GetCompatibleGenericBaseClass(typeof(ConcurrentStack<>))) != null)
{
- converterType = typeof(JsonConcurrentStackOfTConverter<,>);
+ converterType = typeof(ConcurrentStackOfTConverter<,>);
elementType = actualTypeToConvert.GetGenericArguments()[0];
}
// ConcurrentQueue<> or deriving from ConcurrentQueue<>
else if ((actualTypeToConvert = typeToConvert.GetCompatibleGenericBaseClass(typeof(ConcurrentQueue<>))) != null)
{
- converterType = typeof(JsonConcurrentQueueOfTConverter<,>);
+ converterType = typeof(ConcurrentQueueOfTConverter<,>);
elementType = actualTypeToConvert.GetGenericArguments()[0];
}
// IEnumerable<>, types assignable from List<>
else if ((actualTypeToConvert = typeToConvert.GetCompatibleGenericInterface(typeof(IEnumerable<>))) != null)
{
- converterType = typeof(JsonIEnumerableOfTConverter<,>);
+ converterType = typeof(IEnumerableOfTConverter<,>);
elementType = actualTypeToConvert.GetGenericArguments()[0];
}
// Check for non-generics after checking for generics.
@@ -187,7 +187,7 @@ public override bool CanConvert(Type typeToConvert)
return s_converterForIDictionary;
}
- converterType = typeof(JsonIDictionaryConverter<>);
+ converterType = typeof(IDictionaryConverter<>);
}
else if (typeof(IList).IsAssignableFrom(typeToConvert))
{
@@ -196,11 +196,11 @@ public override bool CanConvert(Type typeToConvert)
return s_converterForIList;
}
- converterType = typeof(JsonIListConverter<>);
+ converterType = typeof(IListConverter<>);
}
else if (typeToConvert.IsNonGenericStackOrQueue())
{
- converterType = typeof(JsonIEnumerableWithAddMethodConverter<>);
+ converterType = typeof(IEnumerableWithAddMethodConverter<>);
}
else
{
@@ -210,7 +210,7 @@ public override bool CanConvert(Type typeToConvert)
return s_converterForIEnumerable;
}
- converterType = typeof(JsonIEnumerableConverter<>);
+ converterType = typeof(IEnumerableConverter<>);
}
if (converterType != null)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/ExtensionMethods.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableConverterFactoryHelpers.cs
similarity index 99%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/ExtensionMethods.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableConverterFactoryHelpers.cs
index 67acf6a887e4d0..4bd548f9a747c2 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/ExtensionMethods.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableConverterFactoryHelpers.cs
@@ -2,13 +2,12 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
-using System.Buffers;
using System.Diagnostics;
using System.Reflection;
namespace System.Text.Json.Serialization
{
- internal static class ExtensionMethods
+ internal static class IEnumerableConverterFactoryHelpers
{
private const string ImmutableArrayTypeName = "System.Collections.Immutable.ImmutableArray";
private const string ImmutableArrayGenericTypeName = "System.Collections.Immutable.ImmutableArray`1";
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableDefaultConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableDefaultConverter.cs
similarity index 98%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableDefaultConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableDefaultConverter.cs
index b4911e45cbc656..f7d2a7311f5b89 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableDefaultConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableDefaultConverter.cs
@@ -9,7 +9,8 @@ namespace System.Text.Json.Serialization.Converters
///
/// Default base class implementation of JsonIEnumerableConverter{TCollection, TElement}.
///
- internal abstract class JsonIEnumerableDefaultConverter : JsonCollectionConverter
+ internal abstract class IEnumerableDefaultConverter
+ : JsonCollectionConverter
{
protected abstract void Add(TElement value, ref ReadStack state);
protected abstract void CreateCollection(ref ReadStack state, JsonSerializerOptions options);
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableOfTConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableOfTConverter.cs
similarity index 95%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableOfTConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableOfTConverter.cs
index d1f2269366f9c5..21045a86e10ddb 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableOfTConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableOfTConverter.cs
@@ -11,7 +11,8 @@ namespace System.Text.Json.Serialization.Converters
///
/// Converter for System.Collections.Generic.IEnumerable{TElement}.
///
- internal sealed class JsonIEnumerableOfTConverter : JsonIEnumerableDefaultConverter
+ internal sealed class IEnumerableOfTConverter
+ : IEnumerableDefaultConverter
where TCollection : IEnumerable
{
protected override void Add(TElement value, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableWithAddMethodConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableWithAddMethodConverter.cs
similarity index 95%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableWithAddMethodConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableWithAddMethodConverter.cs
index 55bd1b27352d49..ab11eca64f3203 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIEnumerableWithAddMethodConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IEnumerableWithAddMethodConverter.cs
@@ -7,8 +7,8 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonIEnumerableWithAddMethodConverter :
- JsonIEnumerableDefaultConverter
+ internal sealed class IEnumerableWithAddMethodConverter
+ : IEnumerableDefaultConverter
where TCollection : IEnumerable
{
protected override void Add(object? value, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIListConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IListConverter.cs
similarity index 96%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIListConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IListConverter.cs
index 71785fdc2a2f20..1e42de017fb676 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIListConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IListConverter.cs
@@ -9,7 +9,8 @@
namespace System.Text.Json.Serialization.Converters
{
/// Converter for System.Collections.IList.
- internal sealed class JsonIListConverter : JsonIEnumerableDefaultConverter
+ internal sealed class IListConverter
+ : IEnumerableDefaultConverter
where TCollection : IList
{
protected override void Add(object? value, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIListOfTConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IListOfTConverter.cs
similarity index 96%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIListOfTConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IListOfTConverter.cs
index f227857cbb265d..a682d0e0510bf5 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIListOfTConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IListOfTConverter.cs
@@ -10,7 +10,8 @@ namespace System.Text.Json.Serialization.Converters
///
/// Converter for System.Collections.Generic.IList{TElement}.
///
- internal sealed class JsonIListOfTConverter : JsonIEnumerableDefaultConverter
+ internal sealed class IListOfTConverter
+ : IEnumerableDefaultConverter
where TCollection : IList
{
protected override void Add(TElement value, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIReadOnlyDictionaryOfStringTValueConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IReadOnlyDictionaryOfStringTValueConverter.cs
similarity index 94%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIReadOnlyDictionaryOfStringTValueConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IReadOnlyDictionaryOfStringTValueConverter.cs
index 5dfcc36e064f5c..74b70802ea022c 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonIReadOnlyDictionaryOfStringTValueConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IReadOnlyDictionaryOfStringTValueConverter.cs
@@ -7,7 +7,8 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonIReadOnlyDictionaryOfStringTValueConverter : JsonDictionaryDefaultConverter
+ internal sealed class IReadOnlyDictionaryOfStringTValueConverter
+ : DictionaryDefaultConverter
where TCollection : IReadOnlyDictionary
{
protected override void Add(TValue value, JsonSerializerOptions options, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonISetOfTConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ISetOfTConverter.cs
similarity index 96%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonISetOfTConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ISetOfTConverter.cs
index eb9b79e00a210c..02b77ad099e008 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonISetOfTConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ISetOfTConverter.cs
@@ -7,7 +7,8 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonISetOfTConverter : JsonIEnumerableDefaultConverter
+ internal sealed class ISetOfTConverter
+ : IEnumerableDefaultConverter
where TCollection : ISet
{
protected override void Add(TElement value, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonImmutableDictionaryOfStringTValueConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ImmutableDictionaryOfStringTValueConverter.cs
similarity index 95%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonImmutableDictionaryOfStringTValueConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ImmutableDictionaryOfStringTValueConverter.cs
index 0e12a8e87f446e..145b304eb2b5bc 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonImmutableDictionaryOfStringTValueConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ImmutableDictionaryOfStringTValueConverter.cs
@@ -7,7 +7,8 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonImmutableDictionaryOfStringTValueConverter : JsonDictionaryDefaultConverter
+ internal sealed class ImmutableDictionaryOfStringTValueConverter
+ : DictionaryDefaultConverter
where TCollection : IReadOnlyDictionary
{
protected override void Add(TValue value, JsonSerializerOptions options, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonImmutableEnumerableOfTConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ImmutableEnumerableOfTConverter.cs
similarity index 95%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonImmutableEnumerableOfTConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ImmutableEnumerableOfTConverter.cs
index d3cd9bcd45512f..70438a939e1209 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonImmutableEnumerableOfTConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ImmutableEnumerableOfTConverter.cs
@@ -7,7 +7,8 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonImmutableEnumerableOfTConverter : JsonIEnumerableDefaultConverter
+ internal sealed class ImmutableEnumerableOfTConverter
+ : IEnumerableDefaultConverter
where TCollection : IEnumerable
{
protected override void Add(TElement value, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonListOfTConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ListOfTConverter.cs
similarity index 94%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonListOfTConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ListOfTConverter.cs
index 31c94131fb03ad..27f3df87d175e1 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonListOfTConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/ListOfTConverter.cs
@@ -8,8 +8,8 @@
namespace System.Text.Json.Serialization.Converters
{
/// Converter for System.Collections.Generic.List{TElement}.
- internal sealed class JsonListOfTConverter
- : JsonIEnumerableDefaultConverter
+ internal sealed class ListOfTConverter
+ : IEnumerableDefaultConverter
where TCollection: List
{
protected override void Add(TElement value, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonQueueOfTConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/QueueOfTConverter.cs
similarity index 94%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonQueueOfTConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/QueueOfTConverter.cs
index a0cc38d40abb21..64feb599be5523 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonQueueOfTConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/QueueOfTConverter.cs
@@ -7,7 +7,8 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonQueueOfTConverter : JsonIEnumerableDefaultConverter
+ internal sealed class QueueOfTConverter
+ : IEnumerableDefaultConverter
where TCollection : Queue
{
protected override void Add(TElement value, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonStackOfTConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/StackOfTConverter.cs
similarity index 94%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonStackOfTConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/StackOfTConverter.cs
index 31dac18efe1a2a..dc3502de0d4989 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonStackOfTConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/StackOfTConverter.cs
@@ -7,7 +7,8 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonStackOfTConverter : JsonIEnumerableDefaultConverter
+ internal sealed class StackOfTConverter
+ : IEnumerableDefaultConverter
where TCollection : Stack
{
protected override void Add(TElement value, ref ReadStack state)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonObjectConverterFactory.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Object/ObjectConverterFactory.cs
similarity index 88%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonObjectConverterFactory.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Object/ObjectConverterFactory.cs
index 00d267a7e01faa..431c6fd75d3d3a 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonObjectConverterFactory.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Object/ObjectConverterFactory.cs
@@ -11,7 +11,7 @@ namespace System.Text.Json.Serialization.Converters
///
/// Converter factory for all object-based types (non-enumerable and non-primitive).
///
- internal class JsonObjectConverterFactory : JsonConverterFactory
+ internal class ObjectConverterFactory : JsonConverterFactory
{
public override bool CanConvert(Type typeToConvert)
{
@@ -24,7 +24,7 @@ public override bool CanConvert(Type typeToConvert)
public override JsonConverter CreateConverter(Type typeToConvert, JsonSerializerOptions options)
{
JsonConverter converter = (JsonConverter)Activator.CreateInstance(
- typeof(JsonObjectDefaultConverter<>).MakeGenericType(typeToConvert),
+ typeof(ObjectDefaultConverter<>).MakeGenericType(typeToConvert),
BindingFlags.Instance | BindingFlags.Public,
binder: null,
args: null,
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonObjectDefaultConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Object/ObjectDefaultConverter.cs
similarity index 99%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonObjectDefaultConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Object/ObjectDefaultConverter.cs
index 49c701a3348d4e..a774e1dbe7e0d1 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonObjectDefaultConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Object/ObjectDefaultConverter.cs
@@ -9,7 +9,7 @@ namespace System.Text.Json.Serialization.Converters
///
/// Default base class implementation of JsonObjectConverter{T}.
///
- internal sealed class JsonObjectDefaultConverter : JsonObjectConverter
+ internal sealed class ObjectDefaultConverter : JsonObjectConverter
{
internal override bool OnTryRead(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options, ref ReadStack state, out T value)
{
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterBoolean.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/BooleanConverter.cs
similarity index 89%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterBoolean.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/BooleanConverter.cs
index 755f4a209e61df..04da6ed163fc5d 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterBoolean.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/BooleanConverter.cs
@@ -4,7 +4,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterBoolean : JsonConverter
+ internal sealed class BooleanConverter : JsonConverter
{
public override bool Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterByteArray.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/ByteArrayConverter.cs
similarity index 89%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterByteArray.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/ByteArrayConverter.cs
index df478133610050..76aaaf244c0b08 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterByteArray.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/ByteArrayConverter.cs
@@ -4,7 +4,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterByteArray : JsonConverter
+ internal sealed class ByteArrayConverter : JsonConverter
{
public override byte[] Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterByte.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/ByteConverter.cs
similarity index 90%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterByte.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/ByteConverter.cs
index b668fe41c237a4..38b8211ee36192 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterByte.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/ByteConverter.cs
@@ -4,7 +4,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterByte : JsonConverter
+ internal sealed class ByteConverter : JsonConverter
{
public override byte Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterChar.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/CharConverter.cs
similarity index 93%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterChar.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/CharConverter.cs
index f225ae40395f46..5b259892c4d9ce 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterChar.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/CharConverter.cs
@@ -6,7 +6,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterChar : JsonConverter
+ internal sealed class CharConverter : JsonConverter
{
public override char Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterDateTime.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/DateTimeConverter.cs
similarity index 89%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterDateTime.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/DateTimeConverter.cs
index cdd837f1ab8e6d..e5dbbd588271f1 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterDateTime.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/DateTimeConverter.cs
@@ -4,7 +4,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterDateTime : JsonConverter
+ internal sealed class DateTimeConverter : JsonConverter
{
public override DateTime Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterDateTimeOffset.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/DateTimeOffsetConverter.cs
similarity index 88%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterDateTimeOffset.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/DateTimeOffsetConverter.cs
index 268c164e907d11..927911cb7bd545 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterDateTimeOffset.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/DateTimeOffsetConverter.cs
@@ -4,7 +4,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterDateTimeOffset : JsonConverter
+ internal sealed class DateTimeOffsetConverter : JsonConverter
{
public override DateTimeOffset Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterDecimal.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/DecimalConverter.cs
similarity index 89%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterDecimal.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/DecimalConverter.cs
index f951e39211e7fd..326df60822c753 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterDecimal.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/DecimalConverter.cs
@@ -4,7 +4,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterDecimal : JsonConverter
+ internal sealed class DecimalConverter : JsonConverter
{
public override decimal Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterDouble.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/DoubleConverter.cs
similarity index 89%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterDouble.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/DoubleConverter.cs
index c53708d81e2cba..4a2acd60865c95 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterDouble.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/DoubleConverter.cs
@@ -4,7 +4,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterDouble : JsonConverter
+ internal sealed class DoubleConverter : JsonConverter
{
public override double Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterEnum.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/EnumConverter.cs
similarity index 97%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterEnum.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/EnumConverter.cs
index 65f6dbf1980daa..6adcca1ba8d15d 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterEnum.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/EnumConverter.cs
@@ -8,7 +8,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal class JsonConverterEnum : JsonConverter
+ internal class EnumConverter : JsonConverter
where T : struct, Enum
{
private static readonly TypeCode s_enumTypeCode = Type.GetTypeCode(typeof(T));
@@ -25,12 +25,12 @@ public override bool CanConvert(Type type)
return type.IsEnum;
}
- public JsonConverterEnum(EnumConverterOptions options)
+ public EnumConverter(EnumConverterOptions options)
: this(options, namingPolicy: null)
{
}
- public JsonConverterEnum(EnumConverterOptions options, JsonNamingPolicy? namingPolicy)
+ public EnumConverter(EnumConverterOptions options, JsonNamingPolicy? namingPolicy)
{
_converterOptions = options;
if (namingPolicy != null)
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonConverterEnum.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/EnumConverterFactory.cs
similarity index 80%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonConverterEnum.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/EnumConverterFactory.cs
index bbdd499ae62359..38ad9315e41d9d 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonConverterEnum.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/EnumConverterFactory.cs
@@ -7,9 +7,9 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterEnum : JsonConverterFactory
+ internal sealed class EnumConverterFactory : JsonConverterFactory
{
- public JsonConverterEnum()
+ public EnumConverterFactory()
{
}
@@ -20,11 +20,11 @@ public override bool CanConvert(Type type)
[PreserveDependency(
".ctor(System.Text.Json.Serialization.Converters.EnumConverterOptions)",
- "System.Text.Json.Serialization.Converters.JsonConverterEnum`1")]
+ "System.Text.Json.Serialization.Converters.EnumConverter`1")]
public override JsonConverter CreateConverter(Type type, JsonSerializerOptions options)
{
JsonConverter converter = (JsonConverter)Activator.CreateInstance(
- typeof(JsonConverterEnum<>).MakeGenericType(type),
+ typeof(EnumConverter<>).MakeGenericType(type),
BindingFlags.Instance | BindingFlags.Public,
binder: null,
new object[] { EnumConverterOptions.AllowNumbers },
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/EnumConverterOptions.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/EnumConverterOptions.cs
similarity index 100%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/EnumConverterOptions.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/EnumConverterOptions.cs
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterGuid.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/GuidConverter.cs
similarity index 90%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterGuid.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/GuidConverter.cs
index 379fcc33beba94..3c7c010098ffdd 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterGuid.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/GuidConverter.cs
@@ -4,7 +4,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterGuid : JsonConverter
+ internal sealed class GuidConverter : JsonConverter
{
public override Guid Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterInt16.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/Int16Converter.cs
similarity index 90%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterInt16.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/Int16Converter.cs
index 39d844feed31c0..f68e23459af7e7 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterInt16.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/Int16Converter.cs
@@ -4,7 +4,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterInt16 : JsonConverter
+ internal sealed class Int16Converter : JsonConverter
{
public override short Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterInt32.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/Int32Converter.cs
similarity index 90%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterInt32.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/Int32Converter.cs
index fb4e28de1bba97..abd9089c658738 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterInt32.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/Int32Converter.cs
@@ -4,7 +4,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterInt32 : JsonConverter
+ internal sealed class Int32Converter : JsonConverter
{
public override int Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterInt64.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/Int64Converter.cs
similarity index 90%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterInt64.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/Int64Converter.cs
index 6f82397be872ed..0ea30c22a56442 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterInt64.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/Int64Converter.cs
@@ -4,7 +4,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterInt64 : JsonConverter
+ internal sealed class Int64Converter : JsonConverter
{
public override long Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterJsonElement.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/JsonElementConverter.cs
similarity index 90%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterJsonElement.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/JsonElementConverter.cs
index b8a4da3efca796..d1962e02ca0574 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterJsonElement.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/JsonElementConverter.cs
@@ -4,7 +4,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterJsonElement : JsonConverter
+ internal sealed class JsonElementConverter : JsonConverter
{
public override JsonElement Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterKeyValuePair.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/KeyValuePairConverter.cs
similarity index 97%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterKeyValuePair.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/KeyValuePairConverter.cs
index 70eb76e1102f90..a9e386e74ea83f 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterKeyValuePair.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/KeyValuePairConverter.cs
@@ -6,7 +6,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonKeyValuePairConverter : JsonValueConverter>
+ internal sealed class KeyValuePairConverter : JsonValueConverter>
{
private const string KeyName = "Key";
private const string ValueName = "Value";
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonKeyValuePairConverter.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/KeyValuePairConverterFactory.cs
similarity index 84%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonKeyValuePairConverter.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/KeyValuePairConverterFactory.cs
index 75032665f60c25..da09dbae07cbf0 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonKeyValuePairConverter.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/KeyValuePairConverterFactory.cs
@@ -8,7 +8,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonKeyValuePairConverter : JsonConverterFactory
+ internal sealed class KeyValuePairConverterFactory : JsonConverterFactory
{
public override bool CanConvert(Type typeToConvert)
{
@@ -19,14 +19,14 @@ public override bool CanConvert(Type typeToConvert)
return (generic == typeof(KeyValuePair<,>));
}
- [PreserveDependency(".ctor()", "System.Text.Json.Serialization.Converters.JsonKeyValuePairConverter`2")]
+ [PreserveDependency(".ctor()", "System.Text.Json.Serialization.Converters.KeyValuePairConverter`2")]
public override JsonConverter CreateConverter(Type type, JsonSerializerOptions options)
{
Type keyType = type.GetGenericArguments()[0];
Type valueType = type.GetGenericArguments()[1];
JsonConverter converter = (JsonConverter)Activator.CreateInstance(
- typeof(JsonKeyValuePairConverter<,>).MakeGenericType(new Type[] { keyType, valueType }),
+ typeof(KeyValuePairConverter<,>).MakeGenericType(new Type[] { keyType, valueType }),
BindingFlags.Instance | BindingFlags.Public,
binder: null,
args: null,
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterNullable.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/NullableConverter.cs
similarity index 88%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterNullable.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/NullableConverter.cs
index 525793d5e0565f..000fcd7d000aaa 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterNullable.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/NullableConverter.cs
@@ -4,13 +4,13 @@
namespace System.Text.Json.Serialization
{
- internal class JsonValueConverterNullable : JsonConverter where T : struct
+ internal class NullableConverter : JsonConverter where T : struct
{
// It is possible to cache the underlying converter since this is an internal converter and
// an instance is created only once for each JsonSerializerOptions instance.
private readonly JsonConverter _converter;
- public JsonValueConverterNullable(JsonConverter converter)
+ public NullableConverter(JsonConverter converter)
{
_converter = converter;
}
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterNullableFactory.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/NullableConverterFactory.cs
similarity index 88%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterNullableFactory.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/NullableConverterFactory.cs
index 742b1843f9f74a..ffa7b6fe00d116 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterNullableFactory.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/NullableConverterFactory.cs
@@ -7,7 +7,7 @@
namespace System.Text.Json.Serialization
{
- internal class JsonValueConverterNullableFactory : JsonConverterFactory
+ internal class NullableConverterFactory : JsonConverterFactory
{
public override bool CanConvert(Type typeToConvert)
{
@@ -27,7 +27,7 @@ public override JsonConverter CreateConverter(Type typeToConvert, JsonSerializer
}
JsonConverter converter = (JsonConverter)Activator.CreateInstance(
- typeof(JsonValueConverterNullable<>).MakeGenericType(valueTypeToConvert),
+ typeof(NullableConverter<>).MakeGenericType(valueTypeToConvert),
BindingFlags.Instance | BindingFlags.Public,
binder: null,
args: new object[] { valueConverter },
diff --git a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterObject.cs b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/ObjectConverter.cs
similarity index 91%
rename from src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterObject.cs
rename to src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/ObjectConverter.cs
index 27a361ebae7824..acbae39e3edc36 100644
--- a/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/JsonValueConverterObject.cs
+++ b/src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Value/ObjectConverter.cs
@@ -4,7 +4,7 @@
namespace System.Text.Json.Serialization.Converters
{
- internal sealed class JsonConverterObject : JsonConverter