1 回答

TA貢獻(xiàn)1111條經(jīng)驗(yàn) 獲得超0個(gè)贊
打電話給阿斯特。用于解析 AST 中的標(biāo)識(shí)符的 NewPackage:
fset := token.NewFileSet()
files := make(map[string]*ast.File)
for _, name := range []string{"unbounded_executor.go", "log.go"} {
f, err := parser.ParseFile(fset, name, nil, parser.ParseComments)
if err != nil {
log.Fatal(err)
}
files[name] = f
}
ast.NewPackage(fset, files, nil, nil)
ast.Inspect(files["unbounded_executor.go"], func(n ast.Node) bool {
if n, ok := n.(*ast.Ident); ok && n.Name == "ErrorLogger" {
fmt.Println(n.Obj)
}
return true
})
由于未提供正確的導(dǎo)入程序,并且文件列表不包括包中的所有文件,因此 NewPackage 將返回未解決的符號(hào)錯(cuò)誤。
- 1 回答
- 0 關(guān)注
- 105 瀏覽
添加回答
舉報(bào)