matching_ super_ parameters
Use matching super parameter names.
Details
#DO use super parameter names that match their corresponding super constructor's parameter names.
BAD:
class Rectangle {
final int width;
final int height;
Rectangle(this.width, this.height);
}
class ColoredRectangle extends Rectangle {
final Color color;
ColoredRectangle(
this.color,
super.height, // Bad, actually corresponds to the `width` parameter.
super.width, // Bad, actually corresponds to the `height` parameter.
);
}
GOOD:
class Rectangle {
final int width;
final int height;
Rectangle(this.width, this.height);
}
class ColoredRectangle extends Rectangle {
final Color color;
ColoredRectangle(
this.color,
super.width,
super.height,
);
}
Enable
#
To enable the
matching_super_parameters
rule, add
matching_super_parameters
under
linter > rules
in your
analysis_options.yaml
file:
linter:
rules:
- matching_super_parameters
If you're instead using the YAML map syntax to configure linter rules,
add
matching_super_parameters: true
under
linter > rules:
linter:
rules:
matching_super_parameters: true
Unless stated otherwise, the documentation on this site reflects Dart 3.9.2. Report an issue.