TL;DR
- Go で静的解析ツールを作るための入門書である。
- Go は静的解析をしやすいように設計されており、go/ast や go/types などの標準ライブラリがそろっている。本書はそれらを使い、AST と型情報の基礎から実践的な解析ロジックまでを、動くサンプルコードで解説する。
対象読者
Go で静的解析ツールを作ってみたいが、何から始めればよいか分からない人を想定している。読み終えたときに、自分でも静的解析ツールを書けそうだと思える状態を目指している。
目次
- はじめに
- 開発ディレクトリの作成
- 構文解析 - 抽象構文木(AST)を理解する
- 構文解析 - ASTの走査
- 構文解析 - 実例を見てみよう
- 型チェック - typesパッケージ
- 型チェック - プログラムソースコードからの型情報取得
- 型チェック - 実例を見てみよう
- 様々な解析を行うAnalyzer
- おわりに