TL;DR

  • Go で静的解析ツールを作るための入門書である。
  • Go は静的解析をしやすいように設計されており、go/ast や go/types などの標準ライブラリがそろっている。本書はそれらを使い、AST と型情報の基礎から実践的な解析ロジックまでを、動くサンプルコードで解説する。

対象読者

Go で静的解析ツールを作ってみたいが、何から始めればよいか分からない人を想定している。読み終えたときに、自分でも静的解析ツールを書けそうだと思える状態を目指している。

目次

  1. はじめに
  2. 開発ディレクトリの作成
  3. 構文解析 - 抽象構文木(AST)を理解する
  4. 構文解析 - ASTの走査
  5. 構文解析 - 実例を見てみよう
  6. 型チェック - typesパッケージ
  7. 型チェック - プログラムソースコードからの型情報取得
  8. 型チェック - 実例を見てみよう
  9. 様々な解析を行うAnalyzer
  10. おわりに

関連