ReSharper 2025.3 ヘルプ

コード検査: 冗長 'switch' エクスプレッションアーム

このインスペクションは、switch 式内の冗長または到達不能なスイッチアームを識別します。このようなシナリオは通常、特定のアームが他の一致パターンによってオーバーライドされる場合、または実行条件が重複している場合に発生します。

インスペクションはこれらの冗長なアームをフラグ付けし、コードの明瞭性と保守性を高めるために削除することを推奨します。

以下の例では、_ => false アームによって false を返す必要があるすべてのケースが処理されるため、アーム int => false は不要です。

bool IsString(object o) { return o switch { string => true, int => false, _ => false }; }
bool IsString(object o) { return o switch { string => true, _ => false }; }

冗長なスイッチアームを削除することで、結果として得られるコードはよりシンプルになり、明瞭性が向上し、ベストプラクティスに準拠するようになります。

2025 年 3 月 26 日