From 8c0048a377568b646b3b87be0b02322fce68b780 Mon Sep 17 00:00:00 2001 From: Konstantin Ritt Date: Wed, 9 May 2012 16:44:36 +0300 Subject: add some useful methods to QUnicodeTables:: in order to reduce code duplication and prepare the ground for upcoming changes Change-Id: I980244149f65384c9484bbec4682de8b7b848b08 Reviewed-by: Lars Knoll --- src/corelib/json/qjsonparser.cpp | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) (limited to 'src/corelib/json/qjsonparser.cpp') diff --git a/src/corelib/json/qjsonparser.cpp b/src/corelib/json/qjsonparser.cpp index a17426580f..8c5693c9be 100644 --- a/src/corelib/json/qjsonparser.cpp +++ b/src/corelib/json/qjsonparser.cpp @@ -45,6 +45,7 @@ #include #include "qjsonparser_p.h" #include "qjson_p.h" +#include //#define PARSER_DEBUG #ifdef PARSER_DEBUG @@ -721,19 +722,6 @@ static inline bool scanEscapeSequence(const char *&json, const char *end, uint * return true; } -static inline bool isUnicodeNonCharacter(uint ucs4) -{ - // Unicode has a couple of "non-characters" that one can use internally, - // but are not allowed to be used for text interchange. - // - // Those are the last two entries each Unicode Plane (U+FFFE, U+FFFF, - // U+1FFFE, U+1FFFF, etc.) as well as the entries between U+FDD0 and - // U+FDEF (inclusive) - - return (ucs4 & 0xfffe) == 0xfffe - || (ucs4 - 0xfdd0U) < 32; -} - static inline bool scanUtf8Char(const char *&json, const char *end, uint *result) { int need; @@ -769,7 +757,7 @@ static inline bool scanUtf8Char(const char *&json, const char *end, uint *result uc = (uc << 6) | (ch & 0x3f); } - if (uc < min_uc || isUnicodeNonCharacter(uc) || + if (uc < min_uc || QUnicodeTables::isNonCharacter(uc) || (uc >= 0xd800 && uc <= 0xdfff) || uc >= 0x110000) { return false; } -- cgit v1.2.3