From 18b487cbdda08ebfc289290c1da3b1aa97a2fd01 Mon Sep 17 00:00:00 2001 From: Charl Wentzel Date: Fri, 18 Aug 2017 05:21:09 +0200 Subject: [PATCH] Minor Update: - JSONparseCore: - Simplify & correct PrintObject() and PrintArray() logic --- JSONparseCore.cpp | 58 ++++++++--------------------------------------- 1 file changed, 10 insertions(+), 48 deletions(-) diff --git a/JSONparseCore.cpp b/JSONparseCore.cpp index 41dbc60..374bdee 100644 --- a/JSONparseCore.cpp +++ b/JSONparseCore.cpp @@ -788,7 +788,6 @@ bool CJSONparse::PrintObject( TDataMember * Object, const int Indent ) TDataMember * Member; bool First = true; bool Last = false; - bool MultiLine = false; int Count = 0; // Opening brace @@ -802,27 +801,15 @@ bool CJSONparse::PrintObject( TDataMember * Object, const int Indent ) } // Save parameters - MultiLine = (Object->Len > 1)? true : false; for (Member = Object->FirstChild; Member != NULL; (Member = Member->Next)) { // Whitespace around first bracket if (Indent) { if (First) { First = false; - if (Object->Name) { - write( OutputHandle, "\n", 1 ); - write( OutputHandle, Spacer, SpacerLen ); - } - else if (MultiLine) { - write( OutputHandle, Spacer, Indent-1 ); - } - else { - write( OutputHandle, " ", 1 ); - } - } - else { - write( OutputHandle, Spacer, SpacerLen ); + write( OutputHandle, "\n", 1 ); } + write( OutputHandle, Spacer, SpacerLen ); } // Print key name @@ -859,17 +846,15 @@ bool CJSONparse::PrintObject( TDataMember * Object, const int Indent ) case jtArray : PrintArray( Member, Indent ); - if (!MultiLine && Member->Len > 1) MultiLine = true; break; case jtObject : PrintObject( Member, Indent ); - if (!MultiLine && Member->Len > 1) MultiLine = true; break; } if (!Last) write( OutputHandle, ",", 1 ); - if (Indent && MultiLine) + if (Indent) write( OutputHandle, "\n", 1 ); } @@ -880,12 +865,8 @@ bool CJSONparse::PrintObject( TDataMember * Object, const int Indent ) } // Closing brace - if (Indent) { - if (!MultiLine) - write( OutputHandle, " ", 1 ); - else - write( OutputHandle, Spacer, SpacerLen ); - } + if (Indent) + write( OutputHandle, Spacer, SpacerLen ); write( OutputHandle, "}", 1 ); return true; } @@ -896,7 +877,6 @@ bool CJSONparse::PrintArray( TDataMember * Array, const int Indent ) TDataMember * Member; bool First = true; bool Last = false; - bool MultiLine = false; int Count = 0; // Opening brace @@ -910,27 +890,15 @@ bool CJSONparse::PrintArray( TDataMember * Array, const int Indent ) } // Save parameters - MultiLine = (Array->Len > 1)? true : false; for (Member = Array->FirstChild; Member != NULL; (Member = Member->Next)) { // Whitespace around brace if (Indent) { if (First) { First = false; - if (Array->Name) { - write( OutputHandle, "\n", 1 ); - write( OutputHandle, Spacer, SpacerLen ); - } - else if (MultiLine) { - write( OutputHandle, Spacer, Indent-1 ); - } - else { - write( OutputHandle, " ", 1 ); - } - } - else { - write( OutputHandle, Spacer, SpacerLen ); + write( OutputHandle, "\n", 1 ); } + write( OutputHandle, Spacer, SpacerLen ); } Last = (++Count >= Array->Len); @@ -954,17 +922,15 @@ bool CJSONparse::PrintArray( TDataMember * Array, const int Indent ) case jtArray : PrintArray( Member, Indent ); - if (!MultiLine && Member->Len > 1) MultiLine = true; break; case jtObject : PrintObject( Member, Indent ); - if (!MultiLine && Member->Len > 1) MultiLine = true; break; } if (!Last) write( OutputHandle, ",", 1 ); - if (Indent && MultiLine) + if (Indent) write( OutputHandle, "\n", 1 ); } @@ -975,12 +941,8 @@ bool CJSONparse::PrintArray( TDataMember * Array, const int Indent ) } // Closing brace - if (Indent) { - if (!MultiLine) - write( OutputHandle, " ", 1 ); - else - write( OutputHandle, Spacer, SpacerLen ); - } + if (Indent) + write( OutputHandle, Spacer, SpacerLen ); write( OutputHandle, "]", 1 ); return true; }