コードレビューをする際に、レビュー項目にコーディング規約に則した記述をしているかどうかという物がある。
チェック自体は行った方が保守性が高まり良いとは思うが、人の手で行うとかなり煩わしく、量もあるので時間もかかる。
ルールがあり確認作業も単調なので、どうにか機械的に行う事は出来ないかと調べていたら、C#にはRoslynという構文解析に使えるAPIが備わっているようだったので、試してみた。
今回は、Unityへの導入編。
1.パッケージのインストール
Window→PackegaManagerで、左上の+ボタンを押して、
com.unity.code-analysis
を入力してAdd。
CodeAnalysisが追加される。
2.asmdefの追加
これだけだと、実際に関数を使おうとした際に
「Assets\Editor\SyntaxWalker.cs(9,30): error CS0234: The type or namespace name 'CSharp' does not exist in the namespace 'Microsoft.CodeAnalysis' (are you missing an assembly reference?)」
こんな感じのエラーが発生する。
右クリ→Create→Assembly Definition
Nameは、Code-Analysis.Editorにしないと、エラーが解消されないかも。
残りは、画像の通りに設定。
これで、エラーが出なくなり使えるようになる。