wrong_number_of_type_arguments_element 진단: 메서드/함수의 타입 인자 개수가 맞지 않아요

wrong_number_of_type_arguments_element 진단: 메서드/함수의 타입 인자 개수가 맞지 않아요

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

출처: wrong_number_of_type_arguments_element

본문

{0} '{1}'은(는) 타입 파라미터 {2}개로 선언되어 있는데 타입 인자가 {3}개 주어졌어요.

설명

분석기는 메서드나 함수를 호출할 때 타입 인자의 개수가 선언에 지정된 타입 파라미터의 개수와 다를 때 이 진단을 만들어요. 타입 인자가 없거나, 인자의 개수가 파라미터의 개수와 일치해야 해요.

예시

다음 코드는 메서드 m의 호출에 타입 인자가 두 개인데 m의 선언에는 타입 파라미터가 하나만 있기 때문에 이 진단을 만들어요.

class C {
  int m<A>(A a) => 0;
}

int f(C c) => c.m<int, int>(2);

흔한 해결 방법

타입 인자가 필요하다면 타입 인자를 추가하거나 제거해서 타입 파라미터의 개수와 맞춰요.

class C {
  int m<A>(A a) => 0;
}

int f(C c) => c.m<int>(2);

타입 인자가 필요하지 않다면 제거해요.

class C {
  int m<A>(A a) => 0;
}

int f(C c) => c.m(2);

더 알아보기