literal_only_boolean_expressions
リテラルのみで構成されるブール式。
このルールはDart 2.0から利用可能です。
詳細
#避けるべきです。リテラルのみで構成される条件をテストする必要はありません。値はコンパイル時に推論できます。
常にFALSEになる条件を使用する条件文は、コードブロックを機能しないようにする効果があります。条件が常にtrue
しか評価されない場合、条件文は完全に冗長であり、コードの可読性を低下させます。コードがプログラマの意図と一致しない可能性が高いです。条件を削除するか、常にtrue
またはfalse
を評価しないように更新する必要があります。
悪い例
dart
void bad() {
if (true) {} // LINT
}
悪い例
dart
void bad() {
if (true && 1 != 0) {} // LINT
}
悪い例
dart
void bad() {
if (1 != 0 && true) {} // LINT
}
悪い例
dart
void bad() {
if (1 < 0 && true) {} // LINT
}
悪い例
dart
void bad() {
if (true && false) {} // LINT
}
悪い例
dart
void bad() {
if (1 != 0) {} // LINT
}
悪い例
dart
void bad() {
if (true && 1 != 0 || 3 < 4) {} // LINT
}
悪い例
dart
void bad() {
if (1 != 0 || 3 < 4 && true) {} // LINT
}
注記: 一般的なwhile (true) { }
イディオムは、同等のfor (;;)
よりも好まれることが多いため、例外として扱われます。
良い例
dart
void good() {
while (true) {
// Do stuff.
}
}
使用方法
#literal_only_boolean_expressions
ルールを有効にするには、analysis_options.yaml
ファイルのlinter > rulesセクションにliteral_only_boolean_expressions
を追加します。
analysis_options.yaml
yaml
linter:
rules:
- literal_only_boolean_expressions
特に明記されていない限り、このサイトのドキュメントはDart 3.5.3を反映しています。最終更新日:2024年7月3日。 ソースコードを表示 または 問題を報告する。