コードインスペクション: 整数分析によるヒューリスティックな到達不可能ケース
このインスペクションは、 整数値分析の結果に従って決して実行されない switch ステートメントのケースを報告します。 インスペクションは、 ページの ReSharper オプション
Alt+R、O
で 整数演算を分析する が有効化されている場合のみ動作します。
これは、メソッドパラメーターに [NonNegativeValueAttribute] でアノテーションを付けて、メソッド本体内の分析を改善する例です。 パラメーターが負でないことが分かっている場合、ReSharper は冗長なケースを報告できます:
void TestSwitch([NonNegativeValue] int input)
{
int newValue;
switch (input)
{
case 0:
newValue = 1;
break;
case -1: // Case is heuristically unavailable
newValue = 0;
break;
default:
newValue = input;
break;
}
}
2026 年 6 月 12 日