@Documented
@Retention(value=CLASS)
@Target(value={METHOD,FIELD,PARAMETER,LOCAL_VARIABLE,TYPE_USE,TYPE,PACKAGE})
public @interface NonNls
NonNls
, the strings passed
as values of this parameter are not reported as requiring localization.
Also, if the parameter of a property setter method is annotated with NonNls
, values
of that property in UI Designer forms are never highlighted as hard-coded strings.NonNls
, all string literals found in the
initializer of the field are not reported as requiring localization.NonNls
,
string literals passed as parameters to the method are not reported as requiring localization.
NonNls
is passed as a
parameter to the equals()
method invoked on a string literal, the literal is not
reported as requiring localization.NonNls
is found at
the left side of an assignment expression, all string literals in the right side
of the expression are not reported as requiring localization.NonNls
, string literals returned from the method
are not reported as requiring localization.NonNls
, all string literals in
the class and all its subclasses are not reported as requiring localization.NonNls
, all string literals in
the package and all its subpackages are not reported as requiring localization.This annotation also could be used as a meta-annotation, to define derived annotations for convenience. E.g. the following annotation could be defined to annotate the strings that represent UUIDs, thus should not be localized:
@NonNls @interface UUID {}
Note that using the derived annotation as meta-annotation is not supported. Meta-annotation works only one level deep.