Goで静的解析
解析したいパターンの最小例を作ってASTを観察する
type A intのASTを見る例
code:go
package main
import (
"fmt"
"go/ast"
"go/parser"
"go/token"
)
func main() {
fset := token.NewFileSet()
f, _ := parser.ParseFile(fset, "example.go", src, parser.Mode(0))
for _, d := range f.Decls {
ast.Print(fset, d)
fmt.Println()
}
}
var src = `package p
import (
"time"
)
type A int
`
ASTから目的の値を得るため探索する