src/corelib/tools/qchar.h
changeset 30 5dc02b23752f
parent 18 2f34d5167611
child 33 3e2da88830cd
--- a/src/corelib/tools/qchar.h	Wed Jun 23 19:07:03 2010 +0300
+++ b/src/corelib/tools/qchar.h	Tue Jul 06 15:10:48 2010 +0300
@@ -285,6 +285,15 @@
     inline void setCell(uchar cell);
     inline void setRow(uchar row);
 
+    static inline bool isHighSurrogate(uint ucs4) {
+        return ((ucs4 & 0xfffffc00) == 0xd800);
+    }
+    static inline bool isLowSurrogate(uint ucs4) {
+        return ((ucs4 & 0xfffffc00) == 0xdc00);
+    }
+    static inline bool requiresSurrogates(uint ucs4) {
+        return (ucs4 >= 0x10000);
+    }
     static inline uint surrogateToUcs4(ushort high, ushort low) {
         return (uint(high)<<10) + low - 0x35fdc00;
     }