Go言語ではgo/ast、go/parser、go/tokenパッケージを使用することで、Go言語で書かれたソースコードを解析することができます。 解析したソースコードを表現する抽象構文木(AST:abstract syntax tree)の形で出力されます。 文章では難しいので実際のサンプルで試してみたいと思います。 以下の様な解析対象のソースコードを用意します。 package main import ( "fmt" "time" ) type MyInterface interface { Greeting() } type MyStruct struct { Name string } func (m *MyStruct) Greeting() { fmt.Printf("%v, %sさん、こんにちは!\n", time.Now(), m.Name) } func (m *MySt