Add support for immutable array (dotnet/corefx#39493)
authorLayomi Akinrinade <laakinri@microsoft.com>
Tue, 16 Jul 2019 12:53:06 +0000 (08:53 -0400)
committerGitHub <noreply@github.com>
Tue, 16 Jul 2019 12:53:06 +0000 (08:53 -0400)
commit046b36aec32a1c5dfcba71794aaf5ab64f1ca9f4
treefe94cbe322572b7f673e1c7c33accd305ed160cb
parent01d9b32ee339152955f8b6fd1dd918136cdf0f28
Add support for immutable array (dotnet/corefx#39493)

* Add support for ImmutableArray

* Refactor immutable materializer strategies to use creator helper

* Clean up + re-add tests

* Check for immutable array

* Correct immutable array check

* Fix whitespace

Commit migrated from https://github.com/dotnet/corefx/commit/2811879c01bf6f3b95aa4ee9b8994cfb62038610
19 files changed:
src/libraries/System.Text.Json/src/System.Text.Json.csproj
src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/DefaultImmutableDictionaryConverter.cs
src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/DefaultImmutableEnumerableConverter.cs
src/libraries/System.Text.Json/src/System/Text/Json/Serialization/ImmutableCollectionCreator.cs [new file with mode: 0644]
src/libraries/System.Text.Json/src/System/Text/Json/Serialization/JsonPropertyInfoCommon.cs
src/libraries/System.Text.Json/src/System/Text/Json/Serialization/JsonSerializer.Read.HandleArray.cs
src/libraries/System.Text.Json/src/System/Text/Json/Serialization/JsonSerializerOptions.cs
src/libraries/System.Text.Json/src/System/Text/Json/Serialization/MemberAccessor.cs
src/libraries/System.Text.Json/src/System/Text/Json/Serialization/ReadStackFrame.cs
src/libraries/System.Text.Json/src/System/Text/Json/Serialization/ReflectionEmitMemberAccessor.cs
src/libraries/System.Text.Json/src/System/Text/Json/Serialization/ReflectionMemberAccessor.cs
src/libraries/System.Text.Json/tests/Serialization/PolymorphicTests.cs
src/libraries/System.Text.Json/tests/Serialization/PropertyNameTests.cs
src/libraries/System.Text.Json/tests/Serialization/TestClasses.ImmutableCollections.cs
src/libraries/System.Text.Json/tests/Serialization/TestClasses.Polymorphic.cs
src/libraries/System.Text.Json/tests/Serialization/TestClasses.SimpleTestClassWithObject.cs
src/libraries/System.Text.Json/tests/Serialization/TestClasses.cs
src/libraries/System.Text.Json/tests/Serialization/Value.ReadTests.ImmutableCollections.cs
src/libraries/System.Text.Json/tests/Serialization/Value.WriteTests.ImmutableCollections.cs