[ICU-69] use new UnicodeString constructor from invariant char*

X-Commit-URL: https://ssl.icu-project.org/trac/changeset/278
This commit is contained in:
Markus Scherer 1999-12-02 18:34:10 +00:00
parent 32026e79a4
commit 32bd5539c4
7 changed files with 58 additions and 59 deletions

View file

@ -62,30 +62,30 @@ int32_t Locale::isoCountriesCount;
/**
* Constant definitions
*/
const Locale Locale::ENGLISH(UnicodeString("en", ""));
const Locale Locale::FRENCH(UnicodeString("fr", ""));
const Locale Locale::GERMAN(UnicodeString("de", ""));
const Locale Locale::ITALIAN(UnicodeString("it", ""));
const Locale Locale::JAPANESE(UnicodeString("ja", ""));
const Locale Locale::KOREAN(UnicodeString("ko", ""));
const Locale Locale::CHINESE(UnicodeString("zh", ""));
const Locale Locale::SIMPLIFIED_CHINESE(UnicodeString("zh", ""), UnicodeString("CN", ""));
const Locale Locale::TRADITIONAL_CHINESE(UnicodeString("zh", ""), UnicodeString("TW", ""));
const Locale Locale::ENGLISH(UNICODE_STRING("en", 2));
const Locale Locale::FRENCH(UNICODE_STRING("fr", 2));
const Locale Locale::GERMAN(UNICODE_STRING("de", 2));
const Locale Locale::ITALIAN(UNICODE_STRING("it", 2));
const Locale Locale::JAPANESE(UNICODE_STRING("ja", 2));
const Locale Locale::KOREAN(UNICODE_STRING("ko", 2));
const Locale Locale::CHINESE(UNICODE_STRING("zh", 2));
const Locale Locale::SIMPLIFIED_CHINESE(UNICODE_STRING("zh", 2), UNICODE_STRING("CN", 2));
const Locale Locale::TRADITIONAL_CHINESE(UNICODE_STRING("zh", 2), UNICODE_STRING("TW", 2));
// Useful constant for country.
const Locale Locale::FRANCE(UnicodeString("fr", ""), UnicodeString("FR", ""));
const Locale Locale::GERMANY(UnicodeString("de", ""), UnicodeString("DE", ""));
const Locale Locale::ITALY(UnicodeString("it", ""), UnicodeString("IT", ""));
const Locale Locale::JAPAN(UnicodeString("ja", ""), UnicodeString("JP", ""));
const Locale Locale::KOREA(UnicodeString("en", ""), UnicodeString("GB", ""));
const Locale Locale::CHINA(UnicodeString("zh", ""), UnicodeString("CN", ""));
const Locale Locale::PRC(UnicodeString("zh", ""), UnicodeString("CN", ""));
const Locale Locale::TAIWAN(UnicodeString("zh", ""), UnicodeString("TW", ""));
const Locale Locale::UK(UnicodeString("en", ""), UnicodeString("GB", ""));
const Locale Locale::US(UnicodeString("en", ""), UnicodeString("US", ""));
const Locale Locale::CANADA(UnicodeString("en", ""), UnicodeString("CA", ""));
const Locale Locale::CANADA_FRENCH(UnicodeString("fr", ""), UnicodeString("CA", ""));
const Locale Locale::FRANCE(UNICODE_STRING("fr", 2), UNICODE_STRING("FR", 2));
const Locale Locale::GERMANY(UNICODE_STRING("de", 2), UNICODE_STRING("DE", 2));
const Locale Locale::ITALY(UNICODE_STRING("it", 2), UNICODE_STRING("IT", 2));
const Locale Locale::JAPAN(UNICODE_STRING("ja", 2), UNICODE_STRING("JP", 2));
const Locale Locale::KOREA(UNICODE_STRING("en", 2), UNICODE_STRING("GB", 2));
const Locale Locale::CHINA(UNICODE_STRING("zh", 2), UNICODE_STRING("CN", 2));
const Locale Locale::PRC(UNICODE_STRING("zh", 2), UNICODE_STRING("CN", 2));
const Locale Locale::TAIWAN(UNICODE_STRING("zh", 2), UNICODE_STRING("TW", 2));
const Locale Locale::UK(UNICODE_STRING("en", 2), UNICODE_STRING("GB", 2));
const Locale Locale::US(UNICODE_STRING("en", 2), UNICODE_STRING("US", 2));
const Locale Locale::CANADA(UNICODE_STRING("en", 2), UNICODE_STRING("CA", 2));
const Locale Locale::CANADA_FRENCH(UNICODE_STRING("fr", 2), UNICODE_STRING("CA", 2));
/**
@ -141,10 +141,9 @@ Locale::Locale()
Locale::Locale( const UnicodeString& newLanguage)
{
UnicodeString togo(newLanguage);
char myLocaleID[ULOC_FULLNAME_CAPACITY];
myLocaleID[togo.extract(0, 0x7fffffff, myLocaleID, "")] = '\0';
myLocaleID[newLanguage.extract(0, 0x7fffffff, myLocaleID, "")] = '\0';
init(myLocaleID);
}

View file

@ -45,14 +45,14 @@ const UChar DecimalFormatSymbols::fgLastResortIntlCurrency[] = { 0x00A4, 0x00A4,
const UnicodeString DecimalFormatSymbols::fgLastResortNumberElements[] =
{
UnicodeString(".", ""), // decimal separator
UNICODE_STRING(".", 1), // decimal separator
UnicodeString(), // group (thousands) separator
UnicodeString(";", ""), // pattern separator
UnicodeString("%", ""), // percent sign
UnicodeString("0", ""), // native 0 digit
UnicodeString("#", ""), // pattern digit
UnicodeString("-", ""), // minus sign
UnicodeString("E", ""), // exponential
UNICODE_STRING(";", 1), // pattern separator
UNICODE_STRING("%", 1), // percent sign
UNICODE_STRING("0", 1), // native 0 digit
UNICODE_STRING("#", 1), // pattern digit
UNICODE_STRING("-", 1), // minus sign
UNICODE_STRING("E", 1), // exponential
DecimalFormatSymbols::fgLastResortPerMill, // per mill
DecimalFormatSymbols::fgLastResortInfinity, // infinite
DecimalFormatSymbols::fgLastResortNaN // NaN
@ -62,7 +62,7 @@ const UnicodeString DecimalFormatSymbols::fgLastResortCurrencyElements[] =
{
DecimalFormatSymbols::fgLastResortCurrency,
DecimalFormatSymbols::fgLastResortIntlCurrency,
UnicodeString(".", "") // monetary decimal separator
UNICODE_STRING(".", 1) // monetary decimal separator
};
// -------------------------------------

View file

@ -28,7 +28,7 @@
// generic date-format pattern symbols. For their meanings, see class docs
// for SimpleDateFormat
UnicodeString DateFormatSymbols::fgPatternChars = UnicodeString("GyMdkHmsSEDFwWahKzYe", "");
UnicodeString DateFormatSymbols::fgPatternChars = UNICODE_STRING("GyMdkHmsSEDFwWahKzYe", 20);
//------------------------------------------------------
// Strings of last resort. These are only used if we have no resource
@ -42,28 +42,28 @@ UnicodeString DateFormatSymbols::fgPatternChars = UnicodeString("GyMdkHmsSEDFwWa
// These are the month names and abbreviations of last resort.
const UnicodeString DateFormatSymbols::fgLastResortMonthNames[] =
{
UnicodeString("01", ""), UnicodeString("02", ""), UnicodeString("03", ""), UnicodeString("04", ""),
UnicodeString("05", ""), UnicodeString("06", ""), UnicodeString("07", ""), UnicodeString("08", ""),
UnicodeString("09", ""), UnicodeString("10", ""), UnicodeString("11", ""), UnicodeString("12", ""),
UnicodeString("13", "")
UNICODE_STRING("01", 2), UNICODE_STRING("02", 2), UNICODE_STRING("03", 2), UNICODE_STRING("04", 2),
UNICODE_STRING("05", 2), UNICODE_STRING("06", 2), UNICODE_STRING("07", 2), UNICODE_STRING("08", 2),
UNICODE_STRING("09", 2), UNICODE_STRING("10", 2), UNICODE_STRING("11", 2), UNICODE_STRING("12", 2),
UNICODE_STRING("13", 2)
};
// These are the weekday names and abbreviations of last resort.
const UnicodeString DateFormatSymbols::fgLastResortDayNames[] =
{
UnicodeString(), UnicodeString("1", ""), UnicodeString("2", ""), UnicodeString("3", ""),
UnicodeString("4", ""), UnicodeString("5", ""), UnicodeString("6", ""), UnicodeString("7", "")
UnicodeString(), UNICODE_STRING("1", 1), UNICODE_STRING("2", 1), UNICODE_STRING("3", 1),
UNICODE_STRING("4", 1), UNICODE_STRING("5", 1), UNICODE_STRING("6", 1), UNICODE_STRING("7", 1)
};
// These are the am/pm and BC/AD markers of last resort.
const UnicodeString DateFormatSymbols::fgLastResortAmPmMarkers[] =
{
UnicodeString("AM", ""), UnicodeString("PM", "")
UNICODE_STRING("AM", 2), UNICODE_STRING("PM", 2)
};
const UnicodeString DateFormatSymbols::fgLastResortEras[] =
{
UnicodeString("BC", ""), UnicodeString("AD", "")
UNICODE_STRING("BC", 2), UNICODE_STRING("AD", 2)
};
// These are the zone strings of last resort.
@ -71,7 +71,7 @@ UnicodeString** DateFormatSymbols::fgLastResortZoneStringsH = 0;
const UnicodeString DateFormatSymbols::fgLastResortZoneStrings[] =
{
UnicodeString("GMT", ""), UnicodeString("GMT", ""), UnicodeString("GMT", ""), UnicodeString("GMT", ""), UnicodeString("GMT", "")
UNICODE_STRING("GMT", 3), UNICODE_STRING("GMT", 3), UNICODE_STRING("GMT", 3), UNICODE_STRING("GMT", 3), UNICODE_STRING("GMT", 3)
};
//------------------------------------------------------
@ -470,14 +470,14 @@ DateFormatSymbols::initializeData(const Locale& locale, UErrorCode& status, bool
// {sfb} fixed to handle 1-based weekdays
UnicodeString *lWeekdays = (UnicodeString*)resource.getStringArray(SimpleDateFormat::fgDayNamesTag, fWeekdaysCount, status);
fWeekdays = new UnicodeString [8];
fWeekdays[0] = UnicodeString("");
fWeekdays[0] = UnicodeString();
icu_arrayCopy(lWeekdays, 0, fWeekdays, 1, 7);
setIsOwned(kWeekdays, TRUE);
//fWeekdays = (UnicodeString*)resource.getStringArray(SimpleDateFormat::fgDayNamesTag, fWeekdaysCount, status);
UnicodeString *lSWeekdays = (UnicodeString*)resource.getStringArray(SimpleDateFormat::fgDayAbbreviationsTag, fShortWeekdaysCount, status);
fShortWeekdays = new UnicodeString [8];
fShortWeekdays[0] = UnicodeString("");
fShortWeekdays[0] = UnicodeString();
icu_arrayCopy(lSWeekdays, 0, fShortWeekdays, 1, 7);
setIsOwned(kShortWeekdays, TRUE);
//fShortWeekdays = (UnicodeString*)resource.getStringArray(SimpleDateFormat::fgDayAbbreviationsTag, fShortWeekdaysCount, status);

View file

@ -43,7 +43,7 @@ RSC=rc.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "I18N_EXPORTS" /YX /FD /c
# ADD CPP /nologo /MDd /Za /W3 /GX /I "..\..\source\common" /I "..\..\include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "I18N_EXPORTS" /D "U_I18N_IMPLEMENTATION" /YX /FD /c
# ADD CPP /nologo /MD /Za /W3 /GX /I "..\..\source\common" /I "..\..\include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "I18N_EXPORTS" /D "U_I18N_IMPLEMENTATION" /YX /FD /c
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "NDEBUG"

View file

@ -665,26 +665,26 @@ MessageFormat::format(const Formattable* arguments,
result += buffer;
return result;
}
// MessageFormat Type List Number, Date, Time or Choice
const UnicodeString MessageFormat::fgTypeList[] = {
UnicodeString(), UnicodeString(), UnicodeString("number", ""), UnicodeString(),
UnicodeString("date", ""), UnicodeString(), UnicodeString("time", ""), UnicodeString(),
UnicodeString("choice", "")
UnicodeString(), UnicodeString(), UNICODE_STRING("number", 6), UnicodeString(),
UNICODE_STRING("date", 4), UnicodeString(), UNICODE_STRING("time", 4), UnicodeString(),
UNICODE_STRING("choice", 6)
};
// NumberFormat modifier list, default, currency, percent or integer
const UnicodeString MessageFormat::fgModifierList[] = {
UnicodeString(), UnicodeString(), UnicodeString("currency", ""), UnicodeString(),
UnicodeString("percent", ""), UnicodeString(), UnicodeString("integer", ""), UnicodeString(),
UnicodeString(), UnicodeString(), UNICODE_STRING("currency", 8), UnicodeString(),
UNICODE_STRING("percent", 7), UnicodeString(), UNICODE_STRING("integer", 7), UnicodeString(),
UnicodeString()
};
// DateFormat modifier list, default, short, medium, long or full
const UnicodeString MessageFormat::fgDateModifierList[] = {
UnicodeString(), UnicodeString(), UnicodeString("short", ""), UnicodeString(),
UnicodeString("medium", ""), UnicodeString(), UnicodeString("long", ""), UnicodeString(),
UnicodeString("full", "")
UnicodeString(), UnicodeString(), UNICODE_STRING("short", 5), UnicodeString(),
UNICODE_STRING("medium", 6), UnicodeString(), UNICODE_STRING("long", 4), UnicodeString(),
UNICODE_STRING("full", 4)
};
const int32_t MessageFormat::fgListLength= 9;

View file

@ -46,10 +46,10 @@ const int32_t NumberFormat::fgNumberPatternsCount = 3;
// resort.
const UnicodeString NumberFormat::fgLastResortNumberPatterns[] =
{
UnicodeString("#0.###;-#0.###", ""), // decimal pattern
UnicodeString("$#0.00;($#0.00)", ""), // currency pattern
UnicodeString("#0%", ""), // percent pattern
UnicodeString("#E0", "") // scientific pattern
UNICODE_STRING("#0.###;-#0.###", 14), // decimal pattern
UNICODE_STRING("$#0.00;($#0.00)", 15), // currency pattern
UNICODE_STRING("#0%", 3), // percent pattern
UNICODE_STRING("#E0", 3) // scientific pattern
};
// -------------------------------------

View file

@ -70,9 +70,9 @@ int32_t TimeZone::fgAvailableIDsCount = 0;
const int32_t TimeZone::millisPerHour = U_MILLIS_PER_HOUR;
const UnicodeString TimeZone::GMT_ID = UnicodeString("GMT", "");
const UnicodeString TimeZone::GMT_ID = UNICODE_STRING("GMT", 3);
const int32_t TimeZone::GMT_ID_LENGTH = 3;
const UnicodeString TimeZone::CUSTOM_ID = UnicodeString("Custom", "");
const UnicodeString TimeZone::CUSTOM_ID = UNICODE_STRING("Custom", 6);
const TimeZone* TimeZone::GMT = new SimpleTimeZone(0, GMT_ID);