Annotation Interface I18nFormatFor
@Documented
@Retention(RUNTIME)
@Target({TYPE_USE,TYPE_PARAMETER})
@SubtypeOf(I18nUnknownFormat.class)
public @interface I18nFormatFor
This annotation indicates that when a string of the annotated type is passed as the first
argument to
MessageFormat.format(String, Object...), then the expression that
is an argument to the annotation can be passed as the remaining arguments, in varargs style.
The annotation is used to annotate a method to ensure that an argument is of a particular type indicated by a format string.
Example:
static void method(@I18nFormatFor("#2") String format, Object... arg2) {...}
method("{0, number}", 2);
This ensures that the second parameter ("#2") can be passed as the remaining arguments of MessageFormat.format(String, Object...), when the first argument is "format".- See the Checker Framework Manual:
- Internationalization Format String Checker
-
Required Element Summary
Required Elements
-
Element Details
-
value
String valueIndicates which formal parameter is the arguments to the format method. The value should be#followed by the 1-based index of the formal parameter that is the arguments to the format method, e.g.,"#2".- Returns:
#followed by the 1-based index of the formal parameter that is the arguments to the format method
-