annotate_redeclares

annotate_redeclares

Dart 애널라이저가 생성하는 annotate_redeclares 진단에 대한 설명이에요.

출처: 원문

본문

멤버가 재선언(redeclare)되고 있지만 @redeclare로 주석 처리되지 않았을 때 이 진단이 발생해요.

설명

애널라이저는 확장 타입 멤버가 구현한 인터페이스의 멤버를 @redeclare 주석 없이 재선언할 때 이 진단을 생성해요.

예시

아래 코드는 확장 타입 Ef 메서드가 Cf 메서드를 @redeclare 주석 없이 재선언하기 때문에 이 진단을 만들어요.

class C {
  void f() {}
}

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

일반적인 수정 방법

재선언을 명시적으로 만들기 위해 @redeclare 주석을 추가해요.

import 'package:meta/meta.dart';

class C {
  void f() {}
}

extension type E(C c) implements C {
  @redeclare
  void f() {}
}

더 알아보기

확장 타입과 @redeclare 애너테이션에 대한 더 자세한 내용은 Dart 언어 문서와 API 문서를 참고해요.