go/internal/lsp/source
Muir Manders a6aac22fcd internal/lsp: fix find-implementation for promoted methods
We weren't returning promoted methods as implementations when the
promoted method was defined in a different package than the type
implementing the interface.

Fix by properly mapping the implementer types.Object to its containing
source.Package.

I generalized the implementations() result to just contain the
implementer objects and their containing package. This allowed me to
get rid of some result prep code in Implementation().

Fixes golang/go#35972.

Change-Id: I867f2114c34e2ad39515ee3c8b6354c1cd35f7af
Reviewed-on: https://go-review.googlesource.com/c/tools/+/210280
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
2019-12-16 21:36:29 +00:00
..
comment.go internal/lsp: convert comments to markdown before sending to client 2019-10-04 18:35:38 +00:00
comment_test.go internal/lsp: convert comments to markdown before sending to client 2019-10-04 18:35:38 +00:00
completion.go internal/lsp: offer basic type conversion candidates 2019-12-12 22:41:01 +00:00
completion_format.go internal/lsp/source: extract helper, improve error messages 2019-12-04 19:34:30 +00:00
completion_keywords.go internal/lsp: suggest "fallthrough" only inside switches 2019-12-10 22:10:49 +00:00
completion_labels.go internal/lsp: fix label completion in range and type switch stmts 2019-10-22 21:33:09 +00:00
completion_literal.go internal/lsp: remove useless signature cast completion candidate 2019-12-16 05:27:35 +00:00
completion_snippet.go internal/lsp: reorganize and refactor code 2019-11-21 02:33:28 +00:00
deep_completion.go internal/lsp/source: attach Package to completions when available 2019-11-05 20:21:09 +00:00
diagnostics.go internal/lsp: add error handling for self imports 2019-12-06 19:13:54 +00:00
errors.go internal/lsp/source: fix error message for multiple GOPATHs 2019-12-13 19:21:09 +00:00
folding_range.go internal/lsp: rename CheckPackageHandle to PackageHandle 2019-12-02 18:29:46 +00:00
format.go internal/lsp/source: optimize computeFixEdits 2019-12-06 20:21:26 +00:00
highlight.go internal/lsp: skip return highlighting if cursor is in arglist of func 2019-12-13 22:12:58 +00:00
hover.go internal/lsp: improve link in documentation on hover 2019-12-12 22:39:21 +00:00
identifier.go internal/lsp: improve link in documentation on hover 2019-12-12 22:39:21 +00:00
implementation.go internal/lsp: fix find-implementation for promoted methods 2019-12-16 21:36:29 +00:00
options.go internal/lsp: offer basic type conversion candidates 2019-12-12 22:41:01 +00:00
references.go internal/lsp: respect References.IncludeDeclaration setting 2019-12-06 20:05:57 +00:00
rename.go internal/lsp: respect References.IncludeDeclaration setting 2019-12-06 20:05:57 +00:00
rename_check.go internal/lsp: improve literal func completion candidates 2019-11-07 21:18:00 +00:00
signature_help.go internal/lsp/source: extract helper, improve error messages 2019-12-04 19:34:30 +00:00
source_test.go internal/lsp: offer basic type conversion candidates 2019-12-12 22:41:01 +00:00
suggested_fix.go internal/lsp: move error range computations into cache package 2019-10-21 22:12:58 +00:00
symbols.go internal/lsp: propagate errors through source.DocumentSymbols 2019-12-05 01:21:29 +00:00
tidy.go internal/lsp: support running `go mod tidy` as a code action 2019-09-20 13:08:46 +00:00
util.go internal/lsp: improve link in documentation on hover 2019-12-12 22:39:21 +00:00
view.go internal/lsp: create parseModHandle for storing go.mod data 2019-12-13 22:03:54 +00:00