X-Git-Url: https://git.saurik.com/apple/icu.git/blobdiff_plain/0f5d89e82340278ed3d7d50029f37cab2c41a57e..c5116b9f5a666b9d59f443b3770acd6ef64dc6c3:/icuSources/i18n/number_affixutils.cpp?ds=sidebyside diff --git a/icuSources/i18n/number_affixutils.cpp b/icuSources/i18n/number_affixutils.cpp index 8da29a03..3eb9c59b 100644 --- a/icuSources/i18n/number_affixutils.cpp +++ b/icuSources/i18n/number_affixutils.cpp @@ -64,7 +64,7 @@ int32_t AffixUtils::estimateLength(const UnicodeString &patternString, UErrorCod } break; default: - U_ASSERT(false); + UPRV_UNREACHABLE; } offset += U16_LENGTH(cp); @@ -131,34 +131,33 @@ UnicodeString AffixUtils::escape(const UnicodeString &input) { Field AffixUtils::getFieldForType(AffixPatternType type) { switch (type) { case TYPE_MINUS_SIGN: - return Field::UNUM_SIGN_FIELD; + return UNUM_SIGN_FIELD; case TYPE_PLUS_SIGN: - return Field::UNUM_SIGN_FIELD; + return UNUM_SIGN_FIELD; case TYPE_PERCENT: - return Field::UNUM_PERCENT_FIELD; + return UNUM_PERCENT_FIELD; case TYPE_PERMILLE: - return Field::UNUM_PERMILL_FIELD; + return UNUM_PERMILL_FIELD; case TYPE_CURRENCY_SINGLE: - return Field::UNUM_CURRENCY_FIELD; + return UNUM_CURRENCY_FIELD; case TYPE_CURRENCY_DOUBLE: - return Field::UNUM_CURRENCY_FIELD; + return UNUM_CURRENCY_FIELD; case TYPE_CURRENCY_TRIPLE: - return Field::UNUM_CURRENCY_FIELD; + return UNUM_CURRENCY_FIELD; case TYPE_CURRENCY_QUAD: - return Field::UNUM_CURRENCY_FIELD; + return UNUM_CURRENCY_FIELD; case TYPE_CURRENCY_QUINT: - return Field::UNUM_CURRENCY_FIELD; + return UNUM_CURRENCY_FIELD; case TYPE_CURRENCY_OVERFLOW: - return Field::UNUM_CURRENCY_FIELD; + return UNUM_CURRENCY_FIELD; default: - U_ASSERT(false); - return Field::UNUM_FIELD_COUNT; // suppress "control reaches end of non-void function" + UPRV_UNREACHABLE; } } int32_t AffixUtils::unescape(const UnicodeString &affixPattern, NumberStringBuilder &output, int32_t position, - const SymbolProvider &provider, UErrorCode &status) { + const SymbolProvider &provider, Field field, UErrorCode &status) { int32_t length = 0; AffixTag tag; while (hasNext(tag, affixPattern)) { @@ -171,7 +170,7 @@ AffixUtils::unescape(const UnicodeString &affixPattern, NumberStringBuilder &out length += output.insert( position + length, provider.getSymbol(tag.type), getFieldForType(tag.type), status); } else { - length += output.insertCodePoint(position + length, tag.codePoint, UNUM_FIELD_COUNT, status); + length += output.insertCodePoint(position + length, tag.codePoint, field, status); } } return length; @@ -382,7 +381,7 @@ AffixTag AffixUtils::nextToken(AffixTag tag, const UnicodeString &patternString, return makeTag(offset, TYPE_CURRENCY_OVERFLOW, STATE_BASE, 0); } default: - U_ASSERT(false); + UPRV_UNREACHABLE; } } // End of string @@ -411,8 +410,7 @@ AffixTag AffixUtils::nextToken(AffixTag tag, const UnicodeString &patternString, case STATE_OVERFLOW_CURR: return makeTag(offset, TYPE_CURRENCY_OVERFLOW, STATE_BASE, 0); default: - U_ASSERT(false); - return {-1}; // suppress "control reaches end of non-void function" + UPRV_UNREACHABLE; } }