scope ai_findVarObjects.
static L nuLike ai_findVarObjects(Class varClass, O root) {
ret ai_findVarObjects(varClass, root, null);
}
static L nuLike ai_findVarObjects(Class varClass, O root, IF1 objectFilter) {
Cl out = transitiveHullOfFunction(o -> #scanObject(o, objectFilter), root);
ret instancesOf(varClass, out);
}
static L #scanObject(O o, IF1 objectFilter) {
ret filter(nsnpntFieldValues_withoutOuterRefs(o),
v -> v != null && !v instanceof S
&& (objectFilter == null || objectFilter.get(v)));
}
end scope