From 7fff48520808d487825bbcb33bd0e5440bbac02d Mon Sep 17 00:00:00 2001 From: James Newton-King Date: Tue, 14 Mar 2017 20:30:03 +1300 Subject: [PATCH] -Added protected JsonReader.SetToken method with option not to update position array index --- Src/Newtonsoft.Json.Roslyn.sln | 34 +++++++++++++++---------------- Src/Newtonsoft.Json/JsonReader.cs | 8 +++++++- 2 files changed, 24 insertions(+), 18 deletions(-) diff --git a/Src/Newtonsoft.Json.Roslyn.sln b/Src/Newtonsoft.Json.Roslyn.sln index 357026fa..b3f0217f 100644 --- a/Src/Newtonsoft.Json.Roslyn.sln +++ b/Src/Newtonsoft.Json.Roslyn.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 -VisualStudioVersion = 15.0.26206.0 +VisualStudioVersion = 15.0.26228.4 MinimumVisualStudioVersion = 10.0.40219.1 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{B520C700-7D45-4D82-BFB5-218FA68CF5CF}" ProjectSection(SolutionItems) = preProject @@ -25,28 +25,28 @@ Global GlobalSection(ProjectConfigurationPlatforms) = postSolution {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|x64.ActiveCfg = Debug|x64 - {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|x64.Build.0 = Debug|x64 - {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|x86.ActiveCfg = Debug|x86 - {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|x86.Build.0 = Debug|x86 + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|x64.ActiveCfg = Debug|Any CPU + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|x64.Build.0 = Debug|Any CPU + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|x86.ActiveCfg = Debug|Any CPU + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|x86.Build.0 = Debug|Any CPU {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|Any CPU.ActiveCfg = Release|Any CPU {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|Any CPU.Build.0 = Release|Any CPU - {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|x64.ActiveCfg = Release|x64 - {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|x64.Build.0 = Release|x64 - {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|x86.ActiveCfg = Release|x86 - {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|x86.Build.0 = Release|x86 + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|x64.ActiveCfg = Release|Any CPU + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|x64.Build.0 = Release|Any CPU + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|x86.ActiveCfg = Release|Any CPU + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|x86.Build.0 = Release|Any CPU {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|Any CPU.Build.0 = Debug|Any CPU - {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|x64.ActiveCfg = Debug|x64 - {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|x64.Build.0 = Debug|x64 - {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|x86.ActiveCfg = Debug|x86 - {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|x86.Build.0 = Debug|x86 + {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|x64.ActiveCfg = Debug|Any CPU + {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|x64.Build.0 = Debug|Any CPU + {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|x86.ActiveCfg = Debug|Any CPU + {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|x86.Build.0 = Debug|Any CPU {462EA9B9-8532-4330-9160-DF3450C70880}.Release|Any CPU.ActiveCfg = Release|Any CPU {462EA9B9-8532-4330-9160-DF3450C70880}.Release|Any CPU.Build.0 = Release|Any CPU - {462EA9B9-8532-4330-9160-DF3450C70880}.Release|x64.ActiveCfg = Release|x64 - {462EA9B9-8532-4330-9160-DF3450C70880}.Release|x64.Build.0 = Release|x64 - {462EA9B9-8532-4330-9160-DF3450C70880}.Release|x86.ActiveCfg = Release|x86 - {462EA9B9-8532-4330-9160-DF3450C70880}.Release|x86.Build.0 = Release|x86 + {462EA9B9-8532-4330-9160-DF3450C70880}.Release|x64.ActiveCfg = Release|Any CPU + {462EA9B9-8532-4330-9160-DF3450C70880}.Release|x64.Build.0 = Release|Any CPU + {462EA9B9-8532-4330-9160-DF3450C70880}.Release|x86.ActiveCfg = Release|Any CPU + {462EA9B9-8532-4330-9160-DF3450C70880}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/Src/Newtonsoft.Json/JsonReader.cs b/Src/Newtonsoft.Json/JsonReader.cs index b2fab7a6..d2650aa4 100644 --- a/Src/Newtonsoft.Json/JsonReader.cs +++ b/Src/Newtonsoft.Json/JsonReader.cs @@ -965,7 +965,13 @@ namespace Newtonsoft.Json SetToken(newToken, value, true); } - internal void SetToken(JsonToken newToken, object value, bool updateIndex) + /// + /// Sets the current token and value. + /// + /// The new token. + /// The value. + /// A flag indicating whether the position index inside an array should be updated. + protected void SetToken(JsonToken newToken, object value, bool updateIndex) { _tokenType = newToken; _value = value;