static int indexOf(L l, A a, int startIndex) {
if (l == null) ret -1;
int n = l(l);
for (int i = startIndex; i < n; i++)
if (eq(l.get(i), a))
ret i;
ret -1;
}
static int indexOf(L l, int startIndex, A a) {
ret indexOf(l, a, startIndex);
}
static int indexOf(L l, A a) {
if (l == null) ret -1;
ret l.indexOf(a);
}
static int indexOf(S a, S b) {
ret a == null || b == null ? -1 : a.indexOf(b);
}
static int indexOf(S a, S b, int i) {
ret a == null || b == null ? -1 : a.indexOf(b, i);
}
static int indexOf(S a, char b) {
ret a == null ? -1 : a.indexOf(b);
}
static int indexOf(S a, int i, char b) {
ret indexOf(a, b, i);
}
static int indexOf(S a, char b, int i) {
ret a == null ? -1 : a.indexOf(b, i);
}
static int indexOf(S a, int i, S b) {
ret a == null || b == null ? -1 : a.indexOf(b, i);
}
static int indexOf(A[] x, A a) {
int n = l(x);
for (int i = 0; i < n; i++)
if (eq(x[i], a))
ret i;
ret -1;
}
static int indexOf(Iterable l, A a) {
if (l == null) ret -1;
int i = 0;
for (A x : l) {
if (eq(x, a))
ret i;
i++;
}
ret -1;
}