wrong_number_of_type_arguments_extension
扩展 '{0}' 声明了 {1} 个类型参数,但提供了 {2} 个类型实参。
描述
#当使用带有类型参数的扩展并提供类型实参时,如果类型实参的数量与类型参数的数量不同,分析器就会产生此诊断信息。
示例
#以下代码会产生此诊断信息,因为扩展 E
声明了一个类型参数 (T
),但扩展覆盖提供了两个类型实参
dart
extension E<T> on List<T> {
int get len => length;
}
void f(List<int> p) {
E<int, String>(p).len;
}
常见修复
#修改类型实参的数量,使其与类型参数的数量相同
dart
extension E<T> on List<T> {
int get len => length;
}
void f(List<int> p) {
E<int>(p).len;
}