@Target(value={TYPE_USE,TYPE_PARAMETER})
public @interface IndexOrLow
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.
GTENegativeOne,
LTLengthOf| Modifier and Type | Required Element and Description |
|---|---|
java.lang.String[] |
value
Sequences that the annotated expression is a valid index for (or it's -1).
|