- switch (action) {
- case 'l':
- case 'L':
- dest16_len = u_strToLower(dest16->utf16, dest16->utf16_cap,
- src16->utf16, src16->utf16_len,
- locale, status);
- break;
- case 'u':
- case 'U':
- dest16_len = u_strToUpper(dest16->utf16, dest16->utf16_cap,
- src16->utf16, src16->utf16_len,
- locale, status);
- break;
- case 't':
- case 'T':
- dest16_len = u_strToTitle(dest16->utf16, dest16->utf16_cap,
- src16->utf16, src16->utf16_len,
- 0, locale, status);
- break;
- case 'f':
- case 'F':
- dest16_len = u_strFoldCase(dest16->utf16, dest16->utf16_cap,
- src16->utf16, src16->utf16_len,
- U_FOLD_CASE_DEFAULT, status);
- break;
-
- default:
- return U_UNSUPPORTED_ERROR;
- break;
- }
+ icu_utf16_sub(dest16, src16, locale, action, status);