ReSharper 2025.3 ヘルプ

コード検査: 整数分析によるヒューリスティックに到達不可能なスイッチアーム

このインスペクションは、整数値分析の結果に従って、決して実行されない switch 式のアームを報告します。インスペクションは、ReSharper オプション Alt+R, Oコードインスペクション | 設定ページで整数演算を分析するが有効になっている場合にのみ機能します。

これは、メソッドパラメーターに [NonNegativeValueAttribute] でアノテーションを付けて、メソッド本体内の分析を改善する例です。パラメーターが負ではないことを知っている ReSharper は、冗長なケースを報告できます。

void TestSwitch([NonNegativeValue] int input) { var newValue = input switch { 0 => 1, -1 => 0, // Case is heuristically unreachable _ => input, }; }
2024 年 2 月 11 日

関連ページ:

コードインスペクション設定を構成する

設計時コードインスペクションを構成する:デフォルトでは、ReSharper は、サポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかに関係なく、コードインスペクションは常に特定のスコープで実行できます。メインメニューからを選択するか、Alt+R O を押してから、左側のを選択します。設計時コードインスペクションを切り替えるには、コード分析を有効にするチェックボックスを使用し...

整数値の分析 (積分演算)

ReSharper は、コード内の整数値のフローを追跡し、冗長または場合によっては誤ったステートメントを報告できます。すべての C# 整数数値型 — 、、、、 — をサポートし、次の問題について警告します。常にまたはに評価される関係 / 等式演算子、値をチェックする到達不能なケース、による乗算やの加算など、意味のない算術演算(リテラルまたは定数を除く): ReSharper は、のような式が意図的なものであると想定しています)、オーバーフローの可能性、による除算の可能性、メソッドの呼び出しで発生する可能...