Annotation Interface IndexOrLow


@Documented @Retention(RUNTIME) @Target({TYPE_USE,TYPE_PARAMETER}) public @interface IndexOrLow
An integer that is either -1 or is a valid index for each of the given sequences.

The String.indexOf(String) method is declared as


   class String {
    @IndexOrLow("this") int indexOf(String str) { ... }
   }
 

Writing @IndexOrLow("arr") is equivalent to writing @GTENegativeOne @LTLengthOf("arr"), and that is how it is treated internally by the checker. Thus, if you write an @IndexOrLow("arr") annotation, you might see warnings about @GTENegativeOne or @LTLengthOf.

See Also:
See the Checker Framework Manual:
Index Checker
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    Sequences that the annotated expression is a valid index for (or it's -1).
  • Element Details

    • value

      String[] value
      Sequences that the annotated expression is a valid index for (or it's -1).