inference_failure_on_function_invocation 진단: 함수 호출의 타입 추론 실패

inference_failure_on_function_invocation 진단: 함수 호출의 타입 추론 실패

Dart 분석기가 만들어 내는 inference_failure_on_function_invocation 진단에 대한 설명이에요.

출처: inference_failure_on_function_invocation

본문

메서드나 함수 호출의 타입 인자를 추론하지 못했을 때 이 진단이 발생해요.

설명

다음 조건을 모두 충족할 때 분석기는 이 진단을 만들어요.

  • 분석 options 파일에서 strict-inference 언어 옵션이 켜져 있고,
  • 메서드나 함수의 호출에 타입 인자가 없으며,
  • 그 타입 인자의 값을 추론할 수 없을 때

예시

다음과 같은 내용의 분석 options 파일이 있다고 해볼게요.

analyzer:
  language:
    strict-inference: true

m의 호출에 명시적인 타입 인자가 없고, 그 인자들을 추론할 수 없기 때문에 다음 코드는 이 진단을 만들어요.

abstract class C {
  void m();
}

void f(C c) {
  c.m();
}

흔한 해결 방법

호출에 명시적인 타입 인자를 제공하면 돼요.

abstract class C {
  void m();
}

void f(C c) {
  c.m();
}

더 알아보기