]>
Commit | Line | Data |
---|---|---|
0f5d89e8 A |
1 | // © 2018 and later: Unicode, Inc. and others. |
2 | // License & terms of use: http://www.unicode.org/copyright.html | |
3 | ||
4 | #include "unicode/utypes.h" | |
5 | ||
6 | #if !UCONFIG_NO_FORMATTING | |
7 | #ifndef __NUMPARSE_UTILS_H__ | |
8 | #define __NUMPARSE_UTILS_H__ | |
9 | ||
10 | #include "numparse_types.h" | |
11 | #include "unicode/uniset.h" | |
12 | ||
13 | U_NAMESPACE_BEGIN namespace numparse { | |
14 | namespace impl { | |
15 | namespace utils { | |
16 | ||
17 | ||
18 | inline static void putLeadCodePoints(const UnicodeSet* input, UnicodeSet* output) { | |
19 | for (int32_t i = 0; i < input->getRangeCount(); i++) { | |
20 | output->add(input->getRangeStart(i), input->getRangeEnd(i)); | |
21 | } | |
22 | // TODO: ANDY: How to iterate over the strings in ICU4C UnicodeSet? | |
23 | } | |
24 | ||
25 | inline static void putLeadCodePoint(const UnicodeString& input, UnicodeSet* output) { | |
26 | if (!input.isEmpty()) { | |
27 | output->add(input.char32At(0)); | |
28 | } | |
29 | } | |
30 | ||
31 | inline static void copyCurrencyCode(UChar* dest, const UChar* src) { | |
32 | uprv_memcpy(dest, src, sizeof(UChar) * 3); | |
33 | dest[3] = 0; | |
34 | } | |
35 | ||
36 | ||
37 | } // namespace utils | |
38 | } // namespace impl | |
39 | } // namespace numparse | |
40 | U_NAMESPACE_END | |
41 | ||
42 | #endif //__NUMPARSE_UTILS_H__ | |
43 | #endif /* #if !UCONFIG_NO_FORMATTING */ |