Annotation 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
    Modifier and Type
    Required Element
    Description
    Indicates which formal parameter is the arguments to the format method.
  • Element Details

    • value

      String value
      Indicates 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