deprecated_mixin
deprecated_mixin
클래스나 enum 선언의 with 절에 @Deprecated.mixin으로 표시된 mixin 클래스를 사용하면 이 진단이 나와요. 즉, 그 mixin을 섞어 쓰는 게 이제는 지양해야 할 동작이라는 뜻이죠. 언젠가 제거될 예정이니 지금부터 어떻게 고쳐야 할지 살펴볼게요.
출처: deprecated_mixin
본문
@Deprecated.mixin 어노테이션이 붙은 mixin 클래스를 클래스나 enum 선언의 with 절에서 사용하면 analyzer가 이 진단을 만들어요. 이 어노테이션은 해당 mixin을 사용하는 것이 deprecated이며 곧 제거될 것임을 나타내요. 이 변경은 아마 mixin 클래스 수정자(modifier)를 제거하는 방식으로 강제될 거예요.
예시
라이브러리 p가 @Deprecated.mixin으로 표시된 클래스를 정의한다고 해볼게요.
@Deprecated.mixin()
mixin class C {}
그러면 p가 아닌 다른 어떤 라이브러리에서든 다음 코드는 이 진단을 만들어내요.
import 'package:p/p.dart';
class D with C {}
일반적인 해결 방법
Deprecation.mixin 어노테이션에 있는 안내를 우선 따라주세요. 그게 없다면 with 절에서 mixin 클래스 이름을 제거하면 돼요.
class D {}