static int jfind(S s, S in) { ret jfind(javaTok(s), in); } static int jfind(L tok, S in) { ret jfind(tok, 1, in); } static int jfind(L tok, int startIdx, S in) { ret jfind(tok, startIdx, in, (ITokCondition) null); } static int jfind(L tok, S in, O condition) { ret jfind(tok, 1, in, condition); } static int jfind(L tok, int startIndex default 1, S in, IIntPred condition) { ret jfind(tok, startIndex, in, tokCondition(condition)); } static int jfind(L tok, int startIndex default 1, S in, ITokCondition condition) { ret jfind(tok, startIndex, in, (O) condition); } static int jfind(L tok, int startIdx, S in, O condition) { //LS tokin = jfind_preprocess(javaTok(in)); ret jfind(tok, startIdx, javaTokForJFind_array(in), condition); } // assumes you preprocessed tokin static int jfind(L tok, L tokin) { ret jfind(tok, 1, tokin); } static int jfind(L tok, int startIdx, L tokin) { ret jfind(tok, startIdx, tokin, null); } static int jfind(LS tok, int startIdx, S[] tokinC, O condition) { ret findCodeTokens(tok, startIdx, false, tokinC, condition); } static int jfind(LS tok, int startIdx, L tokin, O condition) { ret jfind(tok, startIdx, codeTokensAsStringArray(tokin), condition); } static L jfind_preprocess(L tok) { for (S type : litlist("quoted", "id", "int")) replaceSublist(tok, ll("<", "", type, "", ">"), ll("<" + type + ">")); replaceSublist(tok, ll("\\", "", "*"), ll("\\*")); ret tok; }