デッドコードの検出¶
Native Configuration Required
目標¶
統合された reanalyze ツールを使用して、ReScript プロジェクト内の未使用の関数、値、型、モジュールを検出し、削除または抑制します。
手順¶
1. Enable reanalyze in Settings¶
Settings > Languages & Frameworks > ReScript を開き、Dead Code Analysis オプションを有効にします。
プラグインは reanalyze(rescript-tools に同梱)を使用して分析を行います。プロジェクトに ReScript がインストールされていれば、追加のインストールは不要です。
注釈
ReScript >= 12.1.0 では、プラグインは自動的にサーバーモードを使用します。reanalyze プロセスをデーモンとして常駐させることで、差分分析が大幅に高速化されます。サーバーはプロジェクトを開くと自動的に起動し、応答がなくなった場合は自動的に再起動します。
2. Open a .res file¶
reanalyze を有効にしたら、プロジェクト内の任意の .res ファイルを開きます。分析は External Annotator として実行され、少しの遅延の後に結果が表示されます。
3. Look for dead code annotations¶
未使用の項目はグレーのテキストと警告アノテーションで表示されます:
未使用の値 --- 参照されていない
letバインディング未使用の型 --- 使用されていない型定義
未使用のモジュール --- open やアクセスがされていないモジュール
冗長なオプショナル --- 常に(または一度も)提供されないオプショナルパラメータ
4. Apply quick fixes¶
デッドコードの警告にカーソルを置き、Alt+Enter を押して利用可能な Quick Fix を表示します:
未使用バインディングの削除 --- 未使用の
let宣言を削除しますアンダースコアプレフィックスの追加 --- バインディングに
_プレフィックスを付けて、意図的に未使用であることを示します(例:let _unusedHelper = ...)
期待される結果¶
プロジェクトから未使用のコードが除去されるか、意図的に未使用の項目が _ プレフィックスの慣習で明示的にマークされた状態になります。
ヒント¶
デッドコード分析は定期的に実行しましょう。特にリファクタリング後に有効です
Problems パネル(Alt+6)を使用すると、プロジェクト全体のデッドコード警告を一覧で確認できます
必要に応じて
// noinspectionコメントで特定の警告を抑制できます