body_might_complete_normally_nullable 진단: nullable 반환 타입이 값을 반환하지 않고 끝날 때

body_might_complete_normally_nullable 진단: nullable 반환 타입이 값을 반환하지 않고 끝날 때

body_might_complete_normally_nullablenullable 반환 타입을 가진 함수나 메서드가 끝까지 값을 반환하지 않고 끝날 때 Dart 분석기가 알려주는 진단이에요. 이런 코드는 유효한 Dart지만, null 반환을 명시적으로 드러내는 편이 더 좋아요.

출처: body_might_complete_normally_nullable

본문

설명

분석기는 메서드나 함수가 끝까지 흘러서 암묵적으로 null을 반환할 수 있을 때 이 진단을 만들어요. 이는 유효한 Dart 코드지만, null의 반환을 명시적으로 하는 편이 더 좋아요.

예시

다음 코드는 함수 f가 암묵적으로 null을 반환하기 때문에 이 진단을 만들어요.

String? f() {}

흔한 해결 방법

null 반환이 의도적이라면, 명시적으로 만들어요.

String? f() {
  return null;
}

함수가 그 경로에서 null이 아닌 값을 반환해야 한다면, 빠진 return 문장을 추가해요.

String? f() {
  return '';
}

더 알아보기