minato128 blog

minato128の公開メモ帳です。

Analyzer with Code Fix を試してみた

環境構築

開発

主に実装するのはこの2つ

  • DiagnosticAnalyzer
    • どのタイミングで解析するか
    • どんな条件でどんなメッセージを出すか
  • CodeFixProvider
    • リファクタリング用なので任意
    • コードの変換処理を実装する
    • 実装すると
      • アナライザーでメッセージを出したところに、light bulb を出せる
      • light bulb をクリックするとプレビューや変更ができる

デバッグは、テンプレート生成後すぐに F5 でできるようになっている。 (別のプロセスでVSが立ち上がるので、なんでもいいのでプロジェクトをロードする)

  • Syntax Visualizer
    • View -> Other Window -> Syntax Visualizer
    • 解析対象のコードをポイントするとツリーが表示される

アナライザーを適用したいコードを別のVSで開いて、Syntax Visualizer を開くと、 リアルタイムでフォーカスしたところのツリーが表示されるので、これを見ながら Analyzer を実装する。

参考資料

作ってみたもの