positional_field_in_object_pattern
オブジェクトパターンでは名前付きフィールドのみ使用できます。
説明
#getter 名を指定せずにフィールドを含むオブジェクトパターンが存在する場合、アナライザーはこの診断を生成します。オブジェクトパターンのフィールドは、オブジェクトの getter が返す値と照合されます。getter 名が指定されていない場合、パターンフィールドは照合を試みる値にアクセスできません。
例
#以下のコードは、オブジェクトパターン String(1) が String のどの getter にアクセスして値 1 と比較するかを指定していないため、この診断を生成します。
dart
void f(Object o) {
if (o case String(1)) {}
}一般的な修正
#値をアクセスするために getter 名を追加し、その後に照合するパターンをコロンで区切って記述します。
dart
void f(Object o) {
if (o case String(length: 1)) {}
}