in working/macros/example/data_class.dart [261:274]
Stream<FieldDeclaration> allFields(ClassIntrospector introspector) async* {
for (var field in await introspector.fieldsOf(this)) {
yield field;
}
var next = await introspector.superclassOf(this);
// TODO: Compare against actual Object identifer once we provide a way to
// get it.
while (next is ClassDeclaration && next.identifier.name != 'Object') {
for (var field in await introspector.fieldsOf(next)) {
yield field;
}
next = await introspector.superclassOf(next);
}
}