Package org.jetbrains.annotations

## Annotation Type NonNls

-     @Documented
      @Retention(CLASS)
      @Target({METHOD,FIELD,PARAMETER,LOCAL_VARIABLE,TYPE,PACKAGE})
      public @interface NonNls

  Specifies that an element of the program is not an user-visible string which needs to be localized, or does not contain such strings. This annotation is intended to be used by localization tools for detecting strings which should not be reported as requiring localization.
  - If a method parameter is annotated with `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.
  - If a field is annotated with `NonNls`, all string literals found in the initializer of the field are not reported as requiring localization.
  - If a method is called on a field, parameter or local variable annotated with `NonNls`, string literals passed as parameters to the method are not reported as requiring localization.
  - If a field, parameter or local variable annotated with `NonNls` is passed as a parameter to the `equals()` method invoked on a string literal, the literal is not reported as requiring localization.
  - If a field, parameter or local variable annotated with `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.
  - If a method is annotated with `NonNls`, string literals returned from the method are not reported as requiring localization.
  - If a class is annotated with `NonNls`, all string literals in the class and all its subclasses are not reported as requiring localization.
  - If a package is annotated with `NonNls`, all string literals in the package and all its subpackages are not reported as requiring localization.