1
0
mirror of https://github.com/golang/go synced 2024-09-30 16:08:36 -06:00
go/gopls/internal/hooks/analysis.go
Rohan Challa 42235f6384 internal/lsp: add support for type error analyzers
This change adds support within gopls for analyzers that work with type errors to provide suggested fixes.

Updates golang/go#34644

Change-Id: Ia8929173752fda6bd84a9edaabd310e758f25fe8
Reviewed-on: https://go-review.googlesource.com/c/tools/+/222761
Run-TryBot: Rohan Challa <rohan@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
2020-03-27 17:27:16 +00:00

31 lines
905 B
Go

// Copyright 2019 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package hooks
import (
"golang.org/x/tools/internal/lsp/source"
"honnef.co/go/tools/simple"
"honnef.co/go/tools/staticcheck"
"honnef.co/go/tools/stylecheck"
)
func updateAnalyzers(options *source.Options) {
if options.StaticCheck {
for _, a := range simple.Analyzers {
options.DefaultAnalyzers[a.Name] = source.Analyzer{Analyzer: a, Enabled: true}
}
for _, a := range staticcheck.Analyzers {
// This check conflicts with the vet printf check (golang/go#34494).
if a.Name == "SA5009" {
continue
}
options.DefaultAnalyzers[a.Name] = source.Analyzer{Analyzer: a, Enabled: true}
}
for _, a := range stylecheck.Analyzers {
options.DefaultAnalyzers[a.Name] = source.Analyzer{Analyzer: a, Enabled: true}
}
}
}