1
0
mirror of https://github.com/golang/go synced 2024-11-18 16:14:46 -07:00
go/internal/lsp/testdata
Muir Manders da514acc47 internal/lsp: suggest completions that satisfy interfaces
When checking if a completion candidate matches the expected type at
the cursor position, we now use types.AssignableTo instead of
types.Identical. This properly handles cases like using a concrete
type to satisfy an interface type.

Calling AssignableTo triggered some crashes related to the fake
"resolved" types we create. Their underlying type was nil, which is
not allowed. We now set their underlying type to the invalid type.

I've also rearranged things so expected type information lives in a
dedicated typeInference struct. For now there is no new information added,
but in subsequent commits there will be more metadata about the
expected type.

Change-Id: I14e537c548960c30e444cf512a4413d75bb3ee45
GitHub-Last-Rev: 7e64ebe32938562648938d7a480195d954b018f2
GitHub-Pull-Request: golang/tools#116
Reviewed-on: https://go-review.googlesource.com/c/tools/+/182358
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
2019-06-17 19:08:20 +00:00
..
analyzer internal/lsp: fix badly formatted error messages from go vet 2019-04-16 19:41:54 +00:00
anon internal/lsp: add additional tests for completion 2018-12-19 22:27:14 +00:00
bad internal/lsp: adding the test suite to the source package 2019-05-10 20:20:41 +00:00
badstmt internal/lsp: handle completion after defer, go statements 2019-04-24 22:01:01 +00:00
bar internal/lsp: fix composite literal completion 2019-05-13 22:24:33 +00:00
basiclit internal/lsp: suppress more completions in comments and literals 2019-04-24 20:52:08 +00:00
baz internal/lsp: suppress more completions in comments and literals 2019-04-24 20:52:08 +00:00
builtins internal/lsp: support builtin types without hardcoding 2019-05-01 04:50:30 +00:00
cast internal/lsp: add more testdata for completion and diagnostics 2018-11-20 06:06:34 +00:00
channel internal/lsp: handle more expected type cases 2019-05-16 16:26:11 +00:00
comments internal/lsp: suppress more completions in comments and literals 2019-04-24 20:52:08 +00:00
complit internal/lsp: fix composite literal completion 2019-05-13 22:24:33 +00:00
constant internal/lsp: remove constant value from label and add tests 2019-05-15 19:19:14 +00:00
errors internal/lsp: add additional tests for completion 2018-12-19 22:27:14 +00:00
foo internal/lsp: add find all references 2019-06-10 19:06:22 +00:00
format internal/lsp: switch golden files to use txtar 2019-05-08 14:59:27 +00:00
func_rank internal/lsp: handle more expected type cases 2019-05-16 16:26:11 +00:00
godef internal/lsp: support definitions and hover for builtins 2019-05-17 00:35:10 +00:00
good internal/lsp: adding the test suite to the source package 2019-05-10 20:20:41 +00:00
highlights internal/lsp: add support for document highlight 2019-03-26 19:08:20 +00:00
importedcomplit internal/lsp: fix composite literal completion 2019-05-13 22:24:33 +00:00
imports internal/lsp: add some basic tests for imports 2019-06-03 23:13:51 +00:00
index internal/lsp: handle more expected type cases 2019-05-16 16:26:11 +00:00
interfacerank internal/lsp: suggest completions that satisfy interfaces 2019-06-17 19:08:20 +00:00
links internal/lsp: add document link handling for import paths to godoc 2019-05-03 18:56:57 +00:00
nested_complit internal/lsp: improve composite literal completion 2019-04-23 22:28:03 +00:00
nodisk internal/lsp: a cleaner way of doing overlays 2019-04-17 21:35:05 +00:00
noparse internal/lsp: connect basic analysis functionality 2019-02-06 21:48:25 +00:00
noparse_format internal/lsp: switch golden files to use txtar 2019-05-08 14:59:27 +00:00
rank internal/lsp: handle more expected type cases 2019-05-16 16:26:11 +00:00
selector internal/lsp: add more testdata for completion and diagnostics 2018-11-20 06:06:34 +00:00
signature internal/lsp: use builtin package for signature help 2019-05-15 13:46:40 +00:00
snippets internal/lsp: fix completion insertion 2019-05-17 18:32:58 +00:00
symbols internal/lsp: make interface methods children of the interface symbol 2019-04-24 02:46:01 +00:00
testy internal/lsp: connect basic analysis functionality 2019-02-06 21:48:25 +00:00
types internal/lsp: add more testdata for completion and diagnostics 2018-11-20 06:06:34 +00:00
unresolved internal/lsp: suggest completions that satisfy interfaces 2019-06-17 19:08:20 +00:00
unsafe internal/lsp: fix type checking for unsafe package 2019-06-11 19:41:53 +00:00