func()

in tools/go-agent/instrument/plugins/rewrite/rewrite.go [126:155]


func (c *Context) rewriteTopLevelNames(files map[*FileInfo]*dst.File) {
	for _, f := range files {
		dstutil.Apply(f, func(cursor *dstutil.Cursor) bool {
			switch n := cursor.Node().(type) {
			case *dst.FuncDecl:
			case *dst.ImportSpec:
			case *dst.TypeSpec:
			case *dst.GenDecl:
				if n.Tok == token.VAR && cursor.Parent() == f {
					for _, spec := range n.Specs {
						if valueSpec, ok := spec.(*dst.ValueSpec); ok {
							c.Var(valueSpec, true)
						}
					}
				} else if n.Tok == token.TYPE && cursor.Parent() == f {
					for _, spec := range n.Specs {
						if typeSpec, ok := spec.(*dst.TypeSpec); ok {
							c.Type(typeSpec, n, true)
						}
					}
				}
			default:
				return true
			}
			return false
		}, func(cursor *dstutil.Cursor) bool {
			return true
		})
	}
}