| This test verifies that gopls can rename instantiated fields. |
| |
| -- a.go -- |
| package a |
| |
| // This file is adapted from the example in the issue. |
| |
| type builder[S ~[]int] struct { |
| elements S //@rename("elements", "elements2", OneToTwo) |
| } |
| |
| type BuilderImpl[S ~[]int] struct{ builder[S] } |
| |
| func NewBuilderImpl[S ~[]int](name string) *BuilderImpl[S] { |
| impl := &BuilderImpl[S]{ |
| builder[S]{ |
| elements: S{}, |
| }, |
| } |
| |
| _ = impl.elements |
| return impl |
| } |
| -- @OneToTwo/a.go -- |
| @@ -6 +6 @@ |
| - elements S //@rename("elements", "elements2", OneToTwo) |
| + elements2 S //@rename("elements", "elements2", OneToTwo) |
| @@ -14 +14 @@ |
| - elements: S{}, |
| + elements2: S{}, |
| @@ -18 +18 @@ |
| - _ = impl.elements |
| + _ = impl.elements2 |