superclass 제약에는 클래스와 mixin만 사용할 수 있어요
superclass 제약에는 클래스와 mixin만 사용할 수 있어요
mixin 선언에서 on 키워드 뒤에 오는 타입은 클래스나 mixin이어야 해요. 그런데 함수 타입 같은 다른 종류가 들어가면 이 진단이 발생해요.
본문
설명
mixin 선언에서 on 키워드 뒤에 있는 타입이 클래스도 mixin도 아닐 때 analyzer가 이 진단을 만들어요.
예시
F가 클래스도 mixin도 아니어서 진단이 발생해요.
typedef F = void Function();
mixin M on F {}
해결 방법
타입이 클래스여야 했는데 오타가 났다면 그 이름을 올바르게 바꿔 주면 돼요. 아니라면 on 절에서 그 타입을 빼면 돼요.
더 알아보기
- mixin의 superclass 제약(
on)에 대해서는 Dart 언어 문서의 mixin 부분을 참고하세요.