From 48ba0efa1ef65b36b606a2e61b66120831993083 Mon Sep 17 00:00:00 2001 From: Travis Keep Date: Wed, 3 Sep 2014 21:08:45 +0000 Subject: [PATCH] ICU-11221 Add new MeasureUnits to ICU. X-SVN-Rev: 36335 --- icu4c/source/i18n/measunit.cpp | 668 ++++++++++--- icu4c/source/i18n/unicode/measunit.h | 1056 ++++++++++++++++++-- icu4c/source/test/intltest/measfmttest.cpp | 129 +++ 3 files changed, 1629 insertions(+), 224 deletions(-) diff --git a/icu4c/source/i18n/measunit.cpp b/icu4c/source/i18n/measunit.cpp index 63c88b46132..8fb941ed443 100644 --- a/icu4c/source/i18n/measunit.cpp +++ b/icu4c/source/i18n/measunit.cpp @@ -26,26 +26,26 @@ UOBJECT_DEFINE_RTTI_IMPLEMENTATION(MeasureUnit) // Start generated code static const int32_t gOffsets[] = { - 0, // acceleration - 2, // angle - 6, // area - 15, // consumption - 17, // currency - 277, // digital - 287, // duration - 297, // electric - 301, // energy - 307, // frequency - 311, // length - 329, // light - 330, // mass - 341, // power - 347, // pressure - 352, // proportion - 353, // speed - 356, // temperature - 359, // volume - 381 // total in gSubTypes + 0, + 2, + 6, + 15, + 17, + 277, + 287, + 297, + 301, + 307, + 311, + 329, + 330, + 341, + 347, + 352, + 353, + 356, + 359, + 381 }; static const int32_t gIndexes[] = { @@ -54,7 +54,7 @@ static const int32_t gIndexes[] = { 6, 15, 17, - 17, // from here, offsets less the number of currencies (260) + 17, 27, 37, 41, @@ -68,7 +68,7 @@ static const int32_t gIndexes[] = { 93, 96, 99, - 121 // total in gSubTypes less number of currencies, should match MEAS_UNIT_COUNT in measfmt.cpp + 121 }; static const char * const gTypes[] = { @@ -94,13 +94,13 @@ static const char * const gTypes[] = { }; static const char * const gSubTypes[] = { - "g-force", // 0 (was 0) acceleration/0 + "g-force", "meter-per-second-squared", - "arc-minute", // 2 (was 1) angle/1 + "arc-minute", "arc-second", "degree", "radian", - "acre", // 6 (was 4) area/2 + "acre", "hectare", "square-centimeter", "square-foot", @@ -109,9 +109,9 @@ static const char * const gSubTypes[] = { "square-meter", "square-mile", "square-yard", - "liter-per-kilometer", // 15 (new) consumption/3 + "liter-per-kilometer", "mile-per-gallon", - "ADP", // 17 (was 10) currency/4 + "ADP", "AED", "AFA", "AFN", @@ -371,7 +371,7 @@ static const char * const gSubTypes[] = { "ZWL", "ZWN", "ZWR", - "bit", // 277 (new) digital/5 + "bit", "byte", "gigabit", "gigabyte", @@ -381,7 +381,7 @@ static const char * const gSubTypes[] = { "megabyte", "terabit", "terabyte", - "day", // 287 (was 270) duration/6 + "day", "hour", "microsecond", "millisecond", @@ -391,21 +391,21 @@ static const char * const gSubTypes[] = { "second", "week", "year", - "ampere", // 297 (new) electric/7 + "ampere", "milliampere", "ohm", "volt", - "calorie", // 301 (new) energy/8 + "calorie", "foodcalorie", "joule", "kilocalorie", "kilojoule", "kilowatt-hour", - "gigahertz", // 307 (new) frequency/9 + "gigahertz", "hertz", "kilohertz", "megahertz", - "astronomical-unit", // 311 (was 278) length/10 + "astronomical-unit", "centimeter", "decimeter", "fathom", @@ -423,8 +423,8 @@ static const char * const gSubTypes[] = { "parsec", "picometer", "yard", - "lux", // 329 (new) light/11 - "carat", // 330 (was 288) mass/12 + "lux", + "carat", "gram", "kilogram", "metric-ton", @@ -435,25 +435,25 @@ static const char * const gSubTypes[] = { "pound", "stone", "ton", - "gigawatt", // 341 (was 292) power/13 + "gigawatt", "horsepower", "kilowatt", "megawatt", "milliwatt", "watt", - "hectopascal", // 347 (was 295) pressure/14 + "hectopascal", "inch-hg", "millibar", "millimeter-of-mercury", "pound-per-square-inch", - "karat", // 352 (new) proportion/15 - "kilometer-per-hour", // 353 (was 298) speed/16 + "karat", + "kilometer-per-hour", "meter-per-second", "mile-per-hour", - "celsius", // 356 (was 301) temperature/17 + "celsius", "fahrenheit", "kelvin", - "acre-foot", // 359 (was 303) volume/18 + "acre-foot", "bushel", "centiliter", "cubic-centimeter", @@ -477,295 +477,731 @@ static const char * const gSubTypes[] = { "teaspoon" }; +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createGForce(UErrorCode &status) { return MeasureUnit::create(0, 0, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "meter-per-second-squared", MeasureUnit::create(0, 1, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMeterPerSecondSquared(UErrorCode &status) { + return MeasureUnit::create(0, 1, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createArcMinute(UErrorCode &status) { return MeasureUnit::create(1, 0, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createArcSecond(UErrorCode &status) { return MeasureUnit::create(1, 1, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createDegree(UErrorCode &status) { return MeasureUnit::create(1, 2, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "radian", MeasureUnit::create(1, 3, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createRadian(UErrorCode &status) { + return MeasureUnit::create(1, 3, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createAcre(UErrorCode &status) { return MeasureUnit::create(2, 0, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createHectare(UErrorCode &status) { return MeasureUnit::create(2, 1, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "square-centimeter", MeasureUnit::create(2, 2, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createSquareCentimeter(UErrorCode &status) { + return MeasureUnit::create(2, 2, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createSquareFoot(UErrorCode &status) { return MeasureUnit::create(2, 3, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "square-inch", MeasureUnit::create(2, 4, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createSquareInch(UErrorCode &status) { + return MeasureUnit::create(2, 4, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createSquareKilometer(UErrorCode &status) { return MeasureUnit::create(2, 5, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createSquareMeter(UErrorCode &status) { return MeasureUnit::create(2, 6, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createSquareMile(UErrorCode &status) { return MeasureUnit::create(2, 7, status); } +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createSquareYard(UErrorCode &status) { + return MeasureUnit::create(2, 8, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createLiterPerKilometer(UErrorCode &status) { + return MeasureUnit::create(3, 0, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMilePerGallon(UErrorCode &status) { + return MeasureUnit::create(3, 1, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "square-yard", MeasureUnit::create(2, 8, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createBit(UErrorCode &status) { + return MeasureUnit::create(5, 0, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createByte(UErrorCode &status) { + return MeasureUnit::create(5, 1, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createGigabit(UErrorCode &status) { + return MeasureUnit::create(5, 2, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createGigabyte(UErrorCode &status) { + return MeasureUnit::create(5, 3, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createKilobit(UErrorCode &status) { + return MeasureUnit::create(5, 4, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createKilobyte(UErrorCode &status) { + return MeasureUnit::create(5, 5, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMegabit(UErrorCode &status) { + return MeasureUnit::create(5, 6, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "liter-per-kilometer", MeasureUnit::create(3, 0, status); -// missing "mile-per-gallon", MeasureUnit::create(3, 1, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMegabyte(UErrorCode &status) { + return MeasureUnit::create(5, 7, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "bit", MeasureUnit::create(5, 0, status); -// missing "byte", MeasureUnit::create(5, 1, status); -// missing "gigabit", MeasureUnit::create(5, 2, status); -// missing "gigabyte", MeasureUnit::create(5, 3, status); -// missing "kilobit", MeasureUnit::create(5, 4, status); -// missing "kilobyte", MeasureUnit::create(5, 5, status); -// missing "megabit", MeasureUnit::create(5, 6, status); -// missing "megabyte", MeasureUnit::create(5, 7, status); -// missing "terabit", MeasureUnit::create(5, 8, status); -// missing "terabyte", MeasureUnit::create(5, 9, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createTerabit(UErrorCode &status) { + return MeasureUnit::create(5, 8, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createTerabyte(UErrorCode &status) { + return MeasureUnit::create(5, 9, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createDay(UErrorCode &status) { return MeasureUnit::create(6, 0, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createHour(UErrorCode &status) { return MeasureUnit::create(6, 1, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "microsecond", MeasureUnit::create(6, 2, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMicrosecond(UErrorCode &status) { + return MeasureUnit::create(6, 2, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createMillisecond(UErrorCode &status) { return MeasureUnit::create(6, 3, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createMinute(UErrorCode &status) { return MeasureUnit::create(6, 4, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createMonth(UErrorCode &status) { return MeasureUnit::create(6, 5, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "nanosecond", MeasureUnit::create(6, 6, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createNanosecond(UErrorCode &status) { + return MeasureUnit::create(6, 6, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createSecond(UErrorCode &status) { return MeasureUnit::create(6, 7, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createWeek(UErrorCode &status) { return MeasureUnit::create(6, 8, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createYear(UErrorCode &status) { return MeasureUnit::create(6, 9, status); } +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createAmpere(UErrorCode &status) { + return MeasureUnit::create(7, 0, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMilliampere(UErrorCode &status) { + return MeasureUnit::create(7, 1, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createOhm(UErrorCode &status) { + return MeasureUnit::create(7, 2, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createVolt(UErrorCode &status) { + return MeasureUnit::create(7, 3, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "ampere", MeasureUnit::create(7, 0, status); -// missing "milliampere", MeasureUnit::create(7, 1, status); -// missing "ohm", MeasureUnit::create(7, 2, status); -// missing "volt", MeasureUnit::create(7, 3, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createCalorie(UErrorCode &status) { + return MeasureUnit::create(8, 0, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "calorie", MeasureUnit::create(8, 0, status); -// missing "foodcalorie", MeasureUnit::create(8, 1, status); -// missing "joule", MeasureUnit::create(8, 2, status); -// missing "kilocalorie", MeasureUnit::create(8, 3, status); -// missing "kilojoule", MeasureUnit::create(8, 4, status); -// missing "kilowatt-hour", MeasureUnit::create(8, 5, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createFoodcalorie(UErrorCode &status) { + return MeasureUnit::create(8, 1, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "gigahertz", MeasureUnit::create(9, 0, status); -// missing "hertz", MeasureUnit::create(9, 1, status); -// missing "kilohertz", MeasureUnit::create(9, 2, status); -// missing "megahertz", MeasureUnit::create(9, 3, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createJoule(UErrorCode &status) { + return MeasureUnit::create(8, 2, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "astronomical-unit", MeasureUnit::create(10, 0, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createKilocalorie(UErrorCode &status) { + return MeasureUnit::create(8, 3, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createKilojoule(UErrorCode &status) { + return MeasureUnit::create(8, 4, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createKilowattHour(UErrorCode &status) { + return MeasureUnit::create(8, 5, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createGigahertz(UErrorCode &status) { + return MeasureUnit::create(9, 0, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createHertz(UErrorCode &status) { + return MeasureUnit::create(9, 1, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createKilohertz(UErrorCode &status) { + return MeasureUnit::create(9, 2, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMegahertz(UErrorCode &status) { + return MeasureUnit::create(9, 3, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createAstronomicalUnit(UErrorCode &status) { + return MeasureUnit::create(10, 0, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createCentimeter(UErrorCode &status) { return MeasureUnit::create(10, 1, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "decimeter", MeasureUnit::create(10, 2, status); -// missing "fathom", MeasureUnit::create(10, 3, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createDecimeter(UErrorCode &status) { + return MeasureUnit::create(10, 2, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createFathom(UErrorCode &status) { + return MeasureUnit::create(10, 3, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createFoot(UErrorCode &status) { return MeasureUnit::create(10, 4, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "furlong", MeasureUnit::create(10, 5, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createFurlong(UErrorCode &status) { + return MeasureUnit::create(10, 5, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createInch(UErrorCode &status) { return MeasureUnit::create(10, 6, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createKilometer(UErrorCode &status) { return MeasureUnit::create(10, 7, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createLightYear(UErrorCode &status) { return MeasureUnit::create(10, 8, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createMeter(UErrorCode &status) { return MeasureUnit::create(10, 9, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "micrometer", MeasureUnit::create(10, 10, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMicrometer(UErrorCode &status) { + return MeasureUnit::create(10, 10, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createMile(UErrorCode &status) { return MeasureUnit::create(10, 11, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createMillimeter(UErrorCode &status) { return MeasureUnit::create(10, 12, status); } +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createNanometer(UErrorCode &status) { + return MeasureUnit::create(10, 13, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createNauticalMile(UErrorCode &status) { + return MeasureUnit::create(10, 14, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "nanometer", MeasureUnit::create(10, 13, status); -// missing "nautical-mile", MeasureUnit::create(10, 14, status); -// missing "parsec", MeasureUnit::create(10, 15, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createParsec(UErrorCode &status) { + return MeasureUnit::create(10, 15, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createPicometer(UErrorCode &status) { return MeasureUnit::create(10, 16, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createYard(UErrorCode &status) { return MeasureUnit::create(10, 17, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "lux", MeasureUnit::create(11, 0, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createLux(UErrorCode &status) { + return MeasureUnit::create(11, 0, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "carat", MeasureUnit::create(12, 0, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createCarat(UErrorCode &status) { + return MeasureUnit::create(12, 0, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createGram(UErrorCode &status) { return MeasureUnit::create(12, 1, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createKilogram(UErrorCode &status) { return MeasureUnit::create(12, 2, status); } +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMetricTon(UErrorCode &status) { + return MeasureUnit::create(12, 3, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "metric-ton", MeasureUnit::create(12, 3, status); -// missing "microgram", MeasureUnit::create(12, 4, status); -// missing "milligram", MeasureUnit::create(12, 5, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMicrogram(UErrorCode &status) { + return MeasureUnit::create(12, 4, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMilligram(UErrorCode &status) { + return MeasureUnit::create(12, 5, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createOunce(UErrorCode &status) { return MeasureUnit::create(12, 6, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "ounce-troy", MeasureUnit::create(12, 7, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createOunceTroy(UErrorCode &status) { + return MeasureUnit::create(12, 7, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createPound(UErrorCode &status) { return MeasureUnit::create(12, 8, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "stone", MeasureUnit::create(12, 9, status); -// missing "ton", MeasureUnit::create(12, 10, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createStone(UErrorCode &status) { + return MeasureUnit::create(12, 9, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createTon(UErrorCode &status) { + return MeasureUnit::create(12, 10, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "gigawatt", MeasureUnit::create(13, 0, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createGigawatt(UErrorCode &status) { + return MeasureUnit::create(13, 0, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createHorsepower(UErrorCode &status) { return MeasureUnit::create(13, 1, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createKilowatt(UErrorCode &status) { return MeasureUnit::create(13, 2, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "megawatt", MeasureUnit::create(13, 3, status); -// missing "milliwatt", MeasureUnit::create(13, 4, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMegawatt(UErrorCode &status) { + return MeasureUnit::create(13, 3, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMilliwatt(UErrorCode &status) { + return MeasureUnit::create(13, 4, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createWatt(UErrorCode &status) { return MeasureUnit::create(13, 5, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createHectopascal(UErrorCode &status) { return MeasureUnit::create(14, 0, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createInchHg(UErrorCode &status) { return MeasureUnit::create(14, 1, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createMillibar(UErrorCode &status) { return MeasureUnit::create(14, 2, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "millimeter-of-mercury", MeasureUnit::create(14, 3, status); -// missing "pound-per-square-inch", MeasureUnit::create(14, 4, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMillimeterOfMercury(UErrorCode &status) { + return MeasureUnit::create(14, 3, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "karat", MeasureUnit::create(15, 0, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createPoundPerSquareInch(UErrorCode &status) { + return MeasureUnit::create(14, 4, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createKarat(UErrorCode &status) { + return MeasureUnit::create(15, 0, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createKilometerPerHour(UErrorCode &status) { return MeasureUnit::create(16, 0, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createMeterPerSecond(UErrorCode &status) { return MeasureUnit::create(16, 1, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createMilePerHour(UErrorCode &status) { return MeasureUnit::create(16, 2, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createCelsius(UErrorCode &status) { return MeasureUnit::create(17, 0, status); } +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createFahrenheit(UErrorCode &status) { return MeasureUnit::create(17, 1, status); } +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createKelvin(UErrorCode &status) { + return MeasureUnit::create(17, 2, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createAcreFoot(UErrorCode &status) { + return MeasureUnit::create(18, 0, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "kelvin", MeasureUnit::create(17, 2, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createBushel(UErrorCode &status) { + return MeasureUnit::create(18, 1, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createCentiliter(UErrorCode &status) { + return MeasureUnit::create(18, 2, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createCubicCentimeter(UErrorCode &status) { + return MeasureUnit::create(18, 3, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createCubicFoot(UErrorCode &status) { + return MeasureUnit::create(18, 4, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "acre-foot", MeasureUnit::create(18, 0, status); -// missing "bushel", MeasureUnit::create(18, 1, status); -// missing "centiliter", MeasureUnit::create(18, 2, status); -// missing "cubic-centimeter", MeasureUnit::create(18, 3, status); -// missing "cubic-foot", MeasureUnit::create(18, 4, status); -// missing "cubic-inch", MeasureUnit::create(18, 5, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createCubicInch(UErrorCode &status) { + return MeasureUnit::create(18, 5, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createCubicKilometer(UErrorCode &status) { return MeasureUnit::create(18, 6, status); } +#endif /* U_HIDE_DRAFT_API */ -// missing "cubic-meter", MeasureUnit::create(18, 7, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createCubicMeter(UErrorCode &status) { + return MeasureUnit::create(18, 7, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createCubicMile(UErrorCode &status) { return MeasureUnit::create(18, 8, status); } +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createCubicYard(UErrorCode &status) { + return MeasureUnit::create(18, 9, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createCup(UErrorCode &status) { + return MeasureUnit::create(18, 10, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createDeciliter(UErrorCode &status) { + return MeasureUnit::create(18, 11, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "cubic-yard", MeasureUnit::create(18, 9, status); -// missing "cup", MeasureUnit::create(18, 10, status); -// missing "deciliter", MeasureUnit::create(18, 11, status); -// missing "fluid-ounce", MeasureUnit::create(18, 12, status); -// missing "gallon", MeasureUnit::create(18, 13, status); -// missing "hectoliter", MeasureUnit::create(18, 14, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createFluidOunce(UErrorCode &status) { + return MeasureUnit::create(18, 12, status); +} +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createGallon(UErrorCode &status) { + return MeasureUnit::create(18, 13, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createHectoliter(UErrorCode &status) { + return MeasureUnit::create(18, 14, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API MeasureUnit *MeasureUnit::createLiter(UErrorCode &status) { return MeasureUnit::create(18, 15, status); } +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMegaliter(UErrorCode &status) { + return MeasureUnit::create(18, 16, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createMilliliter(UErrorCode &status) { + return MeasureUnit::create(18, 17, status); +} +#endif /* U_HIDE_DRAFT_API */ -// missing "megaliter", MeasureUnit::create(18, 16, status); -// missing "milliliter", MeasureUnit::create(18, 17, status); -// missing "pint", MeasureUnit::create(18, 18, status); -// missing "quart", MeasureUnit::create(18, 19, status); -// missing "tablespoon", MeasureUnit::create(18, 20, status); -// missing "teaspoon", MeasureUnit::create(18, 21, status); +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createPint(UErrorCode &status) { + return MeasureUnit::create(18, 18, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createQuart(UErrorCode &status) { + return MeasureUnit::create(18, 19, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createTablespoon(UErrorCode &status) { + return MeasureUnit::create(18, 20, status); +} +#endif /* U_HIDE_DRAFT_API */ + +#ifndef U_HIDE_DRAFT_API +MeasureUnit *MeasureUnit::createTeaspoon(UErrorCode &status) { + return MeasureUnit::create(18, 21, status); +} +#endif /* U_HIDE_DRAFT_API */ // End generated code diff --git a/icu4c/source/i18n/unicode/measunit.h b/icu4c/source/i18n/unicode/measunit.h index 44a06b951e4..df7928f5391 100644 --- a/icu4c/source/i18n/unicode/measunit.h +++ b/icu4c/source/i18n/unicode/measunit.h @@ -190,376 +190,1216 @@ class U_I18N_API MeasureUnit: public UObject { #ifndef U_HIDE_DRAFT_API /** - * Creates a unit of acceleration: g-force. + * Returns unit of acceleration: g-force. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ static MeasureUnit *createGForce(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of acceleration: meter-per-second-squared. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createMeterPerSecondSquared(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of angle: arc-minute. + * Returns unit of angle: arc-minute. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ static MeasureUnit *createArcMinute(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of angle: arc-second. + * Returns unit of angle: arc-second. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ static MeasureUnit *createArcSecond(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of angle: degree. + * Returns unit of angle: degree. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ static MeasureUnit *createDegree(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of angle: radian. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createRadian(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of area: acre. + * Returns unit of area: acre. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ static MeasureUnit *createAcre(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of area: hectare. + * Returns unit of area: hectare. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ static MeasureUnit *createHectare(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of area: square-centimeter. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createSquareCentimeter(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of area: square-foot. + * Returns unit of area: square-foot. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ static MeasureUnit *createSquareFoot(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of area: square-inch. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createSquareInch(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of area: square-kilometer. + * Returns unit of area: square-kilometer. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ static MeasureUnit *createSquareKilometer(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of area: square-meter. + * Returns unit of area: square-meter. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ static MeasureUnit *createSquareMeter(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of area: square-mile. + * Returns unit of area: square-mile. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ static MeasureUnit *createSquareMile(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of duration: day. + * Returns unit of area: square-yard. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createDay(UErrorCode &status); + static MeasureUnit *createSquareYard(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of duration: hour. + * Returns unit of consumption: liter-per-kilometer. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createHour(UErrorCode &status); + static MeasureUnit *createLiterPerKilometer(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of duration: millisecond. + * Returns unit of consumption: mile-per-gallon. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createMillisecond(UErrorCode &status); + static MeasureUnit *createMilePerGallon(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of duration: minute. + * Returns unit of digital: bit. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createMinute(UErrorCode &status); + static MeasureUnit *createBit(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of duration: month. + * Returns unit of digital: byte. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createMonth(UErrorCode &status); + static MeasureUnit *createByte(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of duration: second. + * Returns unit of digital: gigabit. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createSecond(UErrorCode &status); + static MeasureUnit *createGigabit(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of duration: week. + * Returns unit of digital: gigabyte. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createWeek(UErrorCode &status); + static MeasureUnit *createGigabyte(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of duration: year. + * Returns unit of digital: kilobit. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createYear(UErrorCode &status); + static MeasureUnit *createKilobit(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of length: centimeter. + * Returns unit of digital: kilobyte. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createCentimeter(UErrorCode &status); + static MeasureUnit *createKilobyte(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of length: foot. + * Returns unit of digital: megabit. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createFoot(UErrorCode &status); + static MeasureUnit *createMegabit(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of length: inch. + * Returns unit of digital: megabyte. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createInch(UErrorCode &status); + static MeasureUnit *createMegabyte(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of length: kilometer. + * Returns unit of digital: terabit. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createKilometer(UErrorCode &status); + static MeasureUnit *createTerabit(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of length: light-year. + * Returns unit of digital: terabyte. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createLightYear(UErrorCode &status); + static MeasureUnit *createTerabyte(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of length: meter. + * Returns unit of duration: day. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ - static MeasureUnit *createMeter(UErrorCode &status); + static MeasureUnit *createDay(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of length: mile. + * Returns unit of duration: hour. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ - static MeasureUnit *createMile(UErrorCode &status); + static MeasureUnit *createHour(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of length: millimeter. + * Returns unit of duration: microsecond. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createMillimeter(UErrorCode &status); + static MeasureUnit *createMicrosecond(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of length: picometer. + * Returns unit of duration: millisecond. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ - static MeasureUnit *createPicometer(UErrorCode &status); + static MeasureUnit *createMillisecond(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of length: yard. + * Returns unit of duration: minute. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ - static MeasureUnit *createYard(UErrorCode &status); + static MeasureUnit *createMinute(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of mass: gram. + * Returns unit of duration: month. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ - static MeasureUnit *createGram(UErrorCode &status); + static MeasureUnit *createMonth(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of mass: kilogram. + * Returns unit of duration: nanosecond. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createKilogram(UErrorCode &status); + static MeasureUnit *createNanosecond(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of mass: ounce. + * Returns unit of duration: second. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ - static MeasureUnit *createOunce(UErrorCode &status); + static MeasureUnit *createSecond(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of mass: pound. + * Returns unit of duration: week. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ - static MeasureUnit *createPound(UErrorCode &status); + static MeasureUnit *createWeek(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of power: horsepower. + * Returns unit of duration: year. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ - static MeasureUnit *createHorsepower(UErrorCode &status); + static MeasureUnit *createYear(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of power: kilowatt. + * Returns unit of electric: ampere. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createKilowatt(UErrorCode &status); + static MeasureUnit *createAmpere(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of power: watt. + * Returns unit of electric: milliampere. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createWatt(UErrorCode &status); + static MeasureUnit *createMilliampere(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of pressure: hectopascal. + * Returns unit of electric: ohm. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createHectopascal(UErrorCode &status); + static MeasureUnit *createOhm(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of pressure: inch-hg. + * Returns unit of electric: volt. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createInchHg(UErrorCode &status); + static MeasureUnit *createVolt(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of pressure: millibar. + * Returns unit of energy: calorie. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createMillibar(UErrorCode &status); + static MeasureUnit *createCalorie(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of energy: foodcalorie. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createFoodcalorie(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of speed: kilometer-per-hour. + * Returns unit of energy: joule. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createKilometerPerHour(UErrorCode &status); + static MeasureUnit *createJoule(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of speed: meter-per-second. + * Returns unit of energy: kilocalorie. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createMeterPerSecond(UErrorCode &status); + static MeasureUnit *createKilocalorie(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of speed: mile-per-hour. + * Returns unit of energy: kilojoule. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createMilePerHour(UErrorCode &status); + static MeasureUnit *createKilojoule(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of temperature: celsius. + * Returns unit of energy: kilowatt-hour. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createCelsius(UErrorCode &status); + static MeasureUnit *createKilowattHour(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of temperature: fahrenheit. + * Returns unit of frequency: gigahertz. * Caller owns returned value and must free it. * @param status ICU error code. - * @draft ICU 53 + * @draft ICU 54 */ - static MeasureUnit *createFahrenheit(UErrorCode &status); + static MeasureUnit *createGigahertz(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of frequency: hertz. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createHertz(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of frequency: kilohertz. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createKilohertz(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of frequency: megahertz. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createMegahertz(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of volume: cubic-kilometer. + * Returns unit of length: astronomical-unit. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createAstronomicalUnit(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: centimeter. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ - static MeasureUnit *createCubicKilometer(UErrorCode &status); + static MeasureUnit *createCentimeter(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: decimeter. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createDecimeter(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: fathom. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createFathom(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of volume: cubic-mile. + * Returns unit of length: foot. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ - static MeasureUnit *createCubicMile(UErrorCode &status); + static MeasureUnit *createFoot(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: furlong. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createFurlong(UErrorCode &status); +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API /** - * Creates a unit of volume: liter. + * Returns unit of length: inch. * Caller owns returned value and must free it. * @param status ICU error code. * @draft ICU 53 */ - static MeasureUnit *createLiter(UErrorCode &status); + static MeasureUnit *createInch(UErrorCode &status); -// End generated createXXX methods +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: kilometer. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createKilometer(UErrorCode &status); #endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: light-year. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createLightYear(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: meter. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createMeter(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: micrometer. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createMicrometer(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: mile. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createMile(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: millimeter. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createMillimeter(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: nanometer. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createNanometer(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: nautical-mile. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createNauticalMile(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: parsec. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createParsec(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: picometer. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createPicometer(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of length: yard. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createYard(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of light: lux. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createLux(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of mass: carat. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createCarat(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of mass: gram. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createGram(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of mass: kilogram. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createKilogram(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of mass: metric-ton. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createMetricTon(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of mass: microgram. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createMicrogram(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of mass: milligram. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createMilligram(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of mass: ounce. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createOunce(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of mass: ounce-troy. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createOunceTroy(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of mass: pound. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createPound(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of mass: stone. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createStone(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of mass: ton. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createTon(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of power: gigawatt. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createGigawatt(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of power: horsepower. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createHorsepower(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of power: kilowatt. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createKilowatt(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of power: megawatt. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createMegawatt(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of power: milliwatt. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createMilliwatt(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of power: watt. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createWatt(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of pressure: hectopascal. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createHectopascal(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of pressure: inch-hg. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createInchHg(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of pressure: millibar. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createMillibar(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of pressure: millimeter-of-mercury. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createMillimeterOfMercury(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of pressure: pound-per-square-inch. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createPoundPerSquareInch(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of proportion: karat. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createKarat(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of speed: kilometer-per-hour. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createKilometerPerHour(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of speed: meter-per-second. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createMeterPerSecond(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of speed: mile-per-hour. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createMilePerHour(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of temperature: celsius. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createCelsius(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of temperature: fahrenheit. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createFahrenheit(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of temperature: kelvin. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createKelvin(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: acre-foot. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createAcreFoot(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: bushel. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createBushel(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: centiliter. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createCentiliter(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: cubic-centimeter. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createCubicCentimeter(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: cubic-foot. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createCubicFoot(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: cubic-inch. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createCubicInch(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: cubic-kilometer. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createCubicKilometer(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: cubic-meter. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createCubicMeter(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: cubic-mile. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createCubicMile(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: cubic-yard. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createCubicYard(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: cup. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createCup(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: deciliter. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createDeciliter(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: fluid-ounce. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createFluidOunce(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: gallon. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createGallon(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: hectoliter. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createHectoliter(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: liter. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 53 + */ + static MeasureUnit *createLiter(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: megaliter. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createMegaliter(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: milliliter. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createMilliliter(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: pint. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createPint(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: quart. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createQuart(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: tablespoon. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createTablespoon(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ +#ifndef U_HIDE_DRAFT_API + /** + * Returns unit of volume: teaspoon. + * Caller owns returned value and must free it. + * @param status ICU error code. + * @draft ICU 54 + */ + static MeasureUnit *createTeaspoon(UErrorCode &status); + +#endif /* U_HIDE_DRAFT_API */ + +// End generated createXXX methods protected: diff --git a/icu4c/source/test/intltest/measfmttest.cpp b/icu4c/source/test/intltest/measfmttest.cpp index 7f29ade0218..5b1cbcaa95a 100644 --- a/icu4c/source/test/intltest/measfmttest.cpp +++ b/icu4c/source/test/intltest/measfmttest.cpp @@ -39,6 +39,7 @@ public: private: void TestBasic(); void TestCompatible53_1(); + void TestCompatible54_1(); void TestGetAvailable(); void TestExamplesInDocs(); void TestFormatPeriodEn(); @@ -96,6 +97,7 @@ void MeasureFormatTest::runIndexedTest( TESTCASE_AUTO_BEGIN; TESTCASE_AUTO(TestBasic); TESTCASE_AUTO(TestCompatible53_1); + TESTCASE_AUTO(TestCompatible54_1); TESTCASE_AUTO(TestGetAvailable); TESTCASE_AUTO(TestExamplesInDocs); TESTCASE_AUTO(TestFormatPeriodEn); @@ -167,6 +169,133 @@ void MeasureFormatTest::TestCompatible53_1() { assertSuccess("", status); } +void MeasureFormatTest::TestCompatible54_1() { + UErrorCode status = U_ZERO_ERROR; + LocalPointer measureUnit; + measureUnit.adoptInstead(MeasureUnit::createGForce(status)); + measureUnit.adoptInstead(MeasureUnit::createMeterPerSecondSquared(status)); + measureUnit.adoptInstead(MeasureUnit::createArcMinute(status)); + measureUnit.adoptInstead(MeasureUnit::createArcSecond(status)); + measureUnit.adoptInstead(MeasureUnit::createDegree(status)); + measureUnit.adoptInstead(MeasureUnit::createRadian(status)); + measureUnit.adoptInstead(MeasureUnit::createAcre(status)); + measureUnit.adoptInstead(MeasureUnit::createHectare(status)); + measureUnit.adoptInstead(MeasureUnit::createSquareCentimeter(status)); + measureUnit.adoptInstead(MeasureUnit::createSquareFoot(status)); + measureUnit.adoptInstead(MeasureUnit::createSquareInch(status)); + measureUnit.adoptInstead(MeasureUnit::createSquareKilometer(status)); + measureUnit.adoptInstead(MeasureUnit::createSquareMeter(status)); + measureUnit.adoptInstead(MeasureUnit::createSquareMile(status)); + measureUnit.adoptInstead(MeasureUnit::createSquareYard(status)); + measureUnit.adoptInstead(MeasureUnit::createLiterPerKilometer(status)); + measureUnit.adoptInstead(MeasureUnit::createMilePerGallon(status)); + measureUnit.adoptInstead(MeasureUnit::createBit(status)); + measureUnit.adoptInstead(MeasureUnit::createByte(status)); + measureUnit.adoptInstead(MeasureUnit::createGigabit(status)); + measureUnit.adoptInstead(MeasureUnit::createGigabyte(status)); + measureUnit.adoptInstead(MeasureUnit::createKilobit(status)); + measureUnit.adoptInstead(MeasureUnit::createKilobyte(status)); + measureUnit.adoptInstead(MeasureUnit::createMegabit(status)); + measureUnit.adoptInstead(MeasureUnit::createMegabyte(status)); + measureUnit.adoptInstead(MeasureUnit::createTerabit(status)); + measureUnit.adoptInstead(MeasureUnit::createTerabyte(status)); + measureUnit.adoptInstead(MeasureUnit::createDay(status)); + measureUnit.adoptInstead(MeasureUnit::createHour(status)); + measureUnit.adoptInstead(MeasureUnit::createMicrosecond(status)); + measureUnit.adoptInstead(MeasureUnit::createMillisecond(status)); + measureUnit.adoptInstead(MeasureUnit::createMinute(status)); + measureUnit.adoptInstead(MeasureUnit::createMonth(status)); + measureUnit.adoptInstead(MeasureUnit::createNanosecond(status)); + measureUnit.adoptInstead(MeasureUnit::createSecond(status)); + measureUnit.adoptInstead(MeasureUnit::createWeek(status)); + measureUnit.adoptInstead(MeasureUnit::createYear(status)); + measureUnit.adoptInstead(MeasureUnit::createAmpere(status)); + measureUnit.adoptInstead(MeasureUnit::createMilliampere(status)); + measureUnit.adoptInstead(MeasureUnit::createOhm(status)); + measureUnit.adoptInstead(MeasureUnit::createVolt(status)); + measureUnit.adoptInstead(MeasureUnit::createCalorie(status)); + measureUnit.adoptInstead(MeasureUnit::createFoodcalorie(status)); + measureUnit.adoptInstead(MeasureUnit::createJoule(status)); + measureUnit.adoptInstead(MeasureUnit::createKilocalorie(status)); + measureUnit.adoptInstead(MeasureUnit::createKilojoule(status)); + measureUnit.adoptInstead(MeasureUnit::createKilowattHour(status)); + measureUnit.adoptInstead(MeasureUnit::createGigahertz(status)); + measureUnit.adoptInstead(MeasureUnit::createHertz(status)); + measureUnit.adoptInstead(MeasureUnit::createKilohertz(status)); + measureUnit.adoptInstead(MeasureUnit::createMegahertz(status)); + measureUnit.adoptInstead(MeasureUnit::createAstronomicalUnit(status)); + measureUnit.adoptInstead(MeasureUnit::createCentimeter(status)); + measureUnit.adoptInstead(MeasureUnit::createDecimeter(status)); + measureUnit.adoptInstead(MeasureUnit::createFathom(status)); + measureUnit.adoptInstead(MeasureUnit::createFoot(status)); + measureUnit.adoptInstead(MeasureUnit::createFurlong(status)); + measureUnit.adoptInstead(MeasureUnit::createInch(status)); + measureUnit.adoptInstead(MeasureUnit::createKilometer(status)); + measureUnit.adoptInstead(MeasureUnit::createLightYear(status)); + measureUnit.adoptInstead(MeasureUnit::createMeter(status)); + measureUnit.adoptInstead(MeasureUnit::createMicrometer(status)); + measureUnit.adoptInstead(MeasureUnit::createMile(status)); + measureUnit.adoptInstead(MeasureUnit::createMillimeter(status)); + measureUnit.adoptInstead(MeasureUnit::createNanometer(status)); + measureUnit.adoptInstead(MeasureUnit::createNauticalMile(status)); + measureUnit.adoptInstead(MeasureUnit::createParsec(status)); + measureUnit.adoptInstead(MeasureUnit::createPicometer(status)); + measureUnit.adoptInstead(MeasureUnit::createYard(status)); + measureUnit.adoptInstead(MeasureUnit::createLux(status)); + measureUnit.adoptInstead(MeasureUnit::createCarat(status)); + measureUnit.adoptInstead(MeasureUnit::createGram(status)); + measureUnit.adoptInstead(MeasureUnit::createKilogram(status)); + measureUnit.adoptInstead(MeasureUnit::createMetricTon(status)); + measureUnit.adoptInstead(MeasureUnit::createMicrogram(status)); + measureUnit.adoptInstead(MeasureUnit::createMilligram(status)); + measureUnit.adoptInstead(MeasureUnit::createOunce(status)); + measureUnit.adoptInstead(MeasureUnit::createOunceTroy(status)); + measureUnit.adoptInstead(MeasureUnit::createPound(status)); + measureUnit.adoptInstead(MeasureUnit::createStone(status)); + measureUnit.adoptInstead(MeasureUnit::createTon(status)); + measureUnit.adoptInstead(MeasureUnit::createGigawatt(status)); + measureUnit.adoptInstead(MeasureUnit::createHorsepower(status)); + measureUnit.adoptInstead(MeasureUnit::createKilowatt(status)); + measureUnit.adoptInstead(MeasureUnit::createMegawatt(status)); + measureUnit.adoptInstead(MeasureUnit::createMilliwatt(status)); + measureUnit.adoptInstead(MeasureUnit::createWatt(status)); + measureUnit.adoptInstead(MeasureUnit::createHectopascal(status)); + measureUnit.adoptInstead(MeasureUnit::createInchHg(status)); + measureUnit.adoptInstead(MeasureUnit::createMillibar(status)); + measureUnit.adoptInstead(MeasureUnit::createMillimeterOfMercury(status)); + measureUnit.adoptInstead(MeasureUnit::createPoundPerSquareInch(status)); + measureUnit.adoptInstead(MeasureUnit::createKarat(status)); + measureUnit.adoptInstead(MeasureUnit::createKilometerPerHour(status)); + measureUnit.adoptInstead(MeasureUnit::createMeterPerSecond(status)); + measureUnit.adoptInstead(MeasureUnit::createMilePerHour(status)); + measureUnit.adoptInstead(MeasureUnit::createCelsius(status)); + measureUnit.adoptInstead(MeasureUnit::createFahrenheit(status)); + measureUnit.adoptInstead(MeasureUnit::createKelvin(status)); + measureUnit.adoptInstead(MeasureUnit::createAcreFoot(status)); + measureUnit.adoptInstead(MeasureUnit::createBushel(status)); + measureUnit.adoptInstead(MeasureUnit::createCentiliter(status)); + measureUnit.adoptInstead(MeasureUnit::createCubicCentimeter(status)); + measureUnit.adoptInstead(MeasureUnit::createCubicFoot(status)); + measureUnit.adoptInstead(MeasureUnit::createCubicInch(status)); + measureUnit.adoptInstead(MeasureUnit::createCubicKilometer(status)); + measureUnit.adoptInstead(MeasureUnit::createCubicMeter(status)); + measureUnit.adoptInstead(MeasureUnit::createCubicMile(status)); + measureUnit.adoptInstead(MeasureUnit::createCubicYard(status)); + measureUnit.adoptInstead(MeasureUnit::createCup(status)); + measureUnit.adoptInstead(MeasureUnit::createDeciliter(status)); + measureUnit.adoptInstead(MeasureUnit::createFluidOunce(status)); + measureUnit.adoptInstead(MeasureUnit::createGallon(status)); + measureUnit.adoptInstead(MeasureUnit::createHectoliter(status)); + measureUnit.adoptInstead(MeasureUnit::createLiter(status)); + measureUnit.adoptInstead(MeasureUnit::createMegaliter(status)); + measureUnit.adoptInstead(MeasureUnit::createMilliliter(status)); + measureUnit.adoptInstead(MeasureUnit::createPint(status)); + measureUnit.adoptInstead(MeasureUnit::createQuart(status)); + measureUnit.adoptInstead(MeasureUnit::createTablespoon(status)); + measureUnit.adoptInstead(MeasureUnit::createTeaspoon(status)); + assertSuccess("", status); +} + void MeasureFormatTest::TestBasic() { UErrorCode status = U_ZERO_ERROR; MeasureUnit *ptr1 = MeasureUnit::createArcMinute(status); -- 2.40.0