static Cl nuLike findConceptsWhereCI(Class c, O... params) { ret findConceptsWhereCI(db_mainConcepts(), c, params); } static L findConceptsWhereCI(S c, O... params) { ret findConceptsWhereCI(db_mainConcepts(), c, params); } static Cl findConceptsWhereCI(Concepts concepts, Class c, O... params) { Cl l = findConceptsWhereCI_noParent(concepts, c, params); if (concepts.parent == null) ret l; ret concatCollections_conservative(l, findConceptsWhereCI(concepts.parent, c, params)); } static Cl findConceptsWhereCI_noParent(Concepts concepts, Class c, O... params) { params = expandParams(c, params); // indexed if (concepts.ciFieldIndices != null) for (int i = 0; i < l(params); i += 2) { IFieldIndex index = concepts.getCIFieldIndex(c, (S) params[i]); if (index != null) { Cl rawList = index.getAll(params[i+1]); params = dropEntryFromParams(params, i); if (params == null) ret rawList; new L l; for (A x : rawList) if (checkConceptFieldsIC(x, params)) l.add(x); ret l; } } // table scan ret filterConceptsIC(concepts.list(c), params); } static L findConceptsWhereCI(Concepts concepts, S c, O... params) { ret filterConceptsIC(concepts.list(c), params); }