undefined_setter 진단: 정의되지 않은 setter를 호출했을 때
undefined_setter 진단: 정의되지 않은 setter를 호출했을 때
분석기가 내보내는 진단에는 이름이 있어요. undefined_setter는 어떤 타입에 정의되어 있지 않은 setter(설정자)를 사용하려고 할 때 Dart 분석기가 알려주는 진단이에요. setter 이름을 잘못 적었거나, 참조하는 스코프 안에서 이름이 보이지 않는 경우에 주로 발생해요.
출처: undefined_setter
본문
설명
분석기는 setter의 이름으로 보이는 식별자를 만났는데, 그 식별자가 정의되어 있지 않거나, 참조하는 스코프 안에서 보이지 않을 때 이 진단을 만들어요.
예시
다음 코드는 z라는 이름의 setter가 없기 때문에 이 진단을 만들어요.
class C {
int x = 0;
void m(int y) {
this.z = y;
}
}
흔한 해결 방법
식별자가 정의되어 있지 않다면 직접 정의하거나, 정의되어 있는 setter 이름으로 바꿔요. 위 예시는 setter의 철자를 고쳐서 해결할 수 있어요.
class C {
int x = 0;
void m(int y) {
x = y;
}
}