generateEqualsOperator method
void
generateEqualsOperator(
- BuildContext? ctx,
- ClassBuilder clazz,
- LibraryBuilder file
)
Implementation
void generateEqualsOperator(
BuildContext? ctx, ClassBuilder clazz, LibraryBuilder file) {
clazz.methods.add(Method((method) {
method
..name = 'operator =='
..annotations.add(refer('override'))
..returns = Reference('bool')
..requiredParameters.add(Parameter((b) => b.name = 'other'));
var buf = ['other is ${ctx!.originalClassName}'];
buf.addAll(ctx.fields.map((f) {
return generateComparator(f.type)('other.${f.name}', f.name);
}));
method.body = Code('return ${buf.join('&&')};');
}));
}