1
0
mirror of https://github.com/golang/go synced 2024-11-18 16:04:44 -07:00
go/internal/lsp
Rebecca Stambler 59e73619c7 internal/lsp: correctly handle type aliases when formatting
This change improves our approach to handling type aliases. Previously,
we were not fully qualifying the names in the AST, making the code
inserted in completions incorrect at times. Now, we clone the relevant
AST expr and qualify it. We also add handling for the return values of a
function, instead of just the parameters.

Fixes golang/go#38230
Fixes golang/go#37283

Change-Id: Ib79f4636891c9b610ae848e9fa4dbae7c63db509
Reviewed-on: https://go-review.googlesource.com/c/tools/+/229319
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Heschi Kreinick <heschi@google.com>
2020-04-23 20:53:58 +00:00
..
analysis internal/lsp: add type error fixes to existing diagnostics 2020-04-08 01:45:16 +00:00
browser
cache internal/event: extract keys to their own package 2020-04-23 18:13:43 +00:00
cmd internal/telemetry: renaming to internal/event 2020-04-23 17:20:48 +00:00
debug internal/event: change event.At to be a private field 2020-04-23 18:13:49 +00:00
diff internal/lsp/diff/difftest: ignore for GOOS=illumos 2020-04-14 02:36:50 +00:00
fake internal/lsp/regtest: track outstanding work using the progress API 2020-04-23 20:44:50 +00:00
fuzzy internal/lsp: fix errors found by staticcheck 2020-03-19 19:20:54 +00:00
helper internal/lsp: change to helper.go to output a formatted file 2020-01-31 20:35:38 +00:00
lsprpc internal/event: renaming the main event API functions 2020-04-23 17:21:36 +00:00
mod internal/event: renaming the main event API functions 2020-04-23 17:21:36 +00:00
protocol internal/event: extract keys to their own package 2020-04-23 18:13:43 +00:00
regtest internal/lsp/regtest: track outstanding work using the progress API 2020-04-23 20:44:50 +00:00
snippet
source internal/lsp: correctly handle type aliases when formatting 2020-04-23 20:53:58 +00:00
testdata internal/lsp: correctly handle type aliases when formatting 2020-04-23 20:53:58 +00:00
tests internal/lsp: correctly handle type aliases when formatting 2020-04-23 20:53:58 +00:00
code_action.go internal/lsp: add regtest for golang/go#38211 2020-04-22 01:32:14 +00:00
command.go internal/lsp/cache: add concurrency error check for go cmds 2020-04-08 03:22:09 +00:00
completion_test.go internal/lsp: correctly handle type aliases when formatting 2020-04-23 20:53:58 +00:00
completion.go internal/telemetry: renaming to internal/event 2020-04-23 17:20:48 +00:00
definition.go internal/lsp/source: return location(s) for imported packages 2020-03-09 16:25:02 +00:00
diagnostics.go internal/event: renaming the main event API functions 2020-04-23 17:21:36 +00:00
folding_range.go internal/lsp: check for file URIs on LSP requests 2020-02-14 22:51:26 +00:00
format.go internal/lsp: support textDocument/formatting for .mod extension 2020-03-06 13:51:27 +00:00
general.go internal/event: renaming the main event API functions 2020-04-23 17:21:36 +00:00
generate.go internal/event: renaming the main event API functions 2020-04-23 17:21:36 +00:00
highlight.go internal/telemetry: renaming to internal/event 2020-04-23 17:20:48 +00:00
hover.go internal/lsp: support textDocument/hover for .mod extension 2020-02-26 15:59:49 +00:00
implementation.go internal/lsp: check for file URIs on LSP requests 2020-02-14 22:51:26 +00:00
link.go internal/telemetry: renaming to internal/event 2020-04-23 17:20:48 +00:00
lsp_test.go internal/lsp: fix imports issue with duplicate package decl 2020-04-16 06:17:24 +00:00
references.go internal/lsp: refactor references/rename/implementations 2020-03-27 17:09:18 +00:00
rename.go internal/lsp: check for file URIs on LSP requests 2020-02-14 22:51:26 +00:00
reset_golden.sh
server_gen.go x/tools/gopls: add support for $/progress functionality 2020-03-16 21:25:24 +00:00
server.go internal/jsonrpc2: replace NewErrorf with fmt.Errorf 2020-04-13 01:57:14 +00:00
signature_help.go internal/event: extract keys to their own package 2020-04-23 18:13:43 +00:00
symbols.go internal/event: renaming the main event API functions 2020-04-23 17:21:36 +00:00
text_synchronization.go internal/jsonrpc2: replace NewErrorf with fmt.Errorf 2020-04-13 01:57:14 +00:00
workspace_symbol.go internal/event: renaming the main event API functions 2020-04-23 17:21:36 +00:00
workspace.go internal/lsp: generate boilerplate stubs for type Server 2020-01-24 14:41:51 +00:00