リテラルのブール値のみの式
ブール式が定数値を持っています。
説明
#if またはループステートメントの条件の値が常に true または常に false であることがわかっている場合に、アナライザーはこの診断を生成します。ただし、条件がブール値リテラルの true である while ループは例外となります。
例
#以下のコードは、条件が常に true と評価されるため、この診断を生成します。
dart
void f() {
if (true) {
print('true');
}
}このリンターは、定数で構成される式のサブセットを評価するため、以下のコードもこの診断を生成します。これは、条件が常に false と評価されるためです。
dart
void g(int i) {
if (1 == 0 || 3 > 4) {
print('false');
}
}一般的な修正
#条件が間違っている場合は、コンパイル時に値を特定できないように条件を修正してください。
dart
void g(int i) {
if (i == 0 || i > 4) {
print('false');
}
}条件が正しい場合は、コードを単純化して条件を評価しないようにしてください。
dart
void f() {
print('true');
}