ICU-21935 DisplayOptions cleanup
diff --git a/icu4c/source/i18n/displayoptions.cpp b/icu4c/source/i18n/displayoptions.cpp
index e782ed2..bb49e60 100644
--- a/icu4c/source/i18n/displayoptions.cpp
+++ b/icu4c/source/i18n/displayoptions.cpp
@@ -5,48 +5,56 @@
#if !UCONFIG_NO_FORMATTING
-#include "cstring.h"
#include "unicode/displayoptions.h"
#include "unicode/udisplayoptions.h"
+#include "cstring.h"
-icu::DisplayOptions::Builder icu::DisplayOptions::builder() { return icu::DisplayOptions::Builder(); }
+U_NAMESPACE_BEGIN
-icu::DisplayOptions::Builder icu::DisplayOptions::copyToBuilder() const { return Builder(*this); }
+DisplayOptions::Builder DisplayOptions::builder() { return DisplayOptions::Builder(); }
-icu::DisplayOptions::DisplayOptions(const Builder &builder) {
- this->grammaticalCase = builder.grammaticalCase;
- this->nounClass = builder.nounClass;
- this->pluralCategory = builder.pluralCategory;
- this->capitalization = builder.capitalization;
- this->nameStyle = builder.nameStyle;
- this->displayLength = builder.displayLength;
- this->substituteHandling = builder.substituteHandling;
+DisplayOptions::Builder DisplayOptions::copyToBuilder() const { return Builder(*this); }
+
+DisplayOptions::DisplayOptions(const Builder &builder) {
+ grammaticalCase = builder.grammaticalCase;
+ nounClass = builder.nounClass;
+ pluralCategory = builder.pluralCategory;
+ capitalization = builder.capitalization;
+ nameStyle = builder.nameStyle;
+ displayLength = builder.displayLength;
+ substituteHandling = builder.substituteHandling;
}
-icu::DisplayOptions::Builder::Builder() {
+DisplayOptions::Builder::Builder() {
// Sets default values.
- this->grammaticalCase = UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_UNDEFINED;
- this->nounClass = UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_UNDEFINED;
- this->pluralCategory = UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_UNDEFINED;
- this->capitalization = UDisplayOptionsCapitalization::UDISPOPT_CAPITALIZATION_UNDEFINED;
- this->nameStyle = UDisplayOptionsNameStyle::UDISPOPT_NAME_STYLE_UNDEFINED;
- this->displayLength = UDisplayOptionsDisplayLength::UDISPOPT_DISPLAY_LENGTH_UNDEFINED;
- this->substituteHandling = UDisplayOptionsSubstituteHandling::UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED;
+ grammaticalCase = UDISPOPT_GRAMMATICAL_CASE_UNDEFINED;
+ nounClass = UDISPOPT_NOUN_CLASS_UNDEFINED;
+ pluralCategory = UDISPOPT_PLURAL_CATEGORY_UNDEFINED;
+ capitalization = UDISPOPT_CAPITALIZATION_UNDEFINED;
+ nameStyle = UDISPOPT_NAME_STYLE_UNDEFINED;
+ displayLength = UDISPOPT_DISPLAY_LENGTH_UNDEFINED;
+ substituteHandling = UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED;
}
-icu::DisplayOptions::Builder::Builder(const DisplayOptions &displayOptions) {
- this->grammaticalCase = displayOptions.grammaticalCase;
- this->nounClass = displayOptions.nounClass;
- this->pluralCategory = displayOptions.pluralCategory;
- this->capitalization = displayOptions.capitalization;
- this->nameStyle = displayOptions.nameStyle;
- this->displayLength = displayOptions.displayLength;
- this->substituteHandling = displayOptions.substituteHandling;
+DisplayOptions::Builder::Builder(const DisplayOptions &displayOptions) {
+ grammaticalCase = displayOptions.grammaticalCase;
+ nounClass = displayOptions.nounClass;
+ pluralCategory = displayOptions.pluralCategory;
+ capitalization = displayOptions.capitalization;
+ nameStyle = displayOptions.nameStyle;
+ displayLength = displayOptions.displayLength;
+ substituteHandling = displayOptions.substituteHandling;
}
+U_NAMESPACE_END
+
+// C API ------------------------------------------------------------------- ***
+
+U_NAMESPACE_USE
+
namespace {
-const char *grammaticalCasesIds[] = {
+const char *grammaticalCaseIds[] = {
"undefined", // 0
"ablative", // 1
"accusative", // 2
@@ -64,31 +72,31 @@
"vocative", // 14
};
-const int32_t grammaticalCasesCount = 15;
-
} // namespace
-const char *udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase grammaticalCase) {
- if (grammaticalCase >= 0 && grammaticalCase < grammaticalCasesCount) {
- return grammaticalCasesIds[grammaticalCase];
+U_CAPI const char * U_EXPORT2
+udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase grammaticalCase) {
+ if (grammaticalCase >= 0 && grammaticalCase < UPRV_LENGTHOF(grammaticalCaseIds)) {
+ return grammaticalCaseIds[grammaticalCase];
}
- return grammaticalCasesIds[0];
+ return grammaticalCaseIds[0];
}
-UDisplayOptionsGrammaticalCase udispopt_fromGrammaticalCaseIdentifier(const char *identifier) {
- for (int32_t i = 0; i < grammaticalCasesCount; i++) {
- if (uprv_strcmp(identifier, grammaticalCasesIds[i]) == 0) {
+U_CAPI UDisplayOptionsGrammaticalCase U_EXPORT2
+udispopt_fromGrammaticalCaseIdentifier(const char *identifier) {
+ for (int32_t i = 0; i < UPRV_LENGTHOF(grammaticalCaseIds); i++) {
+ if (uprv_strcmp(identifier, grammaticalCaseIds[i]) == 0) {
return static_cast<UDisplayOptionsGrammaticalCase>(i);
}
}
- return UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_UNDEFINED;
+ return UDISPOPT_GRAMMATICAL_CASE_UNDEFINED;
}
namespace {
-const char *pluralCategoriesIds[] = {
+const char *pluralCategoryIds[] = {
"undefined", // 0
"zero", // 1
"one", // 2
@@ -100,29 +108,29 @@
} // namespace
-const int32_t pluralCategoriesCount = 7;
-
-const char *udispopt_getPluralCategoryIdentifier(UDisplayOptionsPluralCategory pluralCategory) {
- if (pluralCategory >= 0 && pluralCategory < pluralCategoriesCount) {
- return pluralCategoriesIds[pluralCategory];
+U_CAPI const char * U_EXPORT2
+udispopt_getPluralCategoryIdentifier(UDisplayOptionsPluralCategory pluralCategory) {
+ if (pluralCategory >= 0 && pluralCategory < UPRV_LENGTHOF(pluralCategoryIds)) {
+ return pluralCategoryIds[pluralCategory];
}
- return pluralCategoriesIds[0];
+ return pluralCategoryIds[0];
}
-UDisplayOptionsPluralCategory udispopt_fromPluralCategoryIdentifier(const char *identifier) {
- for (int32_t i = 0; i < pluralCategoriesCount; i++) {
- if (uprv_strcmp(identifier, pluralCategoriesIds[i]) == 0) {
+U_CAPI UDisplayOptionsPluralCategory U_EXPORT2
+udispopt_fromPluralCategoryIdentifier(const char *identifier) {
+ for (int32_t i = 0; i < UPRV_LENGTHOF(pluralCategoryIds); i++) {
+ if (uprv_strcmp(identifier, pluralCategoryIds[i]) == 0) {
return static_cast<UDisplayOptionsPluralCategory>(i);
}
}
- return UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_UNDEFINED;
+ return UDISPOPT_PLURAL_CATEGORY_UNDEFINED;
}
namespace {
-const char *nounClassesIds[] = {
+const char *nounClassIds[] = {
"undefined", // 0
"other", // 1
"neuter", // 2
@@ -134,26 +142,26 @@
"common", // 8
};
-const int32_t nounClassesCount = 9;
-
} // namespace
-const char *udispopt_getNounClassIdentifier(UDisplayOptionsNounClass nounClass) {
- if (nounClass >= 0 && nounClass < nounClassesCount) {
- return nounClassesIds[nounClass];
+U_CAPI const char * U_EXPORT2
+udispopt_getNounClassIdentifier(UDisplayOptionsNounClass nounClass) {
+ if (nounClass >= 0 && nounClass < UPRV_LENGTHOF(nounClassIds)) {
+ return nounClassIds[nounClass];
}
- return nounClassesIds[0];
+ return nounClassIds[0];
}
-UDisplayOptionsNounClass udispopt_fromNounClassIdentifier(const char *identifier) {
- for (int32_t i = 0; i < nounClassesCount; i++) {
- if (uprv_strcmp(identifier, nounClassesIds[i]) == 0) {
+U_CAPI UDisplayOptionsNounClass U_EXPORT2
+udispopt_fromNounClassIdentifier(const char *identifier) {
+ for (int32_t i = 0; i < UPRV_LENGTHOF(nounClassIds); i++) {
+ if (uprv_strcmp(identifier, nounClassIds[i]) == 0) {
return static_cast<UDisplayOptionsNounClass>(i);
}
}
- return UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_UNDEFINED;
+ return UDISPOPT_NOUN_CLASS_UNDEFINED;
}
#endif /* #if !UCONFIG_NO_FORMATTING */
diff --git a/icu4c/source/i18n/number_output.cpp b/icu4c/source/i18n/number_output.cpp
index 130435d..31acdbb 100644
--- a/icu4c/source/i18n/number_output.cpp
+++ b/icu4c/source/i18n/number_output.cpp
@@ -40,7 +40,7 @@
}
UDisplayOptionsNounClass FormattedNumber::getNounClass(UErrorCode &status) const {
- UPRV_FORMATTED_VALUE_METHOD_GUARD(UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_UNDEFINED);
+ UPRV_FORMATTED_VALUE_METHOD_GUARD(UDISPOPT_NOUN_CLASS_UNDEFINED);
const char *nounClass = fData->gender;
return udispopt_fromNounClassIdentifier(nounClass);
}
diff --git a/icu4c/source/i18n/unicode/displayoptions.h b/icu4c/source/i18n/unicode/displayoptions.h
index a9402bf..68ae901 100644
--- a/icu4c/source/i18n/unicode/displayoptions.h
+++ b/icu4c/source/i18n/unicode/displayoptions.h
@@ -4,13 +4,13 @@
#ifndef __DISPLAYOPTIONS_H__
#define __DISPLAYOPTIONS_H__
-#include "unicode/udisplayoptions.h"
#include "unicode/utypes.h"
#if U_SHOW_CPLUSPLUS_API
#if !UCONFIG_NO_FORMATTING
+#include "unicode/udisplayoptions.h"
#include "unicode/uversion.h"
U_NAMESPACE_BEGIN
@@ -22,31 +22,32 @@
* class, ... etc. It currently supports enums, but may be extended in the future to have other
* types of data. It replaces a DisplayContext[] as a method parameter.
*
- * NOTE: this class is Immutable, and uses a Builder interface.
+ * NOTE: This class is Immutable, and uses a Builder interface.
*
* For example:
* ```
* DisplayOptions x =
- * DisplayOptions::builder().
- * .setGrammaticalCase(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_DATIVE)
- * .setPluralCategory(UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_FEW)
- * .build();
+ * DisplayOptions::builder().
+ * .setGrammaticalCase(UDISPOPT_GRAMMATICAL_CASE_DATIVE)
+ * .setPluralCategory(UDISPOPT_PLURAL_CATEGORY_FEW)
+ * .build();
*```
*
* @draft ICU 72
*/
class U_I18N_API DisplayOptions {
- public:
+public:
/**
* Responsible for building `DisplayOptions`.
*
* @draft ICU 72
*/
class U_I18N_API Builder {
- public:
+ public:
/**
* Sets the grammatical case.
*
+ * @param grammaticalCase The grammatical case.
* @return Builder
* @draft ICU 72
*/
@@ -58,6 +59,7 @@
/**
* Sets the noun class.
*
+ * @param nounClass The noun class.
* @return Builder
* @draft ICU 72
*/
@@ -69,6 +71,7 @@
/**
* Sets the plural category.
*
+ * @param pluralCategory The plural category.
* @return Builder
* @draft ICU 72
*/
@@ -80,6 +83,7 @@
/**
* Sets the capitalization.
*
+ * @param capitalization The capitalization.
* @return Builder
* @draft ICU 72
*/
@@ -91,6 +95,7 @@
/**
* Sets the dialect handling.
*
+ * @param nameStyle The name style.
* @return Builder
* @draft ICU 72
*/
@@ -102,6 +107,7 @@
/**
* Sets the display length.
*
+ * @param displayLength The display length.
* @return Builder
* @draft ICU 72
*/
@@ -113,6 +119,7 @@
/**
* Sets the substitute handling.
*
+ * @param substituteHandling The substitute handling.
* @return Builder
* @draft ICU 72
*/
@@ -129,7 +136,7 @@
*/
DisplayOptions build() { return DisplayOptions(*this); }
- private:
+ private:
friend DisplayOptions;
Builder();
@@ -164,7 +171,7 @@
* @return UDisplayOptionsGrammaticalCase
* @draft ICU 72
*/
- UDisplayOptionsGrammaticalCase getGrammaticalCase() const { return this->grammaticalCase; }
+ UDisplayOptionsGrammaticalCase getGrammaticalCase() const { return grammaticalCase; }
/**
* Gets the noun class.
@@ -172,7 +179,7 @@
* @return UDisplayOptionsNounClass
* @draft ICU 72
*/
- UDisplayOptionsNounClass getNounClass() const { return this->nounClass; }
+ UDisplayOptionsNounClass getNounClass() const { return nounClass; }
/**
* Gets the plural category.
@@ -180,7 +187,7 @@
* @return UDisplayOptionsPluralCategory
* @draft ICU 72
*/
- UDisplayOptionsPluralCategory getPluralCategory() const { return this->pluralCategory; }
+ UDisplayOptionsPluralCategory getPluralCategory() const { return pluralCategory; }
/**
* Gets the capitalization.
@@ -188,7 +195,7 @@
* @return UDisplayOptionsCapitalization
* @draft ICU 72
*/
- UDisplayOptionsCapitalization getCapitalization() const { return this->capitalization; }
+ UDisplayOptionsCapitalization getCapitalization() const { return capitalization; }
/**
* Gets the dialect handling.
@@ -196,7 +203,7 @@
* @return UDisplayOptionsNameStyle
* @draft ICU 72
*/
- UDisplayOptionsNameStyle getNameStyle() const { return this->nameStyle; }
+ UDisplayOptionsNameStyle getNameStyle() const { return nameStyle; }
/**
* Gets the display length.
@@ -204,7 +211,7 @@
* @return UDisplayOptionsDisplayLength
* @draft ICU 72
*/
- UDisplayOptionsDisplayLength getDisplayLength() const { return this->displayLength; }
+ UDisplayOptionsDisplayLength getDisplayLength() const { return displayLength; }
/**
* Gets the substitute handling.
@@ -212,11 +219,12 @@
* @return UDisplayOptionsSubstituteHandling
* @draft ICU 72
*/
- UDisplayOptionsSubstituteHandling getSubstituteHandling() const { return this->substituteHandling; }
+ UDisplayOptionsSubstituteHandling getSubstituteHandling() const { return substituteHandling; }
/**
- * Copy the DisplayOptions.
+ * Copies the DisplayOptions.
*
+ * @param other The options to copy.
* @draft ICU 72
*/
DisplayOptions &operator=(const DisplayOptions &other) = default;
@@ -224,18 +232,20 @@
/**
* Moves the DisplayOptions.
*
+ * @param other The options to move from.
* @draft ICU 72
*/
DisplayOptions &operator=(DisplayOptions &&other) noexcept = default;
/**
- * Copy the DisplayOptions.
+ * Copies the DisplayOptions.
*
+ * @param other The options to copy.
* @draft ICU 72
*/
- DisplayOptions(const DisplayOptions &) = default;
+ DisplayOptions(const DisplayOptions &other) = default;
- private:
+private:
DisplayOptions(const Builder &builder);
UDisplayOptionsGrammaticalCase grammaticalCase;
UDisplayOptionsNounClass nounClass;
@@ -254,4 +264,4 @@
#endif /* U_SHOW_CPLUSPLUS_API */
-#endif // __DISPLAYOPTIONS_H__
\ No newline at end of file
+#endif // __DISPLAYOPTIONS_H__
diff --git a/icu4c/source/i18n/unicode/numberformatter.h b/icu4c/source/i18n/unicode/numberformatter.h
index 2a19de1..09bbdb8 100644
--- a/icu4c/source/i18n/unicode/numberformatter.h
+++ b/icu4c/source/i18n/unicode/numberformatter.h
@@ -2774,8 +2774,8 @@
* Gets the noun class of the formatted output. Returns `UNDEFINED` when the noun class
* is not supported yet.
*
- * @return `NounClass`
- * @draft ICU 71.
+ * @return UDisplayOptionsNounClass
+ * @draft ICU 72
*/
UDisplayOptionsNounClass getNounClass(UErrorCode &status) const;
diff --git a/icu4c/source/i18n/unicode/udisplayoptions.h b/icu4c/source/i18n/unicode/udisplayoptions.h
index 527dd71..ed210c7 100644
--- a/icu4c/source/i18n/unicode/udisplayoptions.h
+++ b/icu4c/source/i18n/unicode/udisplayoptions.h
@@ -15,7 +15,6 @@
/**
* Represents all the grammatical cases that are supported by CLDR.
*
- *
* @draft ICU 72
*/
typedef enum UDisplayOptionsGrammaticalCase {
@@ -56,6 +55,7 @@
} UDisplayOptionsGrammaticalCase;
/**
+ * @param grammaticalCase The grammatical case.
* @return the lowercase CLDR keyword string for the grammatical case.
*
* @draft ICU 72
@@ -64,7 +64,6 @@
udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase grammaticalCase);
/**
- *
* @param identifier in lower case such as "dative" or "nominative"
* @return the plural category corresponding to the identifier, or `UDISPOPT_GRAMMATICAL_CASE_UNDEFINED`
*
@@ -75,7 +74,7 @@
/**
* Standard CLDR plural form/category constants.
- * See http://www.unicode.org/reports/tr35/tr35-numbers.html#Language_Plural_Rules
+ * See https://www.unicode.org/reports/tr35/tr35-numbers.html#Language_Plural_Rules
*
* @draft ICU 72
*/
@@ -103,6 +102,7 @@
} UDisplayOptionsPluralCategory;
/**
+ * @param pluralCategory The plural category.
* @return the lowercase CLDR identifier string for the plural category.
*
* @draft ICU 72
@@ -122,7 +122,7 @@
/**
* Represents all the grammatical noun classes that are supported by CLDR.
*
- * @draft ICU 71.
+ * @draft ICU 72.
*/
typedef enum UDisplayOptionsNounClass {
/**
@@ -151,6 +151,7 @@
} UDisplayOptionsNounClass;
/**
+ * @param nounClass The noun class.
* @return the lowercase CLDR keyword string for the noun class.
*
* @draft ICU 72
@@ -159,7 +160,6 @@
udispopt_getNounClassIdentifier(UDisplayOptionsNounClass nounClass);
/**
- *
* @param identifier in lower case such as "feminine" or "masculine"
* @return the plural category corresponding to the identifier, or `UDISPOPT_NOUN_CLASS_UNDEFINED`
*
@@ -313,4 +313,4 @@
#endif /* #if !UCONFIG_NO_FORMATTING */
-#endif // __UDISPLAYOPTIONS_H__
\ No newline at end of file
+#endif // __UDISPLAYOPTIONS_H__
diff --git a/icu4c/source/test/intltest/displayoptions_test.cpp b/icu4c/source/test/intltest/displayoptions_test.cpp
index 9036d8b..2f24dfc 100644
--- a/icu4c/source/test/intltest/displayoptions_test.cpp
+++ b/icu4c/source/test/intltest/displayoptions_test.cpp
@@ -35,333 +35,333 @@
void DisplayOptionsTest::testDisplayOptionsDefault() {
icu::DisplayOptions displayOptions = icu::DisplayOptions::builder().build();
- assertEquals(u"Test setting parameters", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_UNDEFINED,
+ assertEquals(u"Test setting parameters", UDISPOPT_GRAMMATICAL_CASE_UNDEFINED,
displayOptions.getGrammaticalCase());
- assertEquals(u"Test default values: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_UNDEFINED,
+ assertEquals(u"Test default values: ", UDISPOPT_NOUN_CLASS_UNDEFINED,
displayOptions.getNounClass());
- assertEquals(u"Test default values: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_UNDEFINED,
+ assertEquals(u"Test default values: ", UDISPOPT_PLURAL_CATEGORY_UNDEFINED,
displayOptions.getPluralCategory());
- assertEquals(u"Test default values: ", UDisplayOptionsCapitalization::UDISPOPT_CAPITALIZATION_UNDEFINED,
+ assertEquals(u"Test default values: ", UDISPOPT_CAPITALIZATION_UNDEFINED,
displayOptions.getCapitalization());
- assertEquals(u"Test default values: ", UDisplayOptionsNameStyle::UDISPOPT_NAME_STYLE_UNDEFINED,
+ assertEquals(u"Test default values: ", UDISPOPT_NAME_STYLE_UNDEFINED,
displayOptions.getNameStyle());
- assertEquals(u"Test default values: ", UDisplayOptionsDisplayLength::UDISPOPT_DISPLAY_LENGTH_UNDEFINED,
+ assertEquals(u"Test default values: ", UDISPOPT_DISPLAY_LENGTH_UNDEFINED,
displayOptions.getDisplayLength());
- assertEquals(u"Test default values: ", UDisplayOptionsSubstituteHandling::UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED,
+ assertEquals(u"Test default values: ", UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED,
displayOptions.getSubstituteHandling());
}
void DisplayOptionsTest::testDisplayOptionsEachElement() {
icu::DisplayOptions displayOptions =
icu::DisplayOptions::builder()
- .setGrammaticalCase(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ABLATIVE)
+ .setGrammaticalCase(UDISPOPT_GRAMMATICAL_CASE_ABLATIVE)
.build();
- assertEquals(u"Test setting parameters: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
+ assertEquals(u"Test setting parameters: ", UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
displayOptions.getGrammaticalCase());
displayOptions =
- icu::DisplayOptions::builder().setNounClass(UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_PERSONAL).build();
- assertEquals(u"Test setting parameters: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_PERSONAL,
+ icu::DisplayOptions::builder().setNounClass(UDISPOPT_NOUN_CLASS_PERSONAL).build();
+ assertEquals(u"Test setting parameters: ", UDISPOPT_NOUN_CLASS_PERSONAL,
displayOptions.getNounClass());
displayOptions =
- icu::DisplayOptions::builder().setPluralCategory(UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_FEW).build();
- assertEquals(u"Test setting parameters: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_FEW,
+ icu::DisplayOptions::builder().setPluralCategory(UDISPOPT_PLURAL_CATEGORY_FEW).build();
+ assertEquals(u"Test setting parameters: ", UDISPOPT_PLURAL_CATEGORY_FEW,
displayOptions.getPluralCategory());
displayOptions = icu::DisplayOptions::builder()
- .setCapitalization(UDisplayOptionsCapitalization::UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE)
+ .setCapitalization(UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE)
.build();
- assertEquals(u"Test setting parameters: ", UDisplayOptionsCapitalization::UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE,
+ assertEquals(u"Test setting parameters: ", UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE,
displayOptions.getCapitalization());
displayOptions = icu::DisplayOptions::builder()
- .setNameStyle(UDisplayOptionsNameStyle::UDISPOPT_NAME_STYLE_STANDARD_NAMES)
+ .setNameStyle(UDISPOPT_NAME_STYLE_STANDARD_NAMES)
.build();
- assertEquals(u"Test setting parameters: ", UDisplayOptionsNameStyle::UDISPOPT_NAME_STYLE_STANDARD_NAMES,
+ assertEquals(u"Test setting parameters: ", UDISPOPT_NAME_STYLE_STANDARD_NAMES,
displayOptions.getNameStyle());
displayOptions = icu::DisplayOptions::builder()
- .setDisplayLength(UDisplayOptionsDisplayLength::UDISPOPT_DISPLAY_LENGTH_FULL)
+ .setDisplayLength(UDISPOPT_DISPLAY_LENGTH_FULL)
.build();
- assertEquals(u"Test setting parameters: ", UDisplayOptionsDisplayLength::UDISPOPT_DISPLAY_LENGTH_FULL,
+ assertEquals(u"Test setting parameters: ", UDISPOPT_DISPLAY_LENGTH_FULL,
displayOptions.getDisplayLength());
displayOptions = icu::DisplayOptions::builder()
- .setSubstituteHandling(UDisplayOptionsSubstituteHandling::UDISPOPT_SUBSTITUTE_HANDLING_NO_SUBSTITUTE)
+ .setSubstituteHandling(UDISPOPT_SUBSTITUTE_HANDLING_NO_SUBSTITUTE)
.build();
- assertEquals(u"Test setting parameters: ", UDisplayOptionsSubstituteHandling::UDISPOPT_SUBSTITUTE_HANDLING_NO_SUBSTITUTE,
+ assertEquals(u"Test setting parameters: ", UDISPOPT_SUBSTITUTE_HANDLING_NO_SUBSTITUTE,
displayOptions.getSubstituteHandling());
}
void DisplayOptionsTest::testDisplayOptionsUpdating() {
DisplayOptions displayOptions = DisplayOptions::builder()
- .setGrammaticalCase(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ABLATIVE)
+ .setGrammaticalCase(UDISPOPT_GRAMMATICAL_CASE_ABLATIVE)
.build();
- assertEquals(u"Test updating parameters: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
displayOptions.getGrammaticalCase());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_NOUN_CLASS_UNDEFINED,
displayOptions.getNounClass());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_PLURAL_CATEGORY_UNDEFINED,
displayOptions.getPluralCategory());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsCapitalization::UDISPOPT_CAPITALIZATION_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_CAPITALIZATION_UNDEFINED,
displayOptions.getCapitalization());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsNameStyle::UDISPOPT_NAME_STYLE_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_NAME_STYLE_UNDEFINED,
displayOptions.getNameStyle());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsDisplayLength::UDISPOPT_DISPLAY_LENGTH_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_DISPLAY_LENGTH_UNDEFINED,
displayOptions.getDisplayLength());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsSubstituteHandling::UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED,
displayOptions.getSubstituteHandling());
displayOptions =
- displayOptions.copyToBuilder().setNounClass(UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_PERSONAL).build();
- assertEquals(u"Test updating parameters: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
+ displayOptions.copyToBuilder().setNounClass(UDISPOPT_NOUN_CLASS_PERSONAL).build();
+ assertEquals(u"Test updating parameters: ", UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
displayOptions.getGrammaticalCase());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_PERSONAL,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_NOUN_CLASS_PERSONAL,
displayOptions.getNounClass());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_PLURAL_CATEGORY_UNDEFINED,
displayOptions.getPluralCategory());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsCapitalization::UDISPOPT_CAPITALIZATION_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_CAPITALIZATION_UNDEFINED,
displayOptions.getCapitalization());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsNameStyle::UDISPOPT_NAME_STYLE_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_NAME_STYLE_UNDEFINED,
displayOptions.getNameStyle());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsDisplayLength::UDISPOPT_DISPLAY_LENGTH_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_DISPLAY_LENGTH_UNDEFINED,
displayOptions.getDisplayLength());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsSubstituteHandling::UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED,
displayOptions.getSubstituteHandling());
displayOptions =
- displayOptions.copyToBuilder().setPluralCategory(UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_FEW).build();
- assertEquals(u"Test updating parameters: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
+ displayOptions.copyToBuilder().setPluralCategory(UDISPOPT_PLURAL_CATEGORY_FEW).build();
+ assertEquals(u"Test updating parameters: ", UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
displayOptions.getGrammaticalCase());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_PERSONAL,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_NOUN_CLASS_PERSONAL,
displayOptions.getNounClass());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_FEW,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_PLURAL_CATEGORY_FEW,
displayOptions.getPluralCategory());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsCapitalization::UDISPOPT_CAPITALIZATION_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_CAPITALIZATION_UNDEFINED,
displayOptions.getCapitalization());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsNameStyle::UDISPOPT_NAME_STYLE_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_NAME_STYLE_UNDEFINED,
displayOptions.getNameStyle());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsDisplayLength::UDISPOPT_DISPLAY_LENGTH_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_DISPLAY_LENGTH_UNDEFINED,
displayOptions.getDisplayLength());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsSubstituteHandling::UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED,
displayOptions.getSubstituteHandling());
displayOptions = displayOptions.copyToBuilder()
- .setCapitalization(UDisplayOptionsCapitalization::UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE)
+ .setCapitalization(UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE)
.build();
- assertEquals(u"Test updating parameters: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
displayOptions.getGrammaticalCase());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_PERSONAL,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_NOUN_CLASS_PERSONAL,
displayOptions.getNounClass());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_FEW,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_PLURAL_CATEGORY_FEW,
displayOptions.getPluralCategory());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsCapitalization::UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE,
displayOptions.getCapitalization());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsNameStyle::UDISPOPT_NAME_STYLE_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_NAME_STYLE_UNDEFINED,
displayOptions.getNameStyle());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsDisplayLength::UDISPOPT_DISPLAY_LENGTH_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_DISPLAY_LENGTH_UNDEFINED,
displayOptions.getDisplayLength());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsSubstituteHandling::UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED,
displayOptions.getSubstituteHandling());
displayOptions = displayOptions.copyToBuilder()
- .setNameStyle(UDisplayOptionsNameStyle::UDISPOPT_NAME_STYLE_STANDARD_NAMES)
+ .setNameStyle(UDISPOPT_NAME_STYLE_STANDARD_NAMES)
.build();
- assertEquals(u"Test updating parameters: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
displayOptions.getGrammaticalCase());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_PERSONAL,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_NOUN_CLASS_PERSONAL,
displayOptions.getNounClass());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_FEW,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_PLURAL_CATEGORY_FEW,
displayOptions.getPluralCategory());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsCapitalization::UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE,
displayOptions.getCapitalization());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsNameStyle::UDISPOPT_NAME_STYLE_STANDARD_NAMES,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_NAME_STYLE_STANDARD_NAMES,
displayOptions.getNameStyle());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsDisplayLength::UDISPOPT_DISPLAY_LENGTH_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_DISPLAY_LENGTH_UNDEFINED,
displayOptions.getDisplayLength());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsSubstituteHandling::UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED,
displayOptions.getSubstituteHandling());
displayOptions = displayOptions.copyToBuilder()
- .setDisplayLength(UDisplayOptionsDisplayLength::UDISPOPT_DISPLAY_LENGTH_FULL)
+ .setDisplayLength(UDISPOPT_DISPLAY_LENGTH_FULL)
.build();
- assertEquals(u"Test updating parameters: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
displayOptions.getGrammaticalCase());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_PERSONAL,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_NOUN_CLASS_PERSONAL,
displayOptions.getNounClass());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_FEW,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_PLURAL_CATEGORY_FEW,
displayOptions.getPluralCategory());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsCapitalization::UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE,
displayOptions.getCapitalization());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsNameStyle::UDISPOPT_NAME_STYLE_STANDARD_NAMES,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_NAME_STYLE_STANDARD_NAMES,
displayOptions.getNameStyle());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsDisplayLength::UDISPOPT_DISPLAY_LENGTH_FULL,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_DISPLAY_LENGTH_FULL,
displayOptions.getDisplayLength());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsSubstituteHandling::UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_SUBSTITUTE_HANDLING_UNDEFINED,
displayOptions.getSubstituteHandling());
displayOptions = displayOptions.copyToBuilder()
- .setSubstituteHandling(UDisplayOptionsSubstituteHandling::UDISPOPT_SUBSTITUTE_HANDLING_NO_SUBSTITUTE)
+ .setSubstituteHandling(UDISPOPT_SUBSTITUTE_HANDLING_NO_SUBSTITUTE)
.build();
- assertEquals(u"Test updating parameters: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
displayOptions.getGrammaticalCase());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_PERSONAL,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_NOUN_CLASS_PERSONAL,
displayOptions.getNounClass());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_FEW,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_PLURAL_CATEGORY_FEW,
displayOptions.getPluralCategory());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsCapitalization::UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_CAPITALIZATION_BEGINNING_OF_SENTENCE,
displayOptions.getCapitalization());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsNameStyle::UDISPOPT_NAME_STYLE_STANDARD_NAMES,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_NAME_STYLE_STANDARD_NAMES,
displayOptions.getNameStyle());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsDisplayLength::UDISPOPT_DISPLAY_LENGTH_FULL,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_DISPLAY_LENGTH_FULL,
displayOptions.getDisplayLength());
- assertEquals(u"Test updating parameters: ", UDisplayOptionsSubstituteHandling::UDISPOPT_SUBSTITUTE_HANDLING_NO_SUBSTITUTE,
+ assertEquals(u"Test updating parameters: ", UDISPOPT_SUBSTITUTE_HANDLING_NO_SUBSTITUTE,
displayOptions.getSubstituteHandling());
}
void DisplayOptionsTest::testDisplayOptionsGetIdentifier() {
assertEquals(u"test get identifier: ", "undefined",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_UNDEFINED));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_UNDEFINED));
assertEquals(u"test get identifier: ", "ablative",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ABLATIVE));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_ABLATIVE));
assertEquals(u"test get identifier: ", "accusative",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ACCUSATIVE));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_ACCUSATIVE));
assertEquals(u"test get identifier: ", "comitative",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_COMITATIVE));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_COMITATIVE));
assertEquals(u"test get identifier: ", "dative",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_DATIVE));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_DATIVE));
assertEquals(u"test get identifier: ", "ergative",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ERGATIVE));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_ERGATIVE));
assertEquals(u"test get identifier: ", "genitive",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_GENITIVE));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_GENITIVE));
assertEquals(
u"test get identifier: ", "instrumental",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_INSTRUMENTAL));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_INSTRUMENTAL));
assertEquals(u"test get identifier: ", "locative",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_LOCATIVE));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_LOCATIVE));
assertEquals(
u"test get identifier: ", "locative_copulative",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_LOCATIVE_COPULATIVE));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_LOCATIVE_COPULATIVE));
assertEquals(u"test get identifier: ", "nominative",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_NOMINATIVE));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_NOMINATIVE));
assertEquals(u"test get identifier: ", "oblique",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_OBLIQUE));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_OBLIQUE));
assertEquals(
u"test get identifier: ", "prepositional",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_PREPOSITIONAL));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_PREPOSITIONAL));
assertEquals(u"test get identifier: ", "sociative",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_SOCIATIVE));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_SOCIATIVE));
assertEquals(u"test get identifier: ", "vocative",
- udispopt_getGrammaticalCaseIdentifier(UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_VOCATIVE));
+ udispopt_getGrammaticalCaseIdentifier(UDISPOPT_GRAMMATICAL_CASE_VOCATIVE));
assertEquals(u"test get identifier: ", "undefined",
- udispopt_getPluralCategoryIdentifier(UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_UNDEFINED));
+ udispopt_getPluralCategoryIdentifier(UDISPOPT_PLURAL_CATEGORY_UNDEFINED));
assertEquals(u"test get identifier: ", "zero",
- udispopt_getPluralCategoryIdentifier(UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_ZERO));
+ udispopt_getPluralCategoryIdentifier(UDISPOPT_PLURAL_CATEGORY_ZERO));
assertEquals(u"test get identifier: ", "one",
- udispopt_getPluralCategoryIdentifier(UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_ONE));
+ udispopt_getPluralCategoryIdentifier(UDISPOPT_PLURAL_CATEGORY_ONE));
assertEquals(u"test get identifier: ", "two",
- udispopt_getPluralCategoryIdentifier(UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_TWO));
+ udispopt_getPluralCategoryIdentifier(UDISPOPT_PLURAL_CATEGORY_TWO));
assertEquals(u"test get identifier: ", "few",
- udispopt_getPluralCategoryIdentifier(UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_FEW));
+ udispopt_getPluralCategoryIdentifier(UDISPOPT_PLURAL_CATEGORY_FEW));
assertEquals(u"test get identifier: ", "many",
- udispopt_getPluralCategoryIdentifier(UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_MANY));
+ udispopt_getPluralCategoryIdentifier(UDISPOPT_PLURAL_CATEGORY_MANY));
assertEquals(u"test get identifier: ", "other",
- udispopt_getPluralCategoryIdentifier(UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_OTHER));
+ udispopt_getPluralCategoryIdentifier(UDISPOPT_PLURAL_CATEGORY_OTHER));
assertEquals(u"test get identifier: ", "undefined",
- udispopt_getNounClassIdentifier(UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_UNDEFINED));
+ udispopt_getNounClassIdentifier(UDISPOPT_NOUN_CLASS_UNDEFINED));
assertEquals(u"test get identifier: ", "other",
- udispopt_getNounClassIdentifier(UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_OTHER));
+ udispopt_getNounClassIdentifier(UDISPOPT_NOUN_CLASS_OTHER));
assertEquals(u"test get identifier: ", "neuter",
- udispopt_getNounClassIdentifier(UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER));
+ udispopt_getNounClassIdentifier(UDISPOPT_NOUN_CLASS_NEUTER));
assertEquals(u"test get identifier: ", "feminine",
- udispopt_getNounClassIdentifier(UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE));
+ udispopt_getNounClassIdentifier(UDISPOPT_NOUN_CLASS_FEMININE));
assertEquals(u"test get identifier: ", "masculine",
- udispopt_getNounClassIdentifier(UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE));
+ udispopt_getNounClassIdentifier(UDISPOPT_NOUN_CLASS_MASCULINE));
assertEquals(u"test get identifier: ", "animate",
- udispopt_getNounClassIdentifier(UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_ANIMATE));
+ udispopt_getNounClassIdentifier(UDISPOPT_NOUN_CLASS_ANIMATE));
assertEquals(u"test get identifier: ", "inanimate",
- udispopt_getNounClassIdentifier(UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_INANIMATE));
+ udispopt_getNounClassIdentifier(UDISPOPT_NOUN_CLASS_INANIMATE));
assertEquals(u"test get identifier: ", "personal",
- udispopt_getNounClassIdentifier(UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_PERSONAL));
+ udispopt_getNounClassIdentifier(UDISPOPT_NOUN_CLASS_PERSONAL));
assertEquals(u"test get identifier: ", "common",
- udispopt_getNounClassIdentifier(UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_COMMON));
+ udispopt_getNounClassIdentifier(UDISPOPT_NOUN_CLASS_COMMON));
}
void DisplayOptionsTest::testDisplayOptionsFromIdentifier() {
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_UNDEFINED,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_UNDEFINED,
udispopt_fromGrammaticalCaseIdentifier(""));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_UNDEFINED,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_UNDEFINED,
udispopt_fromGrammaticalCaseIdentifier("undefined"));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_ABLATIVE,
udispopt_fromGrammaticalCaseIdentifier("ablative"));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ACCUSATIVE,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_ACCUSATIVE,
udispopt_fromGrammaticalCaseIdentifier("accusative"));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_COMITATIVE,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_COMITATIVE,
udispopt_fromGrammaticalCaseIdentifier("comitative"));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_DATIVE,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_DATIVE,
udispopt_fromGrammaticalCaseIdentifier("dative"));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_ERGATIVE,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_ERGATIVE,
udispopt_fromGrammaticalCaseIdentifier("ergative"));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_GENITIVE,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_GENITIVE,
udispopt_fromGrammaticalCaseIdentifier("genitive"));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_INSTRUMENTAL,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_INSTRUMENTAL,
udispopt_fromGrammaticalCaseIdentifier("instrumental"));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_LOCATIVE,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_LOCATIVE,
udispopt_fromGrammaticalCaseIdentifier("locative"));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_LOCATIVE_COPULATIVE,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_LOCATIVE_COPULATIVE,
udispopt_fromGrammaticalCaseIdentifier("locative_copulative"));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_NOMINATIVE,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_NOMINATIVE,
udispopt_fromGrammaticalCaseIdentifier("nominative"));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_OBLIQUE,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_OBLIQUE,
udispopt_fromGrammaticalCaseIdentifier("oblique"));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_PREPOSITIONAL,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_PREPOSITIONAL,
udispopt_fromGrammaticalCaseIdentifier("prepositional"));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_SOCIATIVE,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_SOCIATIVE,
udispopt_fromGrammaticalCaseIdentifier("sociative"));
- assertEquals(u"test from identifier: ", UDisplayOptionsGrammaticalCase::UDISPOPT_GRAMMATICAL_CASE_VOCATIVE,
+ assertEquals(u"test from identifier: ", UDISPOPT_GRAMMATICAL_CASE_VOCATIVE,
udispopt_fromGrammaticalCaseIdentifier("vocative"));
- assertEquals(u"test from identifier: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_UNDEFINED,
+ assertEquals(u"test from identifier: ", UDISPOPT_PLURAL_CATEGORY_UNDEFINED,
udispopt_fromPluralCategoryIdentifier(""));
- assertEquals(u"test from identifier: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_UNDEFINED,
+ assertEquals(u"test from identifier: ", UDISPOPT_PLURAL_CATEGORY_UNDEFINED,
udispopt_fromPluralCategoryIdentifier("undefined"));
- assertEquals(u"test from identifier: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_ZERO,
+ assertEquals(u"test from identifier: ", UDISPOPT_PLURAL_CATEGORY_ZERO,
udispopt_fromPluralCategoryIdentifier("zero"));
- assertEquals(u"test from identifier: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_ONE,
+ assertEquals(u"test from identifier: ", UDISPOPT_PLURAL_CATEGORY_ONE,
udispopt_fromPluralCategoryIdentifier("one"));
- assertEquals(u"test from identifier: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_TWO,
+ assertEquals(u"test from identifier: ", UDISPOPT_PLURAL_CATEGORY_TWO,
udispopt_fromPluralCategoryIdentifier("two"));
- assertEquals(u"test from identifier: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_FEW,
+ assertEquals(u"test from identifier: ", UDISPOPT_PLURAL_CATEGORY_FEW,
udispopt_fromPluralCategoryIdentifier("few"));
- assertEquals(u"test from identifier: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_MANY,
+ assertEquals(u"test from identifier: ", UDISPOPT_PLURAL_CATEGORY_MANY,
udispopt_fromPluralCategoryIdentifier("many"));
- assertEquals(u"test from identifier: ", UDisplayOptionsPluralCategory::UDISPOPT_PLURAL_CATEGORY_OTHER,
+ assertEquals(u"test from identifier: ", UDISPOPT_PLURAL_CATEGORY_OTHER,
udispopt_fromPluralCategoryIdentifier("other"));
- assertEquals(u"test from identifier: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_UNDEFINED,
+ assertEquals(u"test from identifier: ", UDISPOPT_NOUN_CLASS_UNDEFINED,
udispopt_fromNounClassIdentifier(""));
- assertEquals(u"test from identifier: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_UNDEFINED,
+ assertEquals(u"test from identifier: ", UDISPOPT_NOUN_CLASS_UNDEFINED,
udispopt_fromNounClassIdentifier("undefined"));
- assertEquals(u"test from identifier: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_OTHER,
+ assertEquals(u"test from identifier: ", UDISPOPT_NOUN_CLASS_OTHER,
udispopt_fromNounClassIdentifier("other"));
- assertEquals(u"test from identifier: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER,
+ assertEquals(u"test from identifier: ", UDISPOPT_NOUN_CLASS_NEUTER,
udispopt_fromNounClassIdentifier("neuter"));
- assertEquals(u"test from identifier: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE,
+ assertEquals(u"test from identifier: ", UDISPOPT_NOUN_CLASS_FEMININE,
udispopt_fromNounClassIdentifier("feminine"));
- assertEquals(u"test from identifier: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE,
+ assertEquals(u"test from identifier: ", UDISPOPT_NOUN_CLASS_MASCULINE,
udispopt_fromNounClassIdentifier("masculine"));
- assertEquals(u"test from identifier: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_ANIMATE,
+ assertEquals(u"test from identifier: ", UDISPOPT_NOUN_CLASS_ANIMATE,
udispopt_fromNounClassIdentifier("animate"));
- assertEquals(u"test from identifier: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_INANIMATE,
+ assertEquals(u"test from identifier: ", UDISPOPT_NOUN_CLASS_INANIMATE,
udispopt_fromNounClassIdentifier("inanimate"));
- assertEquals(u"test from identifier: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_PERSONAL,
+ assertEquals(u"test from identifier: ", UDISPOPT_NOUN_CLASS_PERSONAL,
udispopt_fromNounClassIdentifier("personal"));
- assertEquals(u"test from identifier: ", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_COMMON,
+ assertEquals(u"test from identifier: ", UDISPOPT_NOUN_CLASS_COMMON,
udispopt_fromNounClassIdentifier("common"));
}
diff --git a/icu4c/source/test/intltest/numbertest_api.cpp b/icu4c/source/test/intltest/numbertest_api.cpp
index 3472e6d..674250a 100644
--- a/icu4c/source/test/intltest/numbertest_api.cpp
+++ b/icu4c/source/test/intltest/numbertest_api.cpp
@@ -2447,44 +2447,44 @@
const char *unitIdentifier;
const UDisplayOptionsNounClass expectedNounClass;
} cases[] = {
- {"de", "inch", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
- {"de", "yard", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER},
- {"de", "meter", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
- {"de", "liter", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
- {"de", "second", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE},
- {"de", "minute", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE},
- {"de", "hour", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE},
- {"de", "day", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
- {"de", "year", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER},
- {"de", "gram", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER},
- {"de", "watt", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER},
- {"de", "bit", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER},
- {"de", "byte", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER},
+ {"de", "inch", UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"de", "yard", UDISPOPT_NOUN_CLASS_NEUTER},
+ {"de", "meter", UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"de", "liter", UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"de", "second", UDISPOPT_NOUN_CLASS_FEMININE},
+ {"de", "minute", UDISPOPT_NOUN_CLASS_FEMININE},
+ {"de", "hour", UDISPOPT_NOUN_CLASS_FEMININE},
+ {"de", "day", UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"de", "year", UDISPOPT_NOUN_CLASS_NEUTER},
+ {"de", "gram", UDISPOPT_NOUN_CLASS_NEUTER},
+ {"de", "watt", UDISPOPT_NOUN_CLASS_NEUTER},
+ {"de", "bit", UDISPOPT_NOUN_CLASS_NEUTER},
+ {"de", "byte", UDISPOPT_NOUN_CLASS_NEUTER},
- {"fr", "inch", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
- {"fr", "yard", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
- {"fr", "meter", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
- {"fr", "liter", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
- {"fr", "second", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE},
- {"fr", "minute", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE},
- {"fr", "hour", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE},
- {"fr", "day", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
- {"fr", "year", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
- {"fr", "gram", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"fr", "inch", UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"fr", "yard", UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"fr", "meter", UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"fr", "liter", UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"fr", "second", UDISPOPT_NOUN_CLASS_FEMININE},
+ {"fr", "minute", UDISPOPT_NOUN_CLASS_FEMININE},
+ {"fr", "hour", UDISPOPT_NOUN_CLASS_FEMININE},
+ {"fr", "day", UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"fr", "year", UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"fr", "gram", UDISPOPT_NOUN_CLASS_MASCULINE},
// grammaticalFeatures deriveCompound "per" rule takes the gender of the
// numerator unit:
- {"de", "meter-per-hour", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
- {"fr", "meter-per-hour", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"de", "meter-per-hour", UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"fr", "meter-per-hour", UDISPOPT_NOUN_CLASS_MASCULINE},
{"af", "meter-per-hour",
- UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_UNDEFINED}, // ungendered language
+ UDISPOPT_NOUN_CLASS_UNDEFINED}, // ungendered language
// French "times" takes gender from first value, German takes the
// second. Prefix and power does not have impact on gender for these
// languages:
- {"de", "square-decimeter-square-second", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE},
+ {"de", "square-decimeter-square-second", UDISPOPT_NOUN_CLASS_FEMININE},
{"fr", "square-decimeter-square-second",
- UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
+ UDISPOPT_NOUN_CLASS_MASCULINE},
// TODO(icu-units#149): percent and permille bypasses LongNameHandler
// when unitWidth is not FULL_NAME:
@@ -2493,8 +2493,8 @@
// {"fr", "percent", UNounClass::UNOUN_CLASS_MASCULINE},
// Built-in units whose simple units lack gender in the CLDR data file
- {"de", "kilopascal", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER},
- {"fr", "kilopascal", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"de", "kilopascal", UDISPOPT_NOUN_CLASS_NEUTER},
+ {"fr", "kilopascal", UDISPOPT_NOUN_CLASS_MASCULINE},
// {"de", "pascal", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "pascal", UNounClass::UNOUN_CLASS_UNDEFINED},
@@ -2503,8 +2503,8 @@
// {"de", "radian", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "arc-minute", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "arc-second", UNounClass::UNOUN_CLASS_UNDEFINED},
- {"de", "square-yard", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER}, // POWER
- {"de", "square-inch", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
+ {"de", "square-yard", UDISPOPT_NOUN_CLASS_NEUTER}, // POWER
+ {"de", "square-inch", UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
// {"de", "dunam", UNounClass::UNOUN_CLASS_ UNDEFINED},
// {"de", "karat", UNounClass::UNOUN_CLASS_ UNDEFINED},
// {"de", "milligram-ofglucose-per-deciliter", UNounClass::UNOUN_CLASS_UNDEFINED}, // COMPOUND,
@@ -2516,21 +2516,21 @@
// {"de", "permyriad", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "mole", UNounClass::UNOUN_CLASS_UNDEFINED},
{"de", "liter-per-kilometer",
- UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // COMPOUND
- {"de", "petabyte", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER}, // PREFIX
- {"de", "terabit", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER}, // PREFIX
+ UDISPOPT_NOUN_CLASS_MASCULINE}, // COMPOUND
+ {"de", "petabyte", UDISPOPT_NOUN_CLASS_NEUTER}, // PREFIX
+ {"de", "terabit", UDISPOPT_NOUN_CLASS_NEUTER}, // PREFIX
// {"de", "century", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "decade", UNounClass::UNOUN_CLASS_UNDEFINED},
- {"de", "millisecond", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE}, // PREFIX
- {"de", "microsecond", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE}, // PREFIX
- {"de", "nanosecond", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE}, // PREFIX
+ {"de", "millisecond", UDISPOPT_NOUN_CLASS_FEMININE}, // PREFIX
+ {"de", "microsecond", UDISPOPT_NOUN_CLASS_FEMININE}, // PREFIX
+ {"de", "nanosecond", UDISPOPT_NOUN_CLASS_FEMININE}, // PREFIX
// {"de", "ampere", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "milliampere", UNounClass::UNOUN_CLASS_UNDEFINED}, // PREFIX, ampere
// {"de", "ohm", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "calorie", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "kilojoule", UNounClass::UNOUN_CLASS_UNDEFINED}, // PREFIX, joule
// {"de", "joule", UNounClass::UNOUN_CLASS_ UNDEFINED},
- {"de", "kilowatt-hour", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE}, // COMPOUND
+ {"de", "kilowatt-hour", UDISPOPT_NOUN_CLASS_FEMININE}, // COMPOUND
// {"de", "electronvolt", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "british-thermal-unit", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "therm-us", UNounClass::UNOUN_CLASS_UNDEFINED},
@@ -2549,9 +2549,9 @@
// {"de", "dot-per-inch", UNounClass::UNOUN_CLASS_UNDEFINED}, // COMPOUND, dot
// {"de", "dot", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "earth-radius", UNounClass::UNOUN_CLASS_UNDEFINED},
- {"de", "decimeter", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
- {"de", "micrometer", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
- {"de", "nanometer", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
+ {"de", "decimeter", UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
+ {"de", "micrometer", UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
+ {"de", "nanometer", UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
// {"de", "light-year", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "astronomical-unit", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "furlong", UNounClass::UNOUN_CLASS_UNDEFINED},
@@ -2568,8 +2568,8 @@
// {"de", "stone", UNounClass::UNOUN_CLASS_ UNDEFINED},
// {"de", "ounce-troy", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "carat", UNounClass::UNOUN_CLASS_ UNDEFINED},
- {"de", "gigawatt", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER}, // PREFIX
- {"de", "milliwatt", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER}, // PREFIX
+ {"de", "gigawatt", UDISPOPT_NOUN_CLASS_NEUTER}, // PREFIX
+ {"de", "milliwatt", UDISPOPT_NOUN_CLASS_NEUTER}, // PREFIX
// {"de", "horsepower", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "millimeter-ofhg", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "pound-force-per-square-inch", UNounClass::UNOUN_CLASS_UNDEFINED}, // COMPOUND,
@@ -2582,16 +2582,16 @@
// {"de", "hectopascal", UNounClass::UNOUN_CLASS_UNDEFINED}, // PREFIX, pascal, neuter?
// {"de", "megapascal", UNounClass::UNOUN_CLASS_UNDEFINED}, // PREFIX, pascal, neuter?
// {"de", "knot", UNounClass::UNOUN_CLASS_UNDEFINED},
- {"de", "pound-force-foot", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // COMPOUND
- {"de", "newton-meter", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // COMPOUND
- {"de", "cubic-kilometer", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
- {"de", "cubic-yard", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_NEUTER}, // POWER
- {"de", "cubic-inch", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
- {"de", "megaliter", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
- {"de", "hectoliter", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
+ {"de", "pound-force-foot", UDISPOPT_NOUN_CLASS_MASCULINE}, // COMPOUND
+ {"de", "newton-meter", UDISPOPT_NOUN_CLASS_MASCULINE}, // COMPOUND
+ {"de", "cubic-kilometer", UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
+ {"de", "cubic-yard", UDISPOPT_NOUN_CLASS_NEUTER}, // POWER
+ {"de", "cubic-inch", UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
+ {"de", "megaliter", UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
+ {"de", "hectoliter", UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
// {"de", "pint-metric", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "cup-metric", UNounClass::UNOUN_CLASS_UNDEFINED},
- {"de", "acre-foot", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // COMPOUND
+ {"de", "acre-foot", UDISPOPT_NOUN_CLASS_MASCULINE}, // COMPOUND
// {"de", "bushel", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"de", "barrel", UNounClass::UNOUN_CLASS_UNDEFINED},
// Units missing gender in German also misses gender in French:
@@ -2599,12 +2599,12 @@
// {"fr", "radian", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "arc-minute", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "arc-second", UNounClass::UNOUN_CLASS_UNDEFINED},
- {"fr", "square-yard", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
- {"fr", "square-inch", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
+ {"fr", "square-yard", UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
+ {"fr", "square-inch", UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
// {"fr", "dunam", UNounClass::UNOUN_CLASS_ UNDEFINED},
// {"fr", "karat", UNounClass::UNOUN_CLASS_ UNDEFINED},
{"fr", "milligram-ofglucose-per-deciliter",
- UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // COMPOUND
+ UDISPOPT_NOUN_CLASS_MASCULINE}, // COMPOUND
// {"fr", "millimole-per-liter", UNounClass::UNOUN_CLASS_UNDEFINED}, //
// COMPOUND, mole
// {"fr", "permillion", UNounClass::UNOUN_CLASS_UNDEFINED},
@@ -2612,14 +2612,14 @@
// {"fr", "permyriad", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "mole", UNounClass::UNOUN_CLASS_UNDEFINED},
{"fr", "liter-per-kilometer",
- UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // COMPOUND
+ UDISPOPT_NOUN_CLASS_MASCULINE}, // COMPOUND
// {"fr", "petabyte", UNounClass::UNOUN_CLASS_UNDEFINED}, // PREFIX
// {"fr", "terabit", UNounClass::UNOUN_CLASS_UNDEFINED}, // PREFIX
// {"fr", "century", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "decade", UNounClass::UNOUN_CLASS_UNDEFINED},
- {"fr", "millisecond", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE}, // PREFIX
- {"fr", "microsecond", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE}, // PREFIX
- {"fr", "nanosecond", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE}, // PREFIX
+ {"fr", "millisecond", UDISPOPT_NOUN_CLASS_FEMININE}, // PREFIX
+ {"fr", "microsecond", UDISPOPT_NOUN_CLASS_FEMININE}, // PREFIX
+ {"fr", "nanosecond", UDISPOPT_NOUN_CLASS_FEMININE}, // PREFIX
// {"fr", "ampere", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "milliampere", UNounClass::UNOUN_CLASS_UNDEFINED}, // PREFIX, ampere
// {"fr", "ohm", UNounClass::UNOUN_CLASS_UNDEFINED},
@@ -2645,9 +2645,9 @@
// {"fr", "dot-per-inch", UNounClass::UNOUN_CLASS_UNDEFINED}, // COMPOUND, dot
// {"fr", "dot", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "earth-radius", UNounClass::UNOUN_CLASS_UNDEFINED},
- {"fr", "decimeter", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
- {"fr", "micrometer", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
- {"fr", "nanometer", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
+ {"fr", "decimeter", UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
+ {"fr", "micrometer", UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
+ {"fr", "nanometer", UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
// {"fr", "light-year", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "astronomical-unit", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "furlong", UNounClass::UNOUN_CLASS_UNDEFINED},
@@ -2667,10 +2667,10 @@
// {"fr", "gigawatt", UNounClass::UNOUN_CLASS_UNDEFINED}, // PREFIX
// {"fr", "milliwatt", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "horsepower", UNounClass::UNOUN_CLASS_UNDEFINED},
- {"fr", "millimeter-ofhg", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"fr", "millimeter-ofhg", UDISPOPT_NOUN_CLASS_MASCULINE},
// {"fr", "pound-force-per-square-inch", UNounClass::UNOUN_CLASS_UNDEFINED}, // COMPOUND,
// pound-force
- {"fr", "inch-ofhg", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"fr", "inch-ofhg", UDISPOPT_NOUN_CLASS_MASCULINE},
// {"fr", "bar", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "millibar", UNounClass::UNOUN_CLASS_UNDEFINED}, // PREFIX, bar
// {"fr", "atmosphere", UNounClass::UNOUN_CLASS_UNDEFINED},
@@ -2680,19 +2680,19 @@
// {"fr", "knot", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "pound-force-foot", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "newton-meter", UNounClass::UNOUN_CLASS_UNDEFINED},
- {"fr", "cubic-kilometer", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
- {"fr", "cubic-yard", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
- {"fr", "cubic-inch", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
- {"fr", "megaliter", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
- {"fr", "hectoliter", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
+ {"fr", "cubic-kilometer", UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
+ {"fr", "cubic-yard", UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
+ {"fr", "cubic-inch", UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
+ {"fr", "megaliter", UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
+ {"fr", "hectoliter", UDISPOPT_NOUN_CLASS_MASCULINE}, // PREFIX
// {"fr", "pint-metric", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "cup-metric", UNounClass::UNOUN_CLASS_UNDEFINED},
- {"fr", "acre-foot", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_FEMININE}, // COMPOUND
+ {"fr", "acre-foot", UDISPOPT_NOUN_CLASS_FEMININE}, // COMPOUND
// {"fr", "bushel", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "barrel", UNounClass::UNOUN_CLASS_UNDEFINED},
// Some more French units missing gender:
// {"fr", "degree", UNounClass::UNOUN_CLASS_UNDEFINED},
- {"fr", "square-meter", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
+ {"fr", "square-meter", UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
// {"fr", "terabyte", UNounClass::UNOUN_CLASS_UNDEFINED}, // PREFIX, byte
// {"fr", "gigabyte", UNounClass::UNOUN_CLASS_UNDEFINED}, // PREFIX, byte
// {"fr", "gigabit", UNounClass::UNOUN_CLASS_UNDEFINED}, // PREFIX, bit
@@ -2704,10 +2704,10 @@
// {"fr", "bit", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "volt", UNounClass::UNOUN_CLASS_UNDEFINED},
// {"fr", "watt", UNounClass::UNOUN_CLASS_UNDEFINED},
- {"fr", "cubic-meter", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
+ {"fr", "cubic-meter", UDISPOPT_NOUN_CLASS_MASCULINE}, // POWER
// gender-lacking builtins within compound units
- {"de", "newton-meter-per-second", UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_MASCULINE},
+ {"de", "newton-meter-per-second", UDISPOPT_NOUN_CLASS_MASCULINE},
// TODO(ICU-21494): determine whether list genders behave as follows,
// and implement proper getListGender support (covering more than just
@@ -2747,7 +2747,7 @@
fn = formatter.formatDouble(1.1, status);
status.assertSuccess();
assertEquals("getNounClasses for a not supported language",
- UDisplayOptionsNounClass::UDISPOPT_NOUN_CLASS_UNDEFINED, fn.getNounClass(status));
+ UDISPOPT_NOUN_CLASS_UNDEFINED, fn.getNounClass(status));
}
void NumberFormatterApiTest::unitGender() {
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/number/FormattedNumber.java b/icu4j/main/classes/core/src/com/ibm/icu/number/FormattedNumber.java
index da18f1d..5fe560d 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/number/FormattedNumber.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/number/FormattedNumber.java
@@ -10,10 +10,10 @@
import com.ibm.icu.impl.Utility;
import com.ibm.icu.impl.number.DecimalQuantity;
import com.ibm.icu.text.ConstrainedFieldPosition;
+import com.ibm.icu.text.DisplayOptions;
import com.ibm.icu.text.FormattedValue;
import com.ibm.icu.text.PluralRules.IFixedDecimal;
import com.ibm.icu.util.MeasureUnit;
-import com.ibm.icu.text.DisplayOptions.NounClass;
/**
* The result of a number formatting operation. This class allows the result to be exported in several
@@ -144,8 +144,8 @@
* @return NounClass
* @draft ICU 71.
*/
- public NounClass getNounClass() {
- return NounClass.fromIdentifier(this.gender);
+ public DisplayOptions.NounClass getNounClass() {
+ return DisplayOptions.NounClass.fromIdentifier(this.gender);
}
/**
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/text/DisplayOptions.java b/icu4j/main/classes/core/src/com/ibm/icu/text/DisplayOptions.java
index ec10bc4..ebf0fa7 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/text/DisplayOptions.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/text/DisplayOptions.java
@@ -12,7 +12,7 @@
* class, ... etc. It currently supports enums, but may be extended in the future to have other
* types of data. It replaces a DisplayContext[] as a method parameter.
* <p>
- * NOTE: this class is Immutable, and uses a Builder interface.
+ * NOTE: This class is Immutable, and uses a Builder interface.
* <p>For example:
* {@code DisplayOptions x =
* DisplayOptions.builder()
@@ -24,725 +24,718 @@
* @draft ICU 72
*/
public final class DisplayOptions {
+ private final GrammaticalCase grammaticalCase;
+ private final NounClass nounClass;
+ private final PluralCategory pluralCategory;
+ private final Capitalization capitalization;
+ private final NameStyle nameStyle;
+ private final DisplayLength displayLength;
+ private final SubstituteHandling substituteHandling;
- private final GrammaticalCase grammaticalCase;
- private final NounClass nounClass;
- private final PluralCategory pluralCategory;
- private final Capitalization capitalization;
- private final NameStyle nameStyle;
- private final DisplayLength displayLength;
- private final SubstituteHandling substituteHandling;
-
- private DisplayOptions(Builder builder) {
- this.grammaticalCase = builder.grammaticalCase;
- this.nounClass = builder.nounClass;
- this.pluralCategory = builder.pluralCategory;
- this.capitalization = builder.capitalization;
- this.nameStyle = builder.nameStyle;
- this.displayLength = builder.displayLength;
- this.substituteHandling = builder.substituteHandling;
- }
-
- /**
- * Creates a builder with the {@code UNDEFINED} value for all the parameters.
- *
- * @return Builder
- * @draft ICU 72
- */
- public static Builder builder() {
- return new Builder();
- }
-
- /**
- * Creates a builder with the same parameters from this object.
- *
- * @return Builder
- * @draft ICU 72
- */
- public Builder copyToBuilder() {
- return new Builder(this);
- }
-
- /**
- * Gets the grammatical case.
- *
- * @return GrammaticalCase
- * @draft ICU 72
- */
- public GrammaticalCase getGrammaticalCase() {
- return this.grammaticalCase;
- }
-
- /**
- * Gets the noun class.
- *
- * @return NounClass
- * @draft ICU 72
- */
- public NounClass getNounClass() {
- return this.nounClass;
- }
-
- /**
- * Gets the plural category.
- *
- * @return PluralCategory
- * @draft ICU 72
- */
- public PluralCategory getPluralCategory() {
- return this.pluralCategory;
- }
-
-
- /**
- * Gets the capitalization.
- *
- * @return Capitalization
- * @draft ICU 72
- */
- public Capitalization getCapitalization() {
- return this.capitalization;
- }
-
-
- /**
- * Gets the name style.
- *
- * @return NameStyle
- * @draft ICU 72
- */
- public NameStyle getNameStyle() {
- return this.nameStyle;
- }
-
-
- /**
- * Gets the display length.
- *
- * @return DisplayLength
- * @draft ICU 72
- */
- public DisplayLength getDisplayLength() {
- return this.displayLength;
- }
-
-
- /**
- * Gets the substitute handling.
- *
- * @return SubstituteHandling
- * @draft ICU 72
- */
- public SubstituteHandling getSubstituteHandling() {
- return this.substituteHandling;
- }
-
- /**
- * Responsible for building {@code DisplayOptions}.
- *
- * @draft ICU 72
- */
- public static class Builder {
-
- private GrammaticalCase grammaticalCase;
- private NounClass nounClass;
- private PluralCategory pluralCategory;
- private Capitalization capitalization;
- private NameStyle nameStyle;
- private DisplayLength displayLength;
- private SubstituteHandling substituteHandling;
+ private DisplayOptions(Builder builder) {
+ this.grammaticalCase = builder.grammaticalCase;
+ this.nounClass = builder.nounClass;
+ this.pluralCategory = builder.pluralCategory;
+ this.capitalization = builder.capitalization;
+ this.nameStyle = builder.nameStyle;
+ this.displayLength = builder.displayLength;
+ this.substituteHandling = builder.substituteHandling;
+ }
/**
- * Creates a {@code DisplayOptions.Builder} with the default values.
+ * Creates a builder with the {@code UNDEFINED} value for all the parameters.
*
* @return Builder
* @draft ICU 72
*/
- private Builder() {
- this.grammaticalCase = GrammaticalCase.UNDEFINED;
- this.nounClass = NounClass.UNDEFINED;
- this.pluralCategory = PluralCategory.UNDEFINED;
- this.capitalization = Capitalization.UNDEFINED;
- this.nameStyle = NameStyle.UNDEFINED;
- this.displayLength = DisplayLength.UNDEFINED;
- this.substituteHandling = SubstituteHandling.UNDEFINED;
+ public static Builder builder() {
+ return new Builder();
}
/**
- * Creates a {@code Builder} with all the information from a {@code DisplayOptions}.
+ * Creates a builder with the same parameters from this object.
*
* @return Builder
* @draft ICU 72
*/
- private Builder(DisplayOptions displayOptions) {
- this.grammaticalCase = displayOptions.grammaticalCase;
- this.nounClass = displayOptions.nounClass;
- this.pluralCategory = displayOptions.pluralCategory;
- this.capitalization = displayOptions.capitalization;
- this.nameStyle = displayOptions.nameStyle;
- this.displayLength = displayOptions.displayLength;
- this.substituteHandling = displayOptions.substituteHandling;
+ public Builder copyToBuilder() {
+ return new Builder(this);
}
/**
- * Sets the grammatical case.
+ * Gets the grammatical case.
*
- * @return Builder
+ * @return GrammaticalCase
* @draft ICU 72
*/
- public Builder setGrammaticalCase(GrammaticalCase grammaticalCase) {
- this.grammaticalCase = grammaticalCase;
- return this;
+ public GrammaticalCase getGrammaticalCase() {
+ return this.grammaticalCase;
}
/**
- * Sets the noun class.
+ * Gets the noun class.
*
- * @return Builder
+ * @return NounClass
* @draft ICU 72
*/
- public Builder setNounClass(NounClass nounClass) {
- this.nounClass = nounClass;
- return this;
+ public NounClass getNounClass() {
+ return this.nounClass;
}
/**
- * Sets the plural category.
+ * Gets the plural category.
*
- * @return Builder
+ * @return PluralCategory
* @draft ICU 72
*/
- public Builder setPluralCategory(PluralCategory pluralCategory) {
- this.pluralCategory = pluralCategory;
- return this;
+ public PluralCategory getPluralCategory() {
+ return this.pluralCategory;
}
/**
- * Sets the capitalization.
+ * Gets the capitalization.
*
- * @return Builder
+ * @return Capitalization
* @draft ICU 72
*/
- public Builder setCapitalization(Capitalization capitalization) {
- this.capitalization = capitalization;
- return this;
+ public Capitalization getCapitalization() {
+ return this.capitalization;
}
/**
- * Sets the name style.
+ * Gets the name style.
*
- * @return Builder
+ * @return NameStyle
* @draft ICU 72
*/
- public Builder setNameStyle(NameStyle nameStyle) {
- this.nameStyle = nameStyle;
- return this;
+ public NameStyle getNameStyle() {
+ return this.nameStyle;
}
/**
- * Sets the display length.
+ * Gets the display length.
*
- * @return Builder
+ * @return DisplayLength
* @draft ICU 72
*/
- public Builder setDisplayLength(DisplayLength displayLength) {
- this.displayLength = displayLength;
- return this;
+ public DisplayLength getDisplayLength() {
+ return this.displayLength;
}
/**
- * Sets the substitute handling.
+ * Gets the substitute handling.
*
- * @return Builder
+ * @return SubstituteHandling
* @draft ICU 72
*/
- public Builder setSubstituteHandling(SubstituteHandling substituteHandling) {
- this.substituteHandling = substituteHandling;
- return this;
+ public SubstituteHandling getSubstituteHandling() {
+ return this.substituteHandling;
}
/**
- * Builds the display options.
- *
- * @return DisplayOptions
- * @draft ICU 72
- */
- public DisplayOptions build() {
- DisplayOptions displayOptions = new DisplayOptions(this);
- return displayOptions;
- }
- }
-
- /**
- * Represents all the grammatical noun classes that are supported by CLDR.
- *
- * @draft ICU 71
- */
- public enum NounClass {
- /**
- * A possible setting for NounClass. The noun class context to be used is unknown (this is the
- * default value).
+ * Responsible for building {@code DisplayOptions}.
*
* @draft ICU 72
*/
- UNDEFINED("undefined"),
- /**
- * @draft ICU 71
- */
- OTHER("other"),
- /**
- * @draft ICU 71
- */
- NEUTER("neuter"),
- /**
- * @draft ICU 71
- */
- FEMININE("feminine"),
- /**
- * @draft ICU 71
- */
- MASCULINE("masculine"),
- /**
- * @draft ICU 71
- */
- ANIMATE("animate"),
- /**
- * @draft ICU 71
- */
- INANIMATE("inanimate"),
- /**
- * @draft ICU 71
- */
- PERSONAL("personal"),
- /**
- * @draft ICU 71
- */
- COMMON("common");
+ public static class Builder {
+ private GrammaticalCase grammaticalCase;
+ private NounClass nounClass;
+ private PluralCategory pluralCategory;
+ private Capitalization capitalization;
+ private NameStyle nameStyle;
+ private DisplayLength displayLength;
+ private SubstituteHandling substituteHandling;
- private final String identifier;
-
- private NounClass(String identifier) {
- this.identifier = identifier;
- }
-
-
- /**
- * Unmodifiable List of all noun classes constants. List version of {@link #values()}.
- *
- * @draft ICU 72
- */
- public static final List<NounClass> VALUES =
- Collections.unmodifiableList(Arrays.asList(NounClass.values()));
-
- /**
- * @return the lowercase CLDR keyword string for the noun class.
- * @draft ICU 72
- */
- public final String getIdentifier() {
- return this.identifier;
- }
-
- /**
- * @param identifier in lower case such as "feminine" or "masculine"
- * @return the plural category corresponding to the identifier, or {@code UNDEFINED}
- * @draft ICU 72
- */
- public static final NounClass fromIdentifier(String identifier) {
- if (identifier == null) {
- return NounClass.UNDEFINED;
- }
-
- for (NounClass nounClass : VALUES) {
- if (identifier.equals(nounClass.getIdentifier())) {
- return nounClass;
+ /**
+ * Creates a {@code DisplayOptions.Builder} with the default values.
+ *
+ * @draft ICU 72
+ */
+ private Builder() {
+ this.grammaticalCase = GrammaticalCase.UNDEFINED;
+ this.nounClass = NounClass.UNDEFINED;
+ this.pluralCategory = PluralCategory.UNDEFINED;
+ this.capitalization = Capitalization.UNDEFINED;
+ this.nameStyle = NameStyle.UNDEFINED;
+ this.displayLength = DisplayLength.UNDEFINED;
+ this.substituteHandling = SubstituteHandling.UNDEFINED;
}
- }
- return NounClass.UNDEFINED;
- }
- }
-
- /**
- * Represents all the name styles.
- *
- * @draft ICU 72
- */
- public enum NameStyle {
- /**
- * A possible setting for NameStyle. The NameStyle context to be used is unknown (this is the
- * default value).
- *
- * @draft ICU 72
- */
- UNDEFINED,
- /**
- * Use standard names when generating a locale name, e.g. en_GB displays as 'English (United
- * Kingdom)'.
- *
- * @draft ICU 72
- */
- STANDARD_NAMES,
-
- /**
- * Use dialect names, when generating a locale name, e.g. en_GB displays as 'British English'.
- *
- * @draft ICU 72
- */
- DIALECT_NAMES;
-
- /**
- * Unmodifiable List of all name styles constants. List version of {@link #values()}.
- *
- * @draft ICU 72
- */
- public static final List<NameStyle> VALUES =
- Collections.unmodifiableList(Arrays.asList(NameStyle.values()));
- }
-
- /**
- * Represents all the substitute handlings.
- *
- * @draft ICU 72
- */
- public enum SubstituteHandling {
- /**
- * A possible setting for SubstituteHandling. The SubstituteHandling context to be used is
- * unknown (this is the default value).
- *
- * @draft ICU 72
- */
- UNDEFINED,
- /**
- * Returns a fallback value (e.g., the input code) when no data is available. This is the
- * default behaviour.
- *
- * @draft ICU 72
- */
- SUBSTITUTE,
-
- /**
- * Returns a null value when no data is available.
- *
- * @draft ICU 72
- */
- NO_SUBSTITUTE;
-
- /**
- * Unmodifiable List of all substitute handlings constants. List version of {@link #values()}.
- *
- * @draft ICU 72
- */
- public static final List<SubstituteHandling> VALUES =
- Collections.unmodifiableList(Arrays.asList(SubstituteHandling.values()));
- }
-
- /**
- * Represents all the display lengths.
- *
- * @draft ICU 72
- */
- public enum DisplayLength {
- /**
- * A possible setting for DisplayLength. The DisplayLength context to be used is unknown (this
- * is the default value).
- *
- * @draft ICU 72
- */
- UNDEFINED,
- /**
- * Uses full names when generating a locale name, e.g. "United States" for US.
- *
- * @draft ICU 72
- */
- LENGTH_FULL,
-
- /**
- * Use short names when generating a locale name, e.g. "U.S." for US.
- *
- * @draft ICU 72
- */
- LENGTH_SHORT;
-
- /**
- * Unmodifiable List of all display lengths constants. List version of {@link #values()}.
- *
- * @draft ICU 72
- */
- public static final List<DisplayLength> VALUES =
- Collections.unmodifiableList(Arrays.asList(DisplayLength.values()));
- }
-
- /**
- * Represents all the capitalization options.
- *
- * @draft ICU 72
- */
- public enum Capitalization {
- /**
- * A possible setting for Capitalization. The capitalization context to be used is unknown (this
- * is the default value).
- *
- * @draft ICU 72
- */
- UNDEFINED,
-
- /**
- * The capitalization context if a date, date symbol or display name is to be formatted with
- * capitalization appropriate for the beginning of a sentence.
- *
- * @draft ICU 72
- */
- BEGINNING_OF_SENTENCE,
-
- /**
- * The capitalization context if a date, date symbol or display name is to be formatted with
- * capitalization appropriate for the middle of a sentence.
- *
- * @draft ICU 72
- */
- MIDDLE_OF_SENTENCE,
-
- /**
- * The capitalization context if a date, date symbol or display name is to be formatted with
- * capitalization appropriate for stand-alone usage such as an isolated name on a calendar
- * page.
- *
- * @draft ICU 72
- */
- STANDALONE,
-
- /**
- * The capitalization context if a date, date symbol or display name is to be formatted with
- * capitalization appropriate for a user-interface list or menu item.
- *
- * @draft ICU 72
- */
- UI_LIST_OR_MENU;
-
-
- /**
- * Unmodifiable List of all the capitalizations constants. List version of {@link #values()}.
- *
- * @draft ICU 72
- */
- public static final List<Capitalization> VALUES =
- Collections.unmodifiableList(Arrays.asList(Capitalization.values()));
-
- }
-
- /**
- * Standard CLDR plural category constants. See http://www.unicode.org/reports/tr35/tr35-numbers.html#Language_Plural_Rules
- *
- * @draft ICU 72
- */
- public enum PluralCategory {
-
- /**
- * A possible setting for PluralCategory. The plural category context to be used is unknown
- * (this is the default value).
- *
- * @draft ICU 72
- */
- UNDEFINED("undefined"),
-
- /**
- * @draft ICU 72
- */
- ZERO("zero"),
-
- /**
- * @draft ICU 72
- */
- ONE("one"),
-
- /**
- * @draft ICU 72
- */
- TWO("two"),
-
- /**
- * @draft ICU 72
- */
- FEW("few"),
-
- /**
- * @draft ICU 72
- */
- MANY("many"),
-
- /**
- * @draft ICU 72
- */
- OTHER("other");
-
- private final String identifier;
-
- private PluralCategory(String identifier) {
- this.identifier = identifier;
- }
-
-
- /**
- * Unmodifiable List of all plural categories constants. List version of {@link #values()}.
- *
- * @draft ICU 72
- */
- public static final List<PluralCategory> VALUES =
- Collections.unmodifiableList(Arrays.asList(PluralCategory.values()));
-
- /**
- * @return the lowercase CLDR keyword string for the plural category
- * @draft ICU 72
- */
- public final String getIdentifier() {
- return this.identifier;
- }
-
- /**
- * @param identifier in lower case such as "few" or "other"
- * @return the plural category corresponding to the identifier, or {@code UNDEFINED}
- * @draft ICU 72
- */
- public static final PluralCategory fromIdentifier(String identifier) {
- if (identifier == null) {
- return PluralCategory.UNDEFINED;
- }
-
- for (PluralCategory pluralCategory : VALUES) {
- if (identifier.equals(pluralCategory.getIdentifier())) {
- return pluralCategory;
+ /**
+ * Creates a {@code Builder} with all the information from a {@code DisplayOptions}.
+ *
+ * @param displayOptions Options to be copied.
+ * @draft ICU 72
+ */
+ private Builder(DisplayOptions displayOptions) {
+ this.grammaticalCase = displayOptions.grammaticalCase;
+ this.nounClass = displayOptions.nounClass;
+ this.pluralCategory = displayOptions.pluralCategory;
+ this.capitalization = displayOptions.capitalization;
+ this.nameStyle = displayOptions.nameStyle;
+ this.displayLength = displayOptions.displayLength;
+ this.substituteHandling = displayOptions.substituteHandling;
}
- }
- return PluralCategory.UNDEFINED;
- }
- }
-
- /**
- * Represents all the grammatical cases that are supported by CLDR.
- *
- * @draft ICU 72
- */
- public enum GrammaticalCase {
-
- /**
- * A possible setting for GrammaticalCase. The grammatical case context to be used is unknown
- * (this is the default value).
- *
- * @draft ICU 72
- */
- UNDEFINED("undefined"),
-
- /**
- * @draft ICU 72
- */
- ABLATIVE("ablative"),
-
- /**
- * @draft ICU 72
- */
- ACCUSATIVE("accusative"),
-
- /**
- * @draft ICU 72
- */
- COMITATIVE("comitative"),
-
- /**
- * @draft ICU 72
- */
- DATIVE("dative"),
-
- /**
- * @draft ICU 72
- */
- ERGATIVE("ergative"),
-
- /**
- * @draft ICU 72
- */
- GENITIVE("genitive"),
-
- /**
- * @draft ICU 72
- */
- INSTRUMENTAL("instrumental"),
-
- /**
- * @draft ICU 72
- */
- LOCATIVE("locative"),
-
- /**
- * @draft ICU 72
- */
- LOCATIVE_COPULATIVE("locative_copulative"),
-
- /**
- * @draft ICU 72
- */
- NOMINATIVE("nominative"),
-
- /**
- * @draft ICU 72
- */
- OBLIQUE("oblique"),
-
- /**
- * @draft ICU 72
- */
- PREPOSITIONAL("prepositional"),
-
- /**
- * @draft ICU 72
- */
- SOCIATIVE("sociative"),
-
- /**
- * @draft ICU 72
- */
- VOCATIVE("vocative");
-
- private final String identifier;
-
- private GrammaticalCase(String identifier) {
- this.identifier = identifier;
- }
-
- /**
- * Unmodifiable List of all grammatical cases constants. List version of {@link #values()}.
- *
- * @draft ICU 72
- */
- public static final List<GrammaticalCase> VALUES =
- Collections.unmodifiableList(Arrays.asList(GrammaticalCase.values()));
-
-
- /**
- * @return the lowercase CLDR keyword string for the grammatical case.
- * @draft ICU 72
- */
- public final String getIdentifier() {
- return this.identifier;
- }
-
- /**
- * @param identifier in lower case such as "dative" or "nominative"
- * @return the plural category corresponding to the identifier, or {@code UNDEFINED}
- * @draft ICU 72
- */
- public static final GrammaticalCase fromIdentifier(String identifier) {
- if (identifier == null) {
- return GrammaticalCase.UNDEFINED;
- }
-
- for (GrammaticalCase grammaticalCase : VALUES) {
- if (identifier.equals(grammaticalCase.getIdentifier())) {
- return grammaticalCase;
+ /**
+ * Sets the grammatical case.
+ *
+ * @param grammaticalCase The grammatical case.
+ * @return Builder
+ * @draft ICU 72
+ */
+ public Builder setGrammaticalCase(GrammaticalCase grammaticalCase) {
+ this.grammaticalCase = grammaticalCase;
+ return this;
}
- }
- return GrammaticalCase.UNDEFINED;
+ /**
+ * Sets the noun class.
+ *
+ * @param nounClass The noun class.
+ * @return Builder
+ * @draft ICU 72
+ */
+ public Builder setNounClass(NounClass nounClass) {
+ this.nounClass = nounClass;
+ return this;
+ }
+
+ /**
+ * Sets the plural category.
+ *
+ * @param pluralCategory The plural category.
+ * @return Builder
+ * @draft ICU 72
+ */
+ public Builder setPluralCategory(PluralCategory pluralCategory) {
+ this.pluralCategory = pluralCategory;
+ return this;
+ }
+
+ /**
+ * Sets the capitalization.
+ *
+ * @param capitalization The capitalization.
+ * @return Builder
+ * @draft ICU 72
+ */
+ public Builder setCapitalization(Capitalization capitalization) {
+ this.capitalization = capitalization;
+ return this;
+ }
+
+ /**
+ * Sets the name style.
+ *
+ * @param nameStyle The name style.
+ * @return Builder
+ * @draft ICU 72
+ */
+ public Builder setNameStyle(NameStyle nameStyle) {
+ this.nameStyle = nameStyle;
+ return this;
+ }
+
+ /**
+ * Sets the display length.
+ *
+ * @param displayLength The display length.
+ * @return Builder
+ * @draft ICU 72
+ */
+ public Builder setDisplayLength(DisplayLength displayLength) {
+ this.displayLength = displayLength;
+ return this;
+ }
+
+ /**
+ * Sets the substitute handling.
+ *
+ * @param substituteHandling The substitute handling.
+ * @return Builder
+ * @draft ICU 72
+ */
+ public Builder setSubstituteHandling(SubstituteHandling substituteHandling) {
+ this.substituteHandling = substituteHandling;
+ return this;
+ }
+
+ /**
+ * Builds the display options.
+ *
+ * @return DisplayOptions
+ * @draft ICU 72
+ */
+ public DisplayOptions build() {
+ DisplayOptions displayOptions = new DisplayOptions(this);
+ return displayOptions;
+ }
}
- }
+
+ /**
+ * Represents all the grammatical noun classes that are supported by CLDR.
+ *
+ * @draft ICU 72
+ */
+ public enum NounClass {
+ /**
+ * A possible setting for NounClass. The noun class context to be used is unknown (this is the
+ * default value).
+ *
+ * @draft ICU 72
+ */
+ UNDEFINED("undefined"),
+ /**
+ * @draft ICU 72
+ */
+ OTHER("other"),
+ /**
+ * @draft ICU 72
+ */
+ NEUTER("neuter"),
+ /**
+ * @draft ICU 72
+ */
+ FEMININE("feminine"),
+ /**
+ * @draft ICU 72
+ */
+ MASCULINE("masculine"),
+ /**
+ * @draft ICU 72
+ */
+ ANIMATE("animate"),
+ /**
+ * @draft ICU 72
+ */
+ INANIMATE("inanimate"),
+ /**
+ * @draft ICU 72
+ */
+ PERSONAL("personal"),
+ /**
+ * @draft ICU 72
+ */
+ COMMON("common");
+
+ private final String identifier;
+
+ private NounClass(String identifier) {
+ this.identifier = identifier;
+ }
+
+ /**
+ * Unmodifiable List of all noun classes constants. List version of {@link #values()}.
+ *
+ * @draft ICU 72
+ */
+ public static final List<NounClass> VALUES =
+ Collections.unmodifiableList(Arrays.asList(NounClass.values()));
+
+ /**
+ * @return the lowercase CLDR keyword string for the noun class.
+ * @draft ICU 72
+ */
+ public final String getIdentifier() {
+ return this.identifier;
+ }
+
+ /**
+ * @param identifier in lower case such as "feminine" or "masculine"
+ * @return the plural category corresponding to the identifier, or {@code UNDEFINED}
+ * @draft ICU 72
+ */
+ public static final NounClass fromIdentifier(String identifier) {
+ if (identifier == null) {
+ return NounClass.UNDEFINED;
+ }
+
+ for (NounClass nounClass : VALUES) {
+ if (identifier.equals(nounClass.getIdentifier())) {
+ return nounClass;
+ }
+ }
+
+ return NounClass.UNDEFINED;
+ }
+ }
+
+ /**
+ * Represents all the name styles.
+ *
+ * @draft ICU 72
+ */
+ public enum NameStyle {
+ /**
+ * A possible setting for NameStyle. The NameStyle context to be used is unknown (this is the
+ * default value).
+ *
+ * @draft ICU 72
+ */
+ UNDEFINED,
+ /**
+ * Use standard names when generating a locale name, e.g. en_GB displays as 'English (United
+ * Kingdom)'.
+ *
+ * @draft ICU 72
+ */
+ STANDARD_NAMES,
+
+ /**
+ * Use dialect names, when generating a locale name, e.g. en_GB displays as 'British English'.
+ *
+ * @draft ICU 72
+ */
+ DIALECT_NAMES;
+
+ /**
+ * Unmodifiable List of all name styles constants. List version of {@link #values()}.
+ *
+ * @draft ICU 72
+ */
+ public static final List<NameStyle> VALUES =
+ Collections.unmodifiableList(Arrays.asList(NameStyle.values()));
+ }
+
+ /**
+ * Represents all the substitute handlings.
+ *
+ * @draft ICU 72
+ */
+ public enum SubstituteHandling {
+ /**
+ * A possible setting for SubstituteHandling. The SubstituteHandling context to be used is
+ * unknown (this is the default value).
+ *
+ * @draft ICU 72
+ */
+ UNDEFINED,
+ /**
+ * Returns a fallback value (e.g., the input code) when no data is available. This is the
+ * default behaviour.
+ *
+ * @draft ICU 72
+ */
+ SUBSTITUTE,
+
+ /**
+ * Returns a null value when no data is available.
+ *
+ * @draft ICU 72
+ */
+ NO_SUBSTITUTE;
+
+ /**
+ * Unmodifiable List of all substitute handlings constants. List version of {@link #values()}.
+ *
+ * @draft ICU 72
+ */
+ public static final List<SubstituteHandling> VALUES =
+ Collections.unmodifiableList(Arrays.asList(SubstituteHandling.values()));
+ }
+
+ /**
+ * Represents all the display lengths.
+ *
+ * @draft ICU 72
+ */
+ public enum DisplayLength {
+ /**
+ * A possible setting for DisplayLength. The DisplayLength context to be used is unknown (this
+ * is the default value).
+ *
+ * @draft ICU 72
+ */
+ UNDEFINED,
+ /**
+ * Uses full names when generating a locale name, e.g. "United States" for US.
+ *
+ * @draft ICU 72
+ */
+ LENGTH_FULL,
+
+ /**
+ * Use short names when generating a locale name, e.g. "U.S." for US.
+ *
+ * @draft ICU 72
+ */
+ LENGTH_SHORT;
+
+ /**
+ * Unmodifiable List of all display lengths constants. List version of {@link #values()}.
+ *
+ * @draft ICU 72
+ */
+ public static final List<DisplayLength> VALUES =
+ Collections.unmodifiableList(Arrays.asList(DisplayLength.values()));
+ }
+
+ /**
+ * Represents all the capitalization options.
+ *
+ * @draft ICU 72
+ */
+ public enum Capitalization {
+ /**
+ * A possible setting for Capitalization. The capitalization context to be used is unknown (this
+ * is the default value).
+ *
+ * @draft ICU 72
+ */
+ UNDEFINED,
+
+ /**
+ * The capitalization context if a date, date symbol or display name is to be formatted with
+ * capitalization appropriate for the beginning of a sentence.
+ *
+ * @draft ICU 72
+ */
+ BEGINNING_OF_SENTENCE,
+
+ /**
+ * The capitalization context if a date, date symbol or display name is to be formatted with
+ * capitalization appropriate for the middle of a sentence.
+ *
+ * @draft ICU 72
+ */
+ MIDDLE_OF_SENTENCE,
+
+ /**
+ * The capitalization context if a date, date symbol or display name is to be formatted with
+ * capitalization appropriate for stand-alone usage such as an isolated name on a calendar
+ * page.
+ *
+ * @draft ICU 72
+ */
+ STANDALONE,
+
+ /**
+ * The capitalization context if a date, date symbol or display name is to be formatted with
+ * capitalization appropriate for a user-interface list or menu item.
+ *
+ * @draft ICU 72
+ */
+ UI_LIST_OR_MENU;
+
+ /**
+ * Unmodifiable List of all the capitalizations constants. List version of {@link #values()}.
+ *
+ * @draft ICU 72
+ */
+ public static final List<Capitalization> VALUES =
+ Collections.unmodifiableList(Arrays.asList(Capitalization.values()));
+ }
+
+ /**
+ * Standard CLDR plural category constants. See http://www.unicode.org/reports/tr35/tr35-numbers.html#Language_Plural_Rules
+ *
+ * @draft ICU 72
+ */
+ public enum PluralCategory {
+ /**
+ * A possible setting for PluralCategory. The plural category context to be used is unknown
+ * (this is the default value).
+ *
+ * @draft ICU 72
+ */
+ UNDEFINED("undefined"),
+
+ /**
+ * @draft ICU 72
+ */
+ ZERO("zero"),
+
+ /**
+ * @draft ICU 72
+ */
+ ONE("one"),
+
+ /**
+ * @draft ICU 72
+ */
+ TWO("two"),
+
+ /**
+ * @draft ICU 72
+ */
+ FEW("few"),
+
+ /**
+ * @draft ICU 72
+ */
+ MANY("many"),
+
+ /**
+ * @draft ICU 72
+ */
+ OTHER("other");
+
+ private final String identifier;
+
+ private PluralCategory(String identifier) {
+ this.identifier = identifier;
+ }
+
+ /**
+ * Unmodifiable List of all plural categories constants. List version of {@link #values()}.
+ *
+ * @draft ICU 72
+ */
+ public static final List<PluralCategory> VALUES =
+ Collections.unmodifiableList(Arrays.asList(PluralCategory.values()));
+
+ /**
+ * @return the lowercase CLDR keyword string for the plural category
+ * @draft ICU 72
+ */
+ public final String getIdentifier() {
+ return this.identifier;
+ }
+
+ /**
+ * @param identifier in lower case such as "few" or "other"
+ * @return the plural category corresponding to the identifier, or {@code UNDEFINED}
+ * @draft ICU 72
+ */
+ public static final PluralCategory fromIdentifier(String identifier) {
+ if (identifier == null) {
+ return PluralCategory.UNDEFINED;
+ }
+
+ for (PluralCategory pluralCategory : VALUES) {
+ if (identifier.equals(pluralCategory.getIdentifier())) {
+ return pluralCategory;
+ }
+ }
+
+ return PluralCategory.UNDEFINED;
+ }
+ }
+
+ /**
+ * Represents all the grammatical cases that are supported by CLDR.
+ *
+ * @draft ICU 72
+ */
+ public enum GrammaticalCase {
+ /**
+ * A possible setting for GrammaticalCase. The grammatical case context to be used is unknown
+ * (this is the default value).
+ *
+ * @draft ICU 72
+ */
+ UNDEFINED("undefined"),
+
+ /**
+ * @draft ICU 72
+ */
+ ABLATIVE("ablative"),
+
+ /**
+ * @draft ICU 72
+ */
+ ACCUSATIVE("accusative"),
+
+ /**
+ * @draft ICU 72
+ */
+ COMITATIVE("comitative"),
+
+ /**
+ * @draft ICU 72
+ */
+ DATIVE("dative"),
+
+ /**
+ * @draft ICU 72
+ */
+ ERGATIVE("ergative"),
+
+ /**
+ * @draft ICU 72
+ */
+ GENITIVE("genitive"),
+
+ /**
+ * @draft ICU 72
+ */
+ INSTRUMENTAL("instrumental"),
+
+ /**
+ * @draft ICU 72
+ */
+ LOCATIVE("locative"),
+
+ /**
+ * @draft ICU 72
+ */
+ LOCATIVE_COPULATIVE("locative_copulative"),
+
+ /**
+ * @draft ICU 72
+ */
+ NOMINATIVE("nominative"),
+
+ /**
+ * @draft ICU 72
+ */
+ OBLIQUE("oblique"),
+
+ /**
+ * @draft ICU 72
+ */
+ PREPOSITIONAL("prepositional"),
+
+ /**
+ * @draft ICU 72
+ */
+ SOCIATIVE("sociative"),
+
+ /**
+ * @draft ICU 72
+ */
+ VOCATIVE("vocative");
+
+ private final String identifier;
+
+ private GrammaticalCase(String identifier) {
+ this.identifier = identifier;
+ }
+
+ /**
+ * Unmodifiable List of all grammatical cases constants. List version of {@link #values()}.
+ *
+ * @draft ICU 72
+ */
+ public static final List<GrammaticalCase> VALUES =
+ Collections.unmodifiableList(Arrays.asList(GrammaticalCase.values()));
+
+ /**
+ * @return the lowercase CLDR keyword string for the grammatical case.
+ * @draft ICU 72
+ */
+ public final String getIdentifier() {
+ return this.identifier;
+ }
+
+ /**
+ * @param identifier in lower case such as "dative" or "nominative"
+ * @return the plural category corresponding to the identifier, or {@code UNDEFINED}
+ * @draft ICU 72
+ */
+ public static final GrammaticalCase fromIdentifier(String identifier) {
+ if (identifier == null) {
+ return GrammaticalCase.UNDEFINED;
+ }
+
+ for (GrammaticalCase grammaticalCase : VALUES) {
+ if (identifier.equals(grammaticalCase.getIdentifier())) {
+ return grammaticalCase;
+ }
+ }
+
+ return GrammaticalCase.UNDEFINED;
+ }
+ }
}
diff --git a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/text/DisplayOptionsTest.java b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/text/DisplayOptionsTest.java
index e81dace..8ffedfb 100644
--- a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/text/DisplayOptionsTest.java
+++ b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/text/DisplayOptionsTest.java
@@ -3,7 +3,11 @@
package com.ibm.icu.dev.test.text;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+import com.ibm.icu.dev.test.TestFmwk;
import com.ibm.icu.text.DisplayOptions;
import com.ibm.icu.text.DisplayOptions.Capitalization;
import com.ibm.icu.text.DisplayOptions.DisplayLength;
@@ -13,308 +17,301 @@
import com.ibm.icu.text.DisplayOptions.PluralCategory;
import com.ibm.icu.text.DisplayOptions.SubstituteHandling;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
-
-import com.ibm.icu.dev.test.TestFmwk;
-
-
/**
* @test
* @summary Test of DisplayOptions Class.
*/
@RunWith(JUnit4.class)
-public class DisplayOptionsTest extends TestFmwk {
+public class DisplayOptionsTest extends TestFmwk {
- @Test
- public void TestDisplayOptionsDefault(){
- DisplayOptions displayOptions = DisplayOptions.builder().build();
- assertEquals("Test setting parameters", GrammaticalCase.UNDEFINED,
- displayOptions.getGrammaticalCase());
- assertEquals("Test default values: ", NounClass.UNDEFINED, displayOptions.getNounClass());
- assertEquals("Test default values: ", PluralCategory.UNDEFINED,
- displayOptions.getPluralCategory());
- assertEquals("Test default values: ", Capitalization.UNDEFINED,
- displayOptions.getCapitalization());
- assertEquals("Test default values: ", NameStyle.UNDEFINED, displayOptions.getNameStyle());
- assertEquals("Test default values: ", DisplayLength.UNDEFINED,
- displayOptions.getDisplayLength());
- assertEquals("Test default values: ", SubstituteHandling.UNDEFINED,
- displayOptions.getSubstituteHandling());
- }
+ @Test
+ public void TestDisplayOptionsDefault(){
+ DisplayOptions displayOptions = DisplayOptions.builder().build();
+ assertEquals("Test setting parameters", GrammaticalCase.UNDEFINED,
+ displayOptions.getGrammaticalCase());
+ assertEquals("Test default values: ", NounClass.UNDEFINED, displayOptions.getNounClass());
+ assertEquals("Test default values: ", PluralCategory.UNDEFINED,
+ displayOptions.getPluralCategory());
+ assertEquals("Test default values: ", Capitalization.UNDEFINED,
+ displayOptions.getCapitalization());
+ assertEquals("Test default values: ", NameStyle.UNDEFINED, displayOptions.getNameStyle());
+ assertEquals("Test default values: ", DisplayLength.UNDEFINED,
+ displayOptions.getDisplayLength());
+ assertEquals("Test default values: ", SubstituteHandling.UNDEFINED,
+ displayOptions.getSubstituteHandling());
+ }
- @Test
- public void TestDisplayOptionsEachElement() {
- DisplayOptions displayOptions = DisplayOptions.builder()
- .setGrammaticalCase(GrammaticalCase.ABLATIVE).build();
- assertEquals("Test setting parameters: ", GrammaticalCase.ABLATIVE,
- displayOptions.getGrammaticalCase());
+ @Test
+ public void TestDisplayOptionsEachElement() {
+ DisplayOptions displayOptions = DisplayOptions.builder()
+ .setGrammaticalCase(GrammaticalCase.ABLATIVE).build();
+ assertEquals("Test setting parameters: ", GrammaticalCase.ABLATIVE,
+ displayOptions.getGrammaticalCase());
- displayOptions = DisplayOptions.builder().setNounClass(NounClass.PERSONAL).build();
- assertEquals("Test setting parameters: ", NounClass.PERSONAL,
- displayOptions.getNounClass());
+ displayOptions = DisplayOptions.builder().setNounClass(NounClass.PERSONAL).build();
+ assertEquals("Test setting parameters: ", NounClass.PERSONAL,
+ displayOptions.getNounClass());
- displayOptions = DisplayOptions.builder().setPluralCategory(PluralCategory.FEW).build();
- assertEquals("Test setting parameters: ", PluralCategory.FEW,
- displayOptions.getPluralCategory());
+ displayOptions = DisplayOptions.builder().setPluralCategory(PluralCategory.FEW).build();
+ assertEquals("Test setting parameters: ", PluralCategory.FEW,
+ displayOptions.getPluralCategory());
- displayOptions = DisplayOptions.builder()
- .setCapitalization(Capitalization.BEGINNING_OF_SENTENCE).build();
- assertEquals("Test setting parameters: ", Capitalization.BEGINNING_OF_SENTENCE,
- displayOptions.getCapitalization());
+ displayOptions = DisplayOptions.builder()
+ .setCapitalization(Capitalization.BEGINNING_OF_SENTENCE).build();
+ assertEquals("Test setting parameters: ", Capitalization.BEGINNING_OF_SENTENCE,
+ displayOptions.getCapitalization());
- displayOptions = DisplayOptions.builder().setNameStyle(NameStyle.STANDARD_NAMES).build();
- assertEquals("Test setting parameters: ", NameStyle.STANDARD_NAMES,
- displayOptions.getNameStyle());
+ displayOptions = DisplayOptions.builder().setNameStyle(NameStyle.STANDARD_NAMES).build();
+ assertEquals("Test setting parameters: ", NameStyle.STANDARD_NAMES,
+ displayOptions.getNameStyle());
- displayOptions = DisplayOptions.builder().setDisplayLength(DisplayLength.LENGTH_FULL)
- .build();
- assertEquals("Test setting parameters: ", DisplayLength.LENGTH_FULL,
- displayOptions.getDisplayLength());
+ displayOptions = DisplayOptions.builder().setDisplayLength(DisplayLength.LENGTH_FULL)
+ .build();
+ assertEquals("Test setting parameters: ", DisplayLength.LENGTH_FULL,
+ displayOptions.getDisplayLength());
- displayOptions = DisplayOptions.builder()
- .setSubstituteHandling(SubstituteHandling.NO_SUBSTITUTE).build();
- assertEquals("Test setting parameters: ", SubstituteHandling.NO_SUBSTITUTE,
- displayOptions.getSubstituteHandling());
- }
+ displayOptions = DisplayOptions.builder()
+ .setSubstituteHandling(SubstituteHandling.NO_SUBSTITUTE).build();
+ assertEquals("Test setting parameters: ", SubstituteHandling.NO_SUBSTITUTE,
+ displayOptions.getSubstituteHandling());
+ }
- @Test
- public void TestDisplayOptionsUpdating() {
- DisplayOptions displayOptions = DisplayOptions.builder()
- .setGrammaticalCase(GrammaticalCase.ABLATIVE).build();
- assertEquals("Test updating parameters: ", GrammaticalCase.ABLATIVE,
- displayOptions.getGrammaticalCase());
- assertEquals("Test updating parameters: ", NounClass.UNDEFINED,
- displayOptions.getNounClass());
- assertEquals("Test updating parameters: ", PluralCategory.UNDEFINED,
- displayOptions.getPluralCategory());
- assertEquals("Test updating parameters: ", Capitalization.UNDEFINED,
- displayOptions.getCapitalization());
- assertEquals("Test updating parameters: ", NameStyle.UNDEFINED,
- displayOptions.getNameStyle());
- assertEquals("Test updating parameters: ", DisplayLength.UNDEFINED,
- displayOptions.getDisplayLength());
- assertEquals("Test updating parameters: ", SubstituteHandling.UNDEFINED,
- displayOptions.getSubstituteHandling());
+ @Test
+ public void TestDisplayOptionsUpdating() {
+ DisplayOptions displayOptions = DisplayOptions.builder()
+ .setGrammaticalCase(GrammaticalCase.ABLATIVE).build();
+ assertEquals("Test updating parameters: ", GrammaticalCase.ABLATIVE,
+ displayOptions.getGrammaticalCase());
+ assertEquals("Test updating parameters: ", NounClass.UNDEFINED,
+ displayOptions.getNounClass());
+ assertEquals("Test updating parameters: ", PluralCategory.UNDEFINED,
+ displayOptions.getPluralCategory());
+ assertEquals("Test updating parameters: ", Capitalization.UNDEFINED,
+ displayOptions.getCapitalization());
+ assertEquals("Test updating parameters: ", NameStyle.UNDEFINED,
+ displayOptions.getNameStyle());
+ assertEquals("Test updating parameters: ", DisplayLength.UNDEFINED,
+ displayOptions.getDisplayLength());
+ assertEquals("Test updating parameters: ", SubstituteHandling.UNDEFINED,
+ displayOptions.getSubstituteHandling());
- displayOptions = displayOptions.copyToBuilder().setNounClass(NounClass.PERSONAL).build();
- assertEquals("Test updating parameters: ", GrammaticalCase.ABLATIVE,
- displayOptions.getGrammaticalCase());
- assertEquals("Test updating parameters: ", NounClass.PERSONAL,
- displayOptions.getNounClass());
- assertEquals("Test updating parameters: ", PluralCategory.UNDEFINED,
- displayOptions.getPluralCategory());
- assertEquals("Test updating parameters: ", Capitalization.UNDEFINED,
- displayOptions.getCapitalization());
- assertEquals("Test updating parameters: ", NameStyle.UNDEFINED,
- displayOptions.getNameStyle());
- assertEquals("Test updating parameters: ", DisplayLength.UNDEFINED,
- displayOptions.getDisplayLength());
- assertEquals("Test updating parameters: ", SubstituteHandling.UNDEFINED,
- displayOptions.getSubstituteHandling());
+ displayOptions = displayOptions.copyToBuilder().setNounClass(NounClass.PERSONAL).build();
+ assertEquals("Test updating parameters: ", GrammaticalCase.ABLATIVE,
+ displayOptions.getGrammaticalCase());
+ assertEquals("Test updating parameters: ", NounClass.PERSONAL,
+ displayOptions.getNounClass());
+ assertEquals("Test updating parameters: ", PluralCategory.UNDEFINED,
+ displayOptions.getPluralCategory());
+ assertEquals("Test updating parameters: ", Capitalization.UNDEFINED,
+ displayOptions.getCapitalization());
+ assertEquals("Test updating parameters: ", NameStyle.UNDEFINED,
+ displayOptions.getNameStyle());
+ assertEquals("Test updating parameters: ", DisplayLength.UNDEFINED,
+ displayOptions.getDisplayLength());
+ assertEquals("Test updating parameters: ", SubstituteHandling.UNDEFINED,
+ displayOptions.getSubstituteHandling());
- displayOptions = displayOptions.copyToBuilder().setPluralCategory(PluralCategory.FEW)
- .build();
- assertEquals("Test updating parameters: ", GrammaticalCase.ABLATIVE,
- displayOptions.getGrammaticalCase());
- assertEquals("Test updating parameters: ", NounClass.PERSONAL,
- displayOptions.getNounClass());
- assertEquals("Test updating parameters: ", PluralCategory.FEW,
- displayOptions.getPluralCategory());
- assertEquals("Test updating parameters: ", Capitalization.UNDEFINED,
- displayOptions.getCapitalization());
- assertEquals("Test updating parameters: ", NameStyle.UNDEFINED,
- displayOptions.getNameStyle());
- assertEquals("Test updating parameters: ", DisplayLength.UNDEFINED,
- displayOptions.getDisplayLength());
- assertEquals("Test updating parameters: ", SubstituteHandling.UNDEFINED,
- displayOptions.getSubstituteHandling());
+ displayOptions = displayOptions.copyToBuilder().setPluralCategory(PluralCategory.FEW)
+ .build();
+ assertEquals("Test updating parameters: ", GrammaticalCase.ABLATIVE,
+ displayOptions.getGrammaticalCase());
+ assertEquals("Test updating parameters: ", NounClass.PERSONAL,
+ displayOptions.getNounClass());
+ assertEquals("Test updating parameters: ", PluralCategory.FEW,
+ displayOptions.getPluralCategory());
+ assertEquals("Test updating parameters: ", Capitalization.UNDEFINED,
+ displayOptions.getCapitalization());
+ assertEquals("Test updating parameters: ", NameStyle.UNDEFINED,
+ displayOptions.getNameStyle());
+ assertEquals("Test updating parameters: ", DisplayLength.UNDEFINED,
+ displayOptions.getDisplayLength());
+ assertEquals("Test updating parameters: ", SubstituteHandling.UNDEFINED,
+ displayOptions.getSubstituteHandling());
- displayOptions = displayOptions.copyToBuilder()
- .setCapitalization(Capitalization.BEGINNING_OF_SENTENCE).build();
- assertEquals("Test updating parameters: ", GrammaticalCase.ABLATIVE,
- displayOptions.getGrammaticalCase());
- assertEquals("Test updating parameters: ", NounClass.PERSONAL,
- displayOptions.getNounClass());
- assertEquals("Test updating parameters: ", PluralCategory.FEW,
- displayOptions.getPluralCategory());
- assertEquals("Test updating parameters: ", Capitalization.BEGINNING_OF_SENTENCE,
- displayOptions.getCapitalization());
- assertEquals("Test updating parameters: ", NameStyle.UNDEFINED,
- displayOptions.getNameStyle());
- assertEquals("Test updating parameters: ", DisplayLength.UNDEFINED,
- displayOptions.getDisplayLength());
- assertEquals("Test updating parameters: ", SubstituteHandling.UNDEFINED,
- displayOptions.getSubstituteHandling());
+ displayOptions = displayOptions.copyToBuilder()
+ .setCapitalization(Capitalization.BEGINNING_OF_SENTENCE).build();
+ assertEquals("Test updating parameters: ", GrammaticalCase.ABLATIVE,
+ displayOptions.getGrammaticalCase());
+ assertEquals("Test updating parameters: ", NounClass.PERSONAL,
+ displayOptions.getNounClass());
+ assertEquals("Test updating parameters: ", PluralCategory.FEW,
+ displayOptions.getPluralCategory());
+ assertEquals("Test updating parameters: ", Capitalization.BEGINNING_OF_SENTENCE,
+ displayOptions.getCapitalization());
+ assertEquals("Test updating parameters: ", NameStyle.UNDEFINED,
+ displayOptions.getNameStyle());
+ assertEquals("Test updating parameters: ", DisplayLength.UNDEFINED,
+ displayOptions.getDisplayLength());
+ assertEquals("Test updating parameters: ", SubstituteHandling.UNDEFINED,
+ displayOptions.getSubstituteHandling());
- displayOptions = displayOptions.copyToBuilder().setNameStyle(NameStyle.STANDARD_NAMES)
- .build();
- assertEquals("Test updating parameters: ", GrammaticalCase.ABLATIVE,
- displayOptions.getGrammaticalCase());
- assertEquals("Test updating parameters: ", NounClass.PERSONAL,
- displayOptions.getNounClass());
- assertEquals("Test updating parameters: ", PluralCategory.FEW,
- displayOptions.getPluralCategory());
- assertEquals("Test updating parameters: ", Capitalization.BEGINNING_OF_SENTENCE,
- displayOptions.getCapitalization());
- assertEquals("Test updating parameters: ", NameStyle.STANDARD_NAMES,
- displayOptions.getNameStyle());
- assertEquals("Test updating parameters: ", DisplayLength.UNDEFINED,
- displayOptions.getDisplayLength());
- assertEquals("Test updating parameters: ", SubstituteHandling.UNDEFINED,
- displayOptions.getSubstituteHandling());
+ displayOptions = displayOptions.copyToBuilder().setNameStyle(NameStyle.STANDARD_NAMES)
+ .build();
+ assertEquals("Test updating parameters: ", GrammaticalCase.ABLATIVE,
+ displayOptions.getGrammaticalCase());
+ assertEquals("Test updating parameters: ", NounClass.PERSONAL,
+ displayOptions.getNounClass());
+ assertEquals("Test updating parameters: ", PluralCategory.FEW,
+ displayOptions.getPluralCategory());
+ assertEquals("Test updating parameters: ", Capitalization.BEGINNING_OF_SENTENCE,
+ displayOptions.getCapitalization());
+ assertEquals("Test updating parameters: ", NameStyle.STANDARD_NAMES,
+ displayOptions.getNameStyle());
+ assertEquals("Test updating parameters: ", DisplayLength.UNDEFINED,
+ displayOptions.getDisplayLength());
+ assertEquals("Test updating parameters: ", SubstituteHandling.UNDEFINED,
+ displayOptions.getSubstituteHandling());
- displayOptions = displayOptions.copyToBuilder().setDisplayLength(DisplayLength.LENGTH_FULL)
- .build();
- assertEquals("Test updating parameters: ", GrammaticalCase.ABLATIVE,
- displayOptions.getGrammaticalCase());
- assertEquals("Test updating parameters: ", NounClass.PERSONAL,
- displayOptions.getNounClass());
- assertEquals("Test updating parameters: ", PluralCategory.FEW,
- displayOptions.getPluralCategory());
- assertEquals("Test updating parameters: ", Capitalization.BEGINNING_OF_SENTENCE,
- displayOptions.getCapitalization());
- assertEquals("Test updating parameters: ", NameStyle.STANDARD_NAMES,
- displayOptions.getNameStyle());
- assertEquals("Test updating parameters: ", DisplayLength.LENGTH_FULL,
- displayOptions.getDisplayLength());
- assertEquals("Test updating parameters: ", SubstituteHandling.UNDEFINED,
- displayOptions.getSubstituteHandling());
+ displayOptions = displayOptions.copyToBuilder().setDisplayLength(DisplayLength.LENGTH_FULL)
+ .build();
+ assertEquals("Test updating parameters: ", GrammaticalCase.ABLATIVE,
+ displayOptions.getGrammaticalCase());
+ assertEquals("Test updating parameters: ", NounClass.PERSONAL,
+ displayOptions.getNounClass());
+ assertEquals("Test updating parameters: ", PluralCategory.FEW,
+ displayOptions.getPluralCategory());
+ assertEquals("Test updating parameters: ", Capitalization.BEGINNING_OF_SENTENCE,
+ displayOptions.getCapitalization());
+ assertEquals("Test updating parameters: ", NameStyle.STANDARD_NAMES,
+ displayOptions.getNameStyle());
+ assertEquals("Test updating parameters: ", DisplayLength.LENGTH_FULL,
+ displayOptions.getDisplayLength());
+ assertEquals("Test updating parameters: ", SubstituteHandling.UNDEFINED,
+ displayOptions.getSubstituteHandling());
- displayOptions = displayOptions.copyToBuilder()
- .setSubstituteHandling(SubstituteHandling.NO_SUBSTITUTE).build();
- assertEquals("Test updating parameters: ", GrammaticalCase.ABLATIVE,
- displayOptions.getGrammaticalCase());
- assertEquals("Test updating parameters: ", NounClass.PERSONAL,
- displayOptions.getNounClass());
- assertEquals("Test updating parameters: ", PluralCategory.FEW,
- displayOptions.getPluralCategory());
- assertEquals("Test updating parameters: ", Capitalization.BEGINNING_OF_SENTENCE,
- displayOptions.getCapitalization());
- assertEquals("Test updating parameters: ", NameStyle.STANDARD_NAMES,
- displayOptions.getNameStyle());
- assertEquals("Test updating parameters: ", DisplayLength.LENGTH_FULL,
- displayOptions.getDisplayLength());
- assertEquals("Test updating parameters: ", SubstituteHandling.NO_SUBSTITUTE,
- displayOptions.getSubstituteHandling());
- }
+ displayOptions = displayOptions.copyToBuilder()
+ .setSubstituteHandling(SubstituteHandling.NO_SUBSTITUTE).build();
+ assertEquals("Test updating parameters: ", GrammaticalCase.ABLATIVE,
+ displayOptions.getGrammaticalCase());
+ assertEquals("Test updating parameters: ", NounClass.PERSONAL,
+ displayOptions.getNounClass());
+ assertEquals("Test updating parameters: ", PluralCategory.FEW,
+ displayOptions.getPluralCategory());
+ assertEquals("Test updating parameters: ", Capitalization.BEGINNING_OF_SENTENCE,
+ displayOptions.getCapitalization());
+ assertEquals("Test updating parameters: ", NameStyle.STANDARD_NAMES,
+ displayOptions.getNameStyle());
+ assertEquals("Test updating parameters: ", DisplayLength.LENGTH_FULL,
+ displayOptions.getDisplayLength());
+ assertEquals("Test updating parameters: ", SubstituteHandling.NO_SUBSTITUTE,
+ displayOptions.getSubstituteHandling());
+ }
- @Test
- public void TestDisplayOptionsGetIdentifier() {
- assertEquals("test get identifier: ", "undefined",
- GrammaticalCase.UNDEFINED.getIdentifier());
- assertEquals("test get identifier: ", "ablative", GrammaticalCase.ABLATIVE.getIdentifier());
- assertEquals("test get identifier: ", "accusative",
- GrammaticalCase.ACCUSATIVE.getIdentifier());
- assertEquals("test get identifier: ", "comitative",
- GrammaticalCase.COMITATIVE.getIdentifier());
- assertEquals("test get identifier: ", "dative", GrammaticalCase.DATIVE.getIdentifier());
- assertEquals("test get identifier: ", "ergative", GrammaticalCase.ERGATIVE.getIdentifier());
- assertEquals("test get identifier: ", "genitive", GrammaticalCase.GENITIVE.getIdentifier());
- assertEquals("test get identifier: ", "instrumental",
- GrammaticalCase.INSTRUMENTAL.getIdentifier());
- assertEquals("test get identifier: ", "locative", GrammaticalCase.LOCATIVE.getIdentifier());
- assertEquals("test get identifier: ", "locative_copulative",
- GrammaticalCase.LOCATIVE_COPULATIVE.getIdentifier());
- assertEquals("test get identifier: ", "nominative",
- GrammaticalCase.NOMINATIVE.getIdentifier());
- assertEquals("test get identifier: ", "oblique", GrammaticalCase.OBLIQUE.getIdentifier());
- assertEquals("test get identifier: ", "prepositional",
- GrammaticalCase.PREPOSITIONAL.getIdentifier());
- assertEquals("test get identifier: ", "sociative",
- GrammaticalCase.SOCIATIVE.getIdentifier());
- assertEquals("test get identifier: ", "vocative", GrammaticalCase.VOCATIVE.getIdentifier());
+ @Test
+ public void TestDisplayOptionsGetIdentifier() {
+ assertEquals("test get identifier: ", "undefined",
+ GrammaticalCase.UNDEFINED.getIdentifier());
+ assertEquals("test get identifier: ", "ablative", GrammaticalCase.ABLATIVE.getIdentifier());
+ assertEquals("test get identifier: ", "accusative",
+ GrammaticalCase.ACCUSATIVE.getIdentifier());
+ assertEquals("test get identifier: ", "comitative",
+ GrammaticalCase.COMITATIVE.getIdentifier());
+ assertEquals("test get identifier: ", "dative", GrammaticalCase.DATIVE.getIdentifier());
+ assertEquals("test get identifier: ", "ergative", GrammaticalCase.ERGATIVE.getIdentifier());
+ assertEquals("test get identifier: ", "genitive", GrammaticalCase.GENITIVE.getIdentifier());
+ assertEquals("test get identifier: ", "instrumental",
+ GrammaticalCase.INSTRUMENTAL.getIdentifier());
+ assertEquals("test get identifier: ", "locative", GrammaticalCase.LOCATIVE.getIdentifier());
+ assertEquals("test get identifier: ", "locative_copulative",
+ GrammaticalCase.LOCATIVE_COPULATIVE.getIdentifier());
+ assertEquals("test get identifier: ", "nominative",
+ GrammaticalCase.NOMINATIVE.getIdentifier());
+ assertEquals("test get identifier: ", "oblique", GrammaticalCase.OBLIQUE.getIdentifier());
+ assertEquals("test get identifier: ", "prepositional",
+ GrammaticalCase.PREPOSITIONAL.getIdentifier());
+ assertEquals("test get identifier: ", "sociative",
+ GrammaticalCase.SOCIATIVE.getIdentifier());
+ assertEquals("test get identifier: ", "vocative", GrammaticalCase.VOCATIVE.getIdentifier());
- assertEquals("test get identifier: ", "undefined",
- PluralCategory.UNDEFINED.getIdentifier());
- assertEquals("test get identifier: ", "zero", PluralCategory.ZERO.getIdentifier());
- assertEquals("test get identifier: ", "one", PluralCategory.ONE.getIdentifier());
- assertEquals("test get identifier: ", "two", PluralCategory.TWO.getIdentifier());
- assertEquals("test get identifier: ", "few", PluralCategory.FEW.getIdentifier());
- assertEquals("test get identifier: ", "many", PluralCategory.MANY.getIdentifier());
- assertEquals("test get identifier: ", "other", PluralCategory.OTHER.getIdentifier());
+ assertEquals("test get identifier: ", "undefined",
+ PluralCategory.UNDEFINED.getIdentifier());
+ assertEquals("test get identifier: ", "zero", PluralCategory.ZERO.getIdentifier());
+ assertEquals("test get identifier: ", "one", PluralCategory.ONE.getIdentifier());
+ assertEquals("test get identifier: ", "two", PluralCategory.TWO.getIdentifier());
+ assertEquals("test get identifier: ", "few", PluralCategory.FEW.getIdentifier());
+ assertEquals("test get identifier: ", "many", PluralCategory.MANY.getIdentifier());
+ assertEquals("test get identifier: ", "other", PluralCategory.OTHER.getIdentifier());
- assertEquals("test get identifier: ", "undefined", NounClass.UNDEFINED.getIdentifier());
- assertEquals("test get identifier: ", "other", NounClass.OTHER.getIdentifier());
- assertEquals("test get identifier: ", "neuter", NounClass.NEUTER.getIdentifier());
- assertEquals("test get identifier: ", "feminine", NounClass.FEMININE.getIdentifier());
- assertEquals("test get identifier: ", "masculine", NounClass.MASCULINE.getIdentifier());
- assertEquals("test get identifier: ", "animate", NounClass.ANIMATE.getIdentifier());
- assertEquals("test get identifier: ", "inanimate", NounClass.INANIMATE.getIdentifier());
- assertEquals("test get identifier: ", "personal", NounClass.PERSONAL.getIdentifier());
- assertEquals("test get identifier: ", "common", NounClass.COMMON.getIdentifier());
- }
+ assertEquals("test get identifier: ", "undefined", NounClass.UNDEFINED.getIdentifier());
+ assertEquals("test get identifier: ", "other", NounClass.OTHER.getIdentifier());
+ assertEquals("test get identifier: ", "neuter", NounClass.NEUTER.getIdentifier());
+ assertEquals("test get identifier: ", "feminine", NounClass.FEMININE.getIdentifier());
+ assertEquals("test get identifier: ", "masculine", NounClass.MASCULINE.getIdentifier());
+ assertEquals("test get identifier: ", "animate", NounClass.ANIMATE.getIdentifier());
+ assertEquals("test get identifier: ", "inanimate", NounClass.INANIMATE.getIdentifier());
+ assertEquals("test get identifier: ", "personal", NounClass.PERSONAL.getIdentifier());
+ assertEquals("test get identifier: ", "common", NounClass.COMMON.getIdentifier());
+ }
- @Test
- public void TestDisplayOptionsFromIdentifier() {
- assertEquals("test from identifier: ", GrammaticalCase.UNDEFINED,
- GrammaticalCase.fromIdentifier(""));
- assertEquals("test from identifier: ", GrammaticalCase.UNDEFINED,
- GrammaticalCase.fromIdentifier("undefined"));
- assertEquals("test from identifier: ", GrammaticalCase.ABLATIVE,
- GrammaticalCase.fromIdentifier("ablative"));
- assertEquals("test from identifier: ", GrammaticalCase.ACCUSATIVE,
- GrammaticalCase.fromIdentifier("accusative"));
- assertEquals("test from identifier: ", GrammaticalCase.COMITATIVE,
- GrammaticalCase.fromIdentifier("comitative"));
- assertEquals("test from identifier: ", GrammaticalCase.DATIVE,
- GrammaticalCase.fromIdentifier("dative"));
- assertEquals("test from identifier: ", GrammaticalCase.ERGATIVE,
- GrammaticalCase.fromIdentifier("ergative"));
- assertEquals("test from identifier: ", GrammaticalCase.GENITIVE,
- GrammaticalCase.fromIdentifier("genitive"));
- assertEquals("test from identifier: ", GrammaticalCase.INSTRUMENTAL,
- GrammaticalCase.fromIdentifier("instrumental"));
- assertEquals("test from identifier: ", GrammaticalCase.LOCATIVE,
- GrammaticalCase.fromIdentifier("locative"));
- assertEquals("test from identifier: ", GrammaticalCase.LOCATIVE_COPULATIVE,
- GrammaticalCase.fromIdentifier("locative_copulative"));
- assertEquals("test from identifier: ", GrammaticalCase.NOMINATIVE,
- GrammaticalCase.fromIdentifier("nominative"));
- assertEquals("test from identifier: ", GrammaticalCase.OBLIQUE,
- GrammaticalCase.fromIdentifier("oblique"));
- assertEquals("test from identifier: ", GrammaticalCase.PREPOSITIONAL,
- GrammaticalCase.fromIdentifier("prepositional"));
- assertEquals("test from identifier: ", GrammaticalCase.SOCIATIVE,
- GrammaticalCase.fromIdentifier("sociative"));
- assertEquals("test from identifier: ", GrammaticalCase.VOCATIVE,
- GrammaticalCase.fromIdentifier("vocative"));
+ @Test
+ public void TestDisplayOptionsFromIdentifier() {
+ assertEquals("test from identifier: ", GrammaticalCase.UNDEFINED,
+ GrammaticalCase.fromIdentifier(""));
+ assertEquals("test from identifier: ", GrammaticalCase.UNDEFINED,
+ GrammaticalCase.fromIdentifier("undefined"));
+ assertEquals("test from identifier: ", GrammaticalCase.ABLATIVE,
+ GrammaticalCase.fromIdentifier("ablative"));
+ assertEquals("test from identifier: ", GrammaticalCase.ACCUSATIVE,
+ GrammaticalCase.fromIdentifier("accusative"));
+ assertEquals("test from identifier: ", GrammaticalCase.COMITATIVE,
+ GrammaticalCase.fromIdentifier("comitative"));
+ assertEquals("test from identifier: ", GrammaticalCase.DATIVE,
+ GrammaticalCase.fromIdentifier("dative"));
+ assertEquals("test from identifier: ", GrammaticalCase.ERGATIVE,
+ GrammaticalCase.fromIdentifier("ergative"));
+ assertEquals("test from identifier: ", GrammaticalCase.GENITIVE,
+ GrammaticalCase.fromIdentifier("genitive"));
+ assertEquals("test from identifier: ", GrammaticalCase.INSTRUMENTAL,
+ GrammaticalCase.fromIdentifier("instrumental"));
+ assertEquals("test from identifier: ", GrammaticalCase.LOCATIVE,
+ GrammaticalCase.fromIdentifier("locative"));
+ assertEquals("test from identifier: ", GrammaticalCase.LOCATIVE_COPULATIVE,
+ GrammaticalCase.fromIdentifier("locative_copulative"));
+ assertEquals("test from identifier: ", GrammaticalCase.NOMINATIVE,
+ GrammaticalCase.fromIdentifier("nominative"));
+ assertEquals("test from identifier: ", GrammaticalCase.OBLIQUE,
+ GrammaticalCase.fromIdentifier("oblique"));
+ assertEquals("test from identifier: ", GrammaticalCase.PREPOSITIONAL,
+ GrammaticalCase.fromIdentifier("prepositional"));
+ assertEquals("test from identifier: ", GrammaticalCase.SOCIATIVE,
+ GrammaticalCase.fromIdentifier("sociative"));
+ assertEquals("test from identifier: ", GrammaticalCase.VOCATIVE,
+ GrammaticalCase.fromIdentifier("vocative"));
- assertEquals("test from identifier: ", PluralCategory.UNDEFINED,
- PluralCategory.fromIdentifier(""));
- assertEquals("test from identifier: ", PluralCategory.UNDEFINED,
- PluralCategory.fromIdentifier("undefined"));
- assertEquals("test from identifier: ", PluralCategory.ZERO,
- PluralCategory.fromIdentifier("zero"));
- assertEquals("test from identifier: ", PluralCategory.ONE,
- PluralCategory.fromIdentifier("one"));
- assertEquals("test from identifier: ", PluralCategory.TWO,
- PluralCategory.fromIdentifier("two"));
- assertEquals("test from identifier: ", PluralCategory.FEW,
- PluralCategory.fromIdentifier("few"));
- assertEquals("test from identifier: ", PluralCategory.MANY,
- PluralCategory.fromIdentifier("many"));
- assertEquals("test from identifier: ", PluralCategory.OTHER,
- PluralCategory.fromIdentifier("other"));
+ assertEquals("test from identifier: ", PluralCategory.UNDEFINED,
+ PluralCategory.fromIdentifier(""));
+ assertEquals("test from identifier: ", PluralCategory.UNDEFINED,
+ PluralCategory.fromIdentifier("undefined"));
+ assertEquals("test from identifier: ", PluralCategory.ZERO,
+ PluralCategory.fromIdentifier("zero"));
+ assertEquals("test from identifier: ", PluralCategory.ONE,
+ PluralCategory.fromIdentifier("one"));
+ assertEquals("test from identifier: ", PluralCategory.TWO,
+ PluralCategory.fromIdentifier("two"));
+ assertEquals("test from identifier: ", PluralCategory.FEW,
+ PluralCategory.fromIdentifier("few"));
+ assertEquals("test from identifier: ", PluralCategory.MANY,
+ PluralCategory.fromIdentifier("many"));
+ assertEquals("test from identifier: ", PluralCategory.OTHER,
+ PluralCategory.fromIdentifier("other"));
- assertEquals("test from identifier: ", NounClass.UNDEFINED, NounClass.fromIdentifier(""));
- assertEquals("test from identifier: ", NounClass.UNDEFINED,
- NounClass.fromIdentifier("undefined"));
- assertEquals("test from identifier: ", NounClass.OTHER, NounClass.fromIdentifier("other"));
- assertEquals("test from identifier: ", NounClass.NEUTER,
- NounClass.fromIdentifier("neuter"));
- assertEquals("test from identifier: ", NounClass.FEMININE,
- NounClass.fromIdentifier("feminine"));
- assertEquals("test from identifier: ", NounClass.MASCULINE,
- NounClass.fromIdentifier("masculine"));
- assertEquals("test from identifier: ", NounClass.ANIMATE,
- NounClass.fromIdentifier("animate"));
- assertEquals("test from identifier: ", NounClass.INANIMATE,
- NounClass.fromIdentifier("inanimate"));
- assertEquals("test from identifier: ", NounClass.PERSONAL,
- NounClass.fromIdentifier("personal"));
- assertEquals("test from identifier: ", NounClass.COMMON,
- NounClass.fromIdentifier("common"));
- }
+ assertEquals("test from identifier: ", NounClass.UNDEFINED, NounClass.fromIdentifier(""));
+ assertEquals("test from identifier: ", NounClass.UNDEFINED,
+ NounClass.fromIdentifier("undefined"));
+ assertEquals("test from identifier: ", NounClass.OTHER, NounClass.fromIdentifier("other"));
+ assertEquals("test from identifier: ", NounClass.NEUTER,
+ NounClass.fromIdentifier("neuter"));
+ assertEquals("test from identifier: ", NounClass.FEMININE,
+ NounClass.fromIdentifier("feminine"));
+ assertEquals("test from identifier: ", NounClass.MASCULINE,
+ NounClass.fromIdentifier("masculine"));
+ assertEquals("test from identifier: ", NounClass.ANIMATE,
+ NounClass.fromIdentifier("animate"));
+ assertEquals("test from identifier: ", NounClass.INANIMATE,
+ NounClass.fromIdentifier("inanimate"));
+ assertEquals("test from identifier: ", NounClass.PERSONAL,
+ NounClass.fromIdentifier("personal"));
+ assertEquals("test from identifier: ", NounClass.COMMON,
+ NounClass.fromIdentifier("common"));
+ }
}