1
0
mirror of https://github.com/golang/go synced 2024-11-18 16:14:46 -07:00
go/internal/lsp/testdata
Muir Manders 86caa796c7 internal/lsp: search candidate type's package for completions
When our expected type is a named type from another package, we now always
search that other package for completion candidates, even if it is not currently
imported.

Consider the example:

-- foo.go --
import "context"
func doSomething(ctx context.Context) {}

-- bar.go--
doSomething(<>)

"bar.go" doesn't import "context" yet, so normally you need to first import
"context" through whatever means before you get completion items from "context".
Now we notice that the expected type's package hasn't been imported yet and give
deep completions from "context".

Another use case is with literal completions. Consider:

-- foo.go --
import "bytes"
func doSomething(buf *bytes.Buffer) {}

-- bar.go--
doSomething(<>)

Now you will get a literal completion for "&bytes.Buffer{}" in "bar.go" even
though it hasn't imported "bytes" yet.

I had to pipe the import info around a bunch of places so the import is added
automatically for deep completions and literal completions.

Change-Id: Ie86af2aa64ee235038957c1eecf042f7ec2b329b
Reviewed-on: https://go-review.googlesource.com/c/tools/+/201207
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
2019-10-30 06:26:58 +00:00
..
analyzer go/analysis: rename reportNodef to ReportRangef 2019-10-28 19:16:33 +00:00
anon internal/lsp: add additional tests for completion 2018-12-19 22:27:14 +00:00
arraytype internal/lsp: improve completion for *ast.ArrayTypes 2019-10-23 16:34:50 +00:00
bad internal/lsp: do not close over the handle in the memoize function 2019-10-30 00:30:36 +00:00
badstmt internal/lsp: refactor error handling code in type-checking 2019-10-21 18:57:46 +00:00
bar internal/lsp: improve completion for *ast.ArrayTypes 2019-10-23 16:34:50 +00:00
basiclit internal/lsp: suppress more completions in comments and literals 2019-04-24 20:52:08 +00:00
baz internal/lsp: search candidate type's package for completions 2019-10-30 06:26:58 +00:00
builtins internal/lsp: omit "iota" completion outside const decls 2019-09-15 20:16:06 +00:00
casesensitive internal/lsp: provide option for case sensitive completion 2019-09-26 16:59:42 +00:00
cast internal/lsp: add more testdata for completion and diagnostics 2018-11-20 06:06:34 +00:00
channel internal/lsp: apply type modifiers to completion candidate 2019-06-19 20:27:14 +00:00
comments internal/lsp: suppress more completions in comments and literals 2019-04-24 20:52:08 +00:00
complit internal/lsp/source: fixes completion for slice literals of pointers 2019-08-30 17:14:47 +00:00
constant internal/lsp: remove constant value from label and add tests 2019-05-15 19:19:14 +00:00
deep internal/lsp: search for deep completions across function calls 2019-10-17 03:50:25 +00:00
errors internal/lsp: match completions case-insensitively 2019-06-28 03:43:36 +00:00
fieldlist internal/lsp: improve completions in *ast.FieldList 2019-09-25 22:58:16 +00:00
folding internal/lsp: fix regeneration of golden files 2019-09-25 13:16:59 +00:00
foo internal/lsp: fix bad *ast.ArrayTypes for completion 2019-10-17 20:53:01 +00:00
format internal/lsp: refactor error handling code in type-checking 2019-10-21 18:57:46 +00:00
func_rank internal/lsp: move function signature into detail instead of label 2019-07-03 21:07:46 +00:00
funcsig internal/lsp: fix scope of FuncType completion candidates 2019-09-25 19:53:33 +00:00
funcvalue internal/lsp: move function signature into detail instead of label 2019-07-03 21:07:46 +00:00
fuzzy internal/lsp: reorganize completion tests 2019-09-24 17:09:08 +00:00
generated internal/lsp: refactor error handling code in type-checking 2019-10-21 18:57:46 +00:00
godef internal/lsp: add constant values to hovers 2019-09-28 23:04:22 +00:00
good internal/lsp: remove duplicated enums 2019-09-25 15:30:23 +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: fix regeneration of golden files 2019-09-25 13:16:59 +00:00
index internal/lsp: handle more expected type cases 2019-05-16 16:26:11 +00:00
interfacerank internal/lsp: apply type modifiers to completion candidate 2019-06-19 20:27:14 +00:00
keywords internal/lsp: add some keyword completions 2019-10-22 20:49:18 +00:00
labels internal/lsp: fix label completion in range and type switch stmts 2019-10-22 21:33:09 +00:00
links internal/lsp: add links search in comments and string literals 2019-07-12 18:53:41 +00:00
maps internal/lsp: improve completions in *ast.MapType 2019-10-24 19:03:17 +00:00
nested_complit internal/lsp: improve completion for *ast.ArrayTypes 2019-10-23 16:34:50 +00:00
nodisk internal/lsp/testdata: delete nodisk/newdisk_exists.go 2019-08-06 20:59:09 +00:00
noparse internal/lsp: refactor error handling code in type-checking 2019-10-21 18:57:46 +00:00
noparse_format internal/lsp: refactor error handling code in type-checking 2019-10-21 18:57:46 +00:00
rank internal/lsp: downrank untyped completion candidates 2019-10-25 17:43:33 +00:00
references internal/lsp: fix declarations in references 2019-09-05 03:51:44 +00:00
rename internal/lsp: change the unified diff tests to be less fragile 2019-09-27 19:13:25 +00:00
selector internal/lsp: move function signature into detail instead of label 2019-07-03 21:07:46 +00:00
signature internal/lsp: hide signature help in function literals 2019-07-02 15:22:45 +00:00
snippets internal/lsp: don't qualify literal candidates in *ast.SelectorExpr 2019-10-16 23:29:27 +00:00
suggestedfix internal/lsp: enable suggested fixes by default 2019-09-09 19:40:07 +00:00
symbols internal/lsp: make interface methods children of the interface symbol 2019-04-24 02:46:01 +00:00
testy internal/lsp: refactor error handling code in type-checking 2019-10-21 18:57:46 +00:00
typeassert internal/lsp: improve completion support for type assertions 2019-06-26 23:33:08 +00:00
types internal/lsp: add more testdata for completion and diagnostics 2018-11-20 06:06:34 +00:00
unimported internal/lsp: search candidate type's package for completions 2019-10-30 06:26:58 +00:00
unresolved internal/lsp: fix function value completions 2019-06-20 15:43:39 +00:00
unsafe internal/lsp: fix type checking for unsafe package 2019-06-11 19:41:53 +00:00
summary.txt.golden internal/lsp: search candidate type's package for completions 2019-10-30 06:26:58 +00:00