go/internal
Heschi Kreinick 47985cf3c7 internal/lsp/cache: refactor Go file parsing
Hopefully improve some of the details around parsing that have always
confused me.

- parser.ParseFile will never return an error other than
scanner.ErrorList. Encode that in ParsedGoFile.
- parser.ParseFile will never return a nil file. Eliminate the code
path that handled that.
- Explain why we might fail to find a token.File.
- Trying to fix errors appears quite expensive even if there aren't any
to fix. Don't waste the time.

Change-Id: I87e082ed52c98a438bc7fd3b29e1a486f32fb347
Reviewed-on: https://go-review.googlesource.com/c/tools/+/297069
Trust: Heschi Kreinick <heschi@google.com>
Run-TryBot: Heschi Kreinick <heschi@google.com>
gopls-CI: kokoro <noreply+kokoro@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
Reviewed-by: Robert Findley <rfindley@google.com>
2021-03-02 02:05:01 +00:00
..
analysisinternal
apidiff
event
fakenet
fastwalk x/tools/internal/fastwalk: fixes "interrupted system call" error 2021-02-24 01:32:32 +00:00
gocommand
gopathwalk
imports all: go fmt ./... 2021-02-20 03:28:52 +00:00
jsonrpc2
lsp internal/lsp/cache: refactor Go file parsing 2021-03-02 02:05:01 +00:00
memoize
packagesinternal
proxydir
span internal/lsp/cache: parse filenames from go list errors correctly 2021-03-02 01:39:30 +00:00
stack
testenv all: go fmt ./... 2021-02-20 03:28:52 +00:00
tool
typesinternal internal/typesinternal: sync error codes with go1.16 2021-02-16 20:01:04 +00:00
xcontext