unnecessary_ constructor_ name
Unnecessary .new constructor name.
Details
#PREFER using the default unnamed Constructor over .new.
Given a class C, the named unnamed constructor C.new refers to the same
constructor as the unnamed C. As such it adds nothing but visual noise to
invocations and should be avoided (unless being used to identify a constructor
tear-off).
BAD:
class A {
A.new(); // LINT
}
var a = A.new(); // LINT
GOOD:
class A {
A.ok();
}
var a = A();
var aa = A.ok();
var makeA = A.new;
Enable
#
To enable the unnecessary_constructor_name rule, add unnecessary_constructor_name
under
linter > rules in your analysis_options.yaml
file:
linter:
rules:
- unnecessary_constructor_name
If you're instead using the YAML map syntax to configure linter rules,
add unnecessary_constructor_name: true under linter > rules:
linter:
rules:
unnecessary_constructor_name: true
Unless stated otherwise, the documentation on this site reflects Dart 3.9.2. Report an issue.