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:
dart
class A {
A.new(); // LINT
}
var a = A.new(); // LINTGOOD:
dart
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:
analysis_options.yaml
yaml
linter:
rules:
- unnecessary_constructor_nameIf you're instead using the YAML map syntax to configure linter rules,
add unnecessary_constructor_name: true under linter > rules:
analysis_options.yaml
yaml
linter:
rules:
unnecessary_constructor_name: true