@SubtypeOf(value=I18nUnknownFormat.class) @Retention(value=RUNTIME) @Target(value={TYPE_USE,TYPE_PARAMETER}) public @interface I18nFormat
MessageFormat.format
.
The annotation's value represents the valid arguments that may be passed to the format method. For example:
@I18nFormat({I18nConversionCategory.GENERAL, I18nConversionCategory.NUMBER}) String f = "{0}{1, number}"; // valid String f = "{0} {1} {2}"; // error, the format string is stronger (more restrictive) than the specifiers. String f = "{0, number} {1, number}"; // error, the format string is stronger (NUMBER is a subtype of GENERAL).The annotation indicates that the format string requires any object as the first parameter (
I18nConversionCategory.GENERAL
) and a number as the
second parameter (I18nConversionCategory.NUMBER
).I18nConversionCategory
Modifier and Type | Required Element and Description |
---|---|
I18nConversionCategory[] |
value
An array of
I18nConversionCategory , indicating the types of
legal remaining arguments when a value of the annotated type is used
as the first argument to
Message.format . |
public abstract I18nConversionCategory[] value
I18nConversionCategory
, indicating the types of
legal remaining arguments when a value of the annotated type is used
as the first argument to
Message.format
.