findByMatcher<T extends DartElement> method
List<T>
findByMatcher<T extends DartElement>({
- required DartElementMatcher matcher,
- required DartElementsParent<
DartElement> source,
Implementation
List<T> findByMatcher<T extends DartElement>({
required DartElementMatcher matcher,
required DartElementsParent source,
}) {
final elementsFound = <T>[];
for (final el in source.children) {
if (matcher(el)) {
elementsFound.add(el as T);
}
if (el is DartElementsParent) {
elementsFound.addAll(
findByMatcher(matcher: matcher, source: el as DartElementsParent),
);
}
}
return elementsFound;
}