in working/macros/example/data_class.dart [171:185]
Future<void> buildDefinitionForClass(
ClassDeclaration clazz, ClassDefinitionBuilder builder) async {
var methods = await builder.methodsOf(clazz);
var hashCodeBuilder = await builder.buildMethod(
methods.firstWhere((m) => m.identifier.name == 'hashCode').identifier);
var hashCodeExprs = [
await for (var field in clazz.allFields(builder))
ExpressionCode.fromString('${field.identifier.name}.hashCode')
].joinAsCode(' ^ ');
hashCodeBuilder.augment(FunctionBodyCode.fromParts([
' => ',
...hashCodeExprs,
';',
]));
}