duplicate_pattern_assignment_variable
變數“{0}”已在此模式中被賦值。
描述
#當單個模式變數在同一模式賦值中多次被賦值時,分析器會產生此診斷。
示例
#以下程式碼會產生此診斷,因為變數 a 在模式 (a, a) 中被賦值了兩次。
dart
int f((int, int) r) {
int a;
(a, a) = r;
return a;
}常見修復方法
#如果您需要捕獲所有值,請為每個匹配的子模式使用唯一的變數。
dart
int f((int, int) r) {
int a, b;
(a, b) = r;
return a + b;
}如果某些值無需捕獲,則使用萬用字元模式 _ 以避免將值繫結到變數。
dart
int f((int, int) r) {
int a;
(_, a) = r;
return a;
}