getter가 재귀적으로 자기 자신을 반환

getter가 재귀적으로 자기 자신을 반환 (diagnostics_recursive_getters)

이 문서는 Dart 린트(lint) 규칙 diagnostics_recursive_getters를 설명하는 문서예요. getter가 자기 자신을 다시 호출하면 끝없이 반복되는 무한 루프가 생기는데요. 언제 이런 일이 벌어지고 어떻게 고치는지 함께 살펴볼게요.

출처: diagnostics_recursive_getters

본문

진단 메시지

The getter '{0}' recursively returns itself.

getter '{0}'이(가) 재귀적으로 자기 자신을 반환하고 있어요.

설명

분석기는 어떤 getter가 자기 자신을 호출할 때 이 진단을 만들어 내요. getter가 자기 자신을 반환하려고 하면 값을 계산하는 과정이 다시 자기 자신을 호출하게 되어 무한 루프에 빠지게 돼요.

예시

다음 코드는 getter count가 자기 자신을 호출하기 때문에 이 진단을 만들어 내요.

class C {
  int _count = 0;

  int get count => count;
}

일반적인 해결 방법

getter가 자기 자신을 호출하지 않도록 바꿔 주세요.

class C {
  int _count = 0;

  int get count => _count;
}

더 알아보기