メインコンテンツにスキップ

extension_override_argument_not_assignable

拡張機能オーバーライド '{0}' への引数の型が、拡張対象の型 '{1}' に代入可能ではありません。

説明

#

この診断は、拡張機能オーバーライドへの引数が、その拡張機能で拡張されている型に代入可能でない場合に、アナライザーによって生成されます。

#

次のコードは、3String ではないため、この診断を生成します。

dart
extension E on String {
  void method() {}
}

void f() {
  E(3).method();
}

一般的な修正

#

正しい拡張機能を使用している場合は、引数を正しい型に更新してください。

dart
extension E on String {
  void method() {}
}

void f() {
  E(3.toString()).method();
}

引数の型に対して有効な別の拡張機能がある場合は、拡張機能の名前を置き換えるか、引数をアンラップして正しい拡張機能が見つかるようにしてください。