// returns l(s) if not found static int xIndexOf(S s, S sub, int i) { if (s == null) ret 0; i = s.indexOf(sub, min(i, l(s))); ret i >= 0 ? i : l(s); } static int xIndexOf(S s, S sub) { ret xIndexOf(s, sub, 0); } static int xIndexOf(S s, char c) { if (s == null) ret 0; int i = s.indexOf(c); ret i >= 0 ? i : l(s); }