From 4e61a839a5d5260ecc2ba0202bf666449ea8dffb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Blanchon?= Date: Wed, 9 Jul 2014 13:30:08 +0200 Subject: [PATCH] Minor changes --- JsonGenerator/EscapedString.cpp | 35 +++++++++++---------------------- 1 file changed, 11 insertions(+), 24 deletions(-) diff --git a/JsonGenerator/EscapedString.cpp b/JsonGenerator/EscapedString.cpp index dee8cd9e..9f6988a2 100644 --- a/JsonGenerator/EscapedString.cpp +++ b/JsonGenerator/EscapedString.cpp @@ -11,50 +11,37 @@ static inline char getSpecialChar(char c) { // Optimized for code size on a 8-bit AVR - const char*p = "\"\"\\\\\bb\ff\nn\rr\tt\0"; + const char* p = "\"\"\\\\\bb\ff\nn\rr\tt\0"; while (p[0] && p[0] != c) { p += 2; } - + return p[1]; } static inline size_t printCharTo(char c, Print& p) { char specialChar = getSpecialChar(c); - if (specialChar) - { - return p.write('\\') + p.write(specialChar); - } - else - { - return p.write(c); - } + + return specialChar != 0 + ? p.write('\\') + p.write(specialChar) + : p.write(c); } size_t EscapedString::printTo(Print& p) const { const char* s = rawString; - if (!s) - { - return p.print("null"); - } - - size_t n = 0; - - n += p.write('\"'); + if (!s) return p.print("null"); + + size_t n = p.write('\"'); while (*s) { - n += printCharTo(*s, p); - - s++; + n += printCharTo(*s++, p); } - n += p.write('\"'); - - return n; + return n + p.write('\"'); } \ No newline at end of file