Minor clean up

This commit is contained in:
Benoit Blanchon
2014-09-09 21:23:37 +02:00
parent 9d3b522e7b
commit 286a514fbe
2 changed files with 19 additions and 16 deletions

View File

@ -7,21 +7,17 @@
using namespace ArduinoJson::Parser; using namespace ArduinoJson::Parser;
static char unescapeChar(char c) char* JsonToken::getText()
{ {
// Optimized for code size on a 8-bit AVR char* s = json + token->start;
json[token->end] = 0;
const char* p = "b\bf\fn\nr\rt\t"; unescapeString(s);
while (true) return s;
{
if (p[0] == 0) return c;
if (p[0] == c) return p[1];
p += 2;
}
} }
static void unescapeString(char* s) inline void JsonToken::unescapeString(char* s)
{ {
char* readPtr = s; char* readPtr = s;
char* writePtr = s; char* writePtr = s;
@ -41,14 +37,18 @@ static void unescapeString(char* s)
} while (c != 0); } while (c != 0);
} }
char* JsonToken::getText() inline char JsonToken::unescapeChar(char c)
{ {
char* s = json + token->start; // Optimized for code size on a 8-bit AVR
json[token->end] = 0;
unescapeString(s); const char* p = "b\bf\fn\nr\rt\t";
return s; while (true)
{
if (p[0] == 0) return c;
if (p[0] == c) return p[1];
p += 2;
}
} }
JsonToken JsonToken::nextSibling() const JsonToken JsonToken::nextSibling() const

View File

@ -91,6 +91,9 @@ namespace ArduinoJson
private: private:
char* json; char* json;
jsmntok_t* token; jsmntok_t* token;
static char unescapeChar(char c);
static void unescapeString(char* s);
}; };
} }
} }