dead_code_catch_following_catch
死程式碼:'catch (e)' 或 'on Object catch (e)' 後面的 catch 子句永遠無法到達。
描述
#當找到一個 catch 子句無法執行,因為它跟在形式為 catch (e) 或 on Object catch (e) 的 catch 子句之後時,分析器會產生此診斷。第一個匹配丟擲物件的 catch 子句會被選中,而這兩種形式都會匹配任何物件,因此它們後面的任何 catch 子句都不會被選中。
示例
#以下程式碼會產生此診斷
dart
void f() {
try {
} catch (e) {
} on String {
}
}常見修復方法
#如果該子句應可被選中,請將其移到通用子句之前
dart
void f() {
try {
} on String {
} catch (e) {
}
}如果該子句不需要被選中,請將其移除
dart
void f() {
try {
} catch (e) {
}
}