| OLD | NEW |
| (Empty) |
| 1 /* | |
| 2 ********************************************************************** | |
| 3 * Copyright (C) 2001-2009, International Business Machines | |
| 4 * Corporation and others. All Rights Reserved. | |
| 5 ********************************************************************** | |
| 6 * Date Name Description | |
| 7 * 05/23/00 aliu Creation. | |
| 8 ********************************************************************** | |
| 9 */ | |
| 10 | |
| 11 #include "unicode/unistr.h" | |
| 12 #include "testutil.h" | |
| 13 | |
| 14 static const UChar HEX[16]={48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70}; | |
| 15 | |
| 16 UnicodeString &TestUtility::appendHex(UnicodeString &buf, UChar32 ch) { | |
| 17 if (ch >= 0x10000) { | |
| 18 if (ch >= 0x100000) { | |
| 19 buf.append(HEX[0xF&(ch>>20)]); | |
| 20 } | |
| 21 buf.append(HEX[0xF&(ch>>16)]); | |
| 22 } | |
| 23 buf.append(HEX[0xF&(ch>>12)]); | |
| 24 buf.append(HEX[0xF&(ch>>8)]); | |
| 25 buf.append(HEX[0xF&(ch>>4)]); | |
| 26 buf.append(HEX[0xF&ch]); | |
| 27 return buf; | |
| 28 } | |
| 29 | |
| 30 UnicodeString TestUtility::hex(UChar32 ch) { | |
| 31 UnicodeString buf; | |
| 32 appendHex(buf, ch); | |
| 33 return buf; | |
| 34 } | |
| 35 | |
| 36 UnicodeString TestUtility::hex(const UnicodeString& s) { | |
| 37 return hex(s, 44 /*,*/); | |
| 38 } | |
| 39 | |
| 40 UnicodeString TestUtility::hex(const UnicodeString& s, UChar sep) { | |
| 41 UnicodeString result; | |
| 42 if (s.isEmpty()) return result; | |
| 43 UChar32 c; | |
| 44 for (int32_t i = 0; i < s.length(); i += U16_LENGTH(c)) { | |
| 45 c = s.char32At(i); | |
| 46 if (i > 0) { | |
| 47 result.append(sep); | |
| 48 } | |
| 49 appendHex(result, c); | |
| 50 } | |
| 51 return result; | |
| 52 } | |
| 53 | |
| 54 UnicodeString TestUtility::hex(const uint8_t* bytes, int32_t len) { | |
| 55 UnicodeString buf; | |
| 56 for (int32_t i = 0; i < len; ++i) { | |
| 57 buf.append(HEX[0x0F & (bytes[i] >> 4)]); | |
| 58 buf.append(HEX[0x0F & bytes[i]]); | |
| 59 } | |
| 60 return buf; | |
| 61 } | |
| OLD | NEW |