Example #1
0
func objsMatch(pkg *grinder.Package, fn *ast.FuncDecl, pos token.Pos, objs []types.Object, start, end token.Pos) bool {
	for _, obj := range objs {
		if start < obj.Pos() && obj.Pos() < end {
			// declaration is in code being moved
			return true
		}
		if pkg.LookupAtPos(fn, pos, obj.Name()) != obj {
			if debug {
				println("OBJ MISMATCH", obj.Name(), pkg.LookupAtPos(fn, pos, obj.Name()), obj)
			}
			return false
		}
	}
	return true
}