Skip to main content

annotate_redeclares

Learn about the annotate_redeclares linter rule.

Experimental
Fix available

Annotate redeclared members.

Details

#

DO annotate redeclared members.

This practice improves code readability and helps protect against unintentionally redeclaring members or being surprised when a member ceases to redeclare (due for example to a rename refactoring).

BAD:

dart
class C {  void f() { } }  extension type E(C c) implements C {  void f() {  ...  } } 

GOOD:

dart
import 'package:meta/meta.dart';  class C {  void f() { } }  extension type E(C c) implements C {  @redeclare  void f() {  ...  } } 

Enable

#

To enable the annotate_redeclares rule, add annotate_redeclares under linter > rules in your analysis_options.yaml file:

analysis_options.yaml
yaml
linter:  rules:  - annotate_redeclares 

If you're instead using the YAML map syntax to configure linter rules, add annotate_redeclares: true under linter > rules:

analysis_options.yaml
yaml
linter:  rules:  annotate_redeclares: true