1*0e209d39SAndroid Build Coastguard Worker // © 2016 and later: Unicode, Inc. and others. 2*0e209d39SAndroid Build Coastguard Worker // License & terms of use: http://www.unicode.org/copyright.html 3*0e209d39SAndroid Build Coastguard Worker 4*0e209d39SAndroid Build Coastguard Worker /* 5*0e209d39SAndroid Build Coastguard Worker ************************************************************************ 6*0e209d39SAndroid Build Coastguard Worker * Copyright (c) 2007-2012, International Business Machines 7*0e209d39SAndroid Build Coastguard Worker * Corporation and others. All Rights Reserved. 8*0e209d39SAndroid Build Coastguard Worker ************************************************************************ 9*0e209d39SAndroid Build Coastguard Worker */ 10*0e209d39SAndroid Build Coastguard Worker 11*0e209d39SAndroid Build Coastguard Worker /** C++ Utilities to aid in debugging **/ 12*0e209d39SAndroid Build Coastguard Worker 13*0e209d39SAndroid Build Coastguard Worker #ifndef _DBGUTIL_H 14*0e209d39SAndroid Build Coastguard Worker #define _DBGUTIL_H 15*0e209d39SAndroid Build Coastguard Worker 16*0e209d39SAndroid Build Coastguard Worker #include "unicode/utypes.h" 17*0e209d39SAndroid Build Coastguard Worker #include "udbgutil.h" 18*0e209d39SAndroid Build Coastguard Worker #include "unicode/unistr.h" 19*0e209d39SAndroid Build Coastguard Worker 20*0e209d39SAndroid Build Coastguard Worker #if !UCONFIG_NO_FORMATTING 21*0e209d39SAndroid Build Coastguard Worker 22*0e209d39SAndroid Build Coastguard Worker U_TOOLUTIL_API const icu::UnicodeString& U_EXPORT2 23*0e209d39SAndroid Build Coastguard Worker udbg_enumString(UDebugEnumType type, int32_t field); 24*0e209d39SAndroid Build Coastguard Worker 25*0e209d39SAndroid Build Coastguard Worker /** 26*0e209d39SAndroid Build Coastguard Worker * @return enum offset, or UDBG_INVALID_ENUM on error 27*0e209d39SAndroid Build Coastguard Worker */ 28*0e209d39SAndroid Build Coastguard Worker U_CAPI int32_t U_EXPORT2 29*0e209d39SAndroid Build Coastguard Worker udbg_enumByString(UDebugEnumType type, const icu::UnicodeString& string); 30*0e209d39SAndroid Build Coastguard Worker 31*0e209d39SAndroid Build Coastguard Worker /** 32*0e209d39SAndroid Build Coastguard Worker * Convert a UnicodeString (with ascii digits) into a number. 33*0e209d39SAndroid Build Coastguard Worker * @param s string 34*0e209d39SAndroid Build Coastguard Worker * @return numerical value, or 0 on error 35*0e209d39SAndroid Build Coastguard Worker */ 36*0e209d39SAndroid Build Coastguard Worker U_CAPI int32_t U_EXPORT2 udbg_stoi(const icu::UnicodeString &s); 37*0e209d39SAndroid Build Coastguard Worker 38*0e209d39SAndroid Build Coastguard Worker U_CAPI double U_EXPORT2 udbg_stod(const icu::UnicodeString &s); 39*0e209d39SAndroid Build Coastguard Worker 40*0e209d39SAndroid Build Coastguard Worker U_CAPI icu::UnicodeString * U_EXPORT2 41*0e209d39SAndroid Build Coastguard Worker udbg_escape(const icu::UnicodeString &s, icu::UnicodeString *dst); 42*0e209d39SAndroid Build Coastguard Worker 43*0e209d39SAndroid Build Coastguard Worker #endif 44*0e209d39SAndroid Build Coastguard Worker 45*0e209d39SAndroid Build Coastguard Worker #endif 46