static L 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 L findConceptsWhere(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) {
L rawList = index.getAll(params[i+1]);
params = dropEntryFromParams(params, i);
if (params == null) ret rawList;
new L l;
for (A x : rawList)
if (checkConceptFieldsCI(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);
}