Commit 0eb42fa6 authored by Brad Fitzpatrick's avatar Brad Fitzpatrick

cmd/api: use one token.FileSet for all contexts

Prep for future CL.

R=gri
CC=golang-dev
https://golang.org/cl/6843048
parent 9799a5a4
......@@ -290,10 +290,11 @@ type pkgSymbol struct {
symbol string // "RoundTripper"
}
var fset = token.NewFileSet()
type Walker struct {
context *build.Context
root string
fset *token.FileSet
scope []string
features map[string]bool // set
lastConstType string
......@@ -310,7 +311,6 @@ type Walker struct {
func NewWalker() *Walker {
return &Walker{
fset: token.NewFileSet(),
features: make(map[string]bool),
packageState: make(map[string]loadState),
interfaces: make(map[pkgSymbol]*ast.InterfaceType),
......@@ -386,7 +386,7 @@ func (w *Walker) WalkPackage(name string) {
files := append(append([]string{}, info.GoFiles...), info.CgoFiles...)
for _, file := range files {
f, err := parser.ParseFile(w.fset, filepath.Join(dir, file), nil, 0)
f, err := parser.ParseFile(fset, filepath.Join(dir, file), nil, 0)
if err != nil {
log.Fatalf("error parsing package %s, file %s: %v", name, file, err)
}
......@@ -521,7 +521,7 @@ func (w *Walker) walkFile(file *ast.File) {
// Ignore. Handled in subsequent pass, by go/doc.
default:
log.Printf("unhandled %T, %#v\n", di, di)
printer.Fprint(os.Stderr, w.fset, di)
printer.Fprint(os.Stderr, fset, di)
os.Stderr.Write([]byte("\n"))
}
}
......@@ -835,7 +835,7 @@ func (w *Walker) nodeString(node interface{}) string {
return ""
}
var b bytes.Buffer
printer.Fprint(&b, w.fset, node)
printer.Fprint(&b, fset, node)
return b.String()
}
......@@ -844,7 +844,7 @@ func (w *Walker) nodeDebug(node interface{}) string {
return ""
}
var b bytes.Buffer
ast.Fprint(&b, w.fset, node, nil)
ast.Fprint(&b, fset, node, nil)
return b.String()
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment