findClassesWithPublicNoArgConstructor static method
- List<
ClassElement> classes
Finds all classes that have a public, no-argument constructor from a list of classes. Returns a list of ClassElements that meet the criteria.
Implementation
static List<ClassElement> findClassesWithPublicNoArgConstructor(final List<ClassElement> classes) {
List<ClassElement> resultClasses = [];
for (final aClass in classes) {
//Check the class for a public no-argument constructor:
if (aClass.constructors.isEmpty || !aClass.constructors.any((c) => c.isPublic && c.parameters.isEmpty)) {
print(ColorfulText.paint("Annotated class ${aClass.name} ignored. It does not have a public no-argument constructor.", ColorfulText.red));
}
else {
resultClasses.add(aClass);
}
}
return resultClasses;
}