Support RelatedInformation for analysis Diagnostic (#1773)
This commit is contained in:
parent
b407bb8fd0
commit
856ffd16ec
@ -220,18 +220,31 @@ func buildIssues(diags []Diagnostic, linterNameBuilder func(diag *Diagnostic) st
|
|||||||
for i := range diags {
|
for i := range diags {
|
||||||
diag := &diags[i]
|
diag := &diags[i]
|
||||||
linterName := linterNameBuilder(diag)
|
linterName := linterNameBuilder(diag)
|
||||||
|
|
||||||
var text string
|
var text string
|
||||||
if diag.Analyzer.Name == linterName {
|
if diag.Analyzer.Name == linterName {
|
||||||
text = diag.Message
|
text = diag.Message
|
||||||
} else {
|
} else {
|
||||||
text = fmt.Sprintf("%s: %s", diag.Analyzer.Name, diag.Message)
|
text = fmt.Sprintf("%s: %s", diag.Analyzer.Name, diag.Message)
|
||||||
}
|
}
|
||||||
|
|
||||||
issues = append(issues, result.Issue{
|
issues = append(issues, result.Issue{
|
||||||
FromLinter: linterName,
|
FromLinter: linterName,
|
||||||
Text: text,
|
Text: text,
|
||||||
Pos: diag.Position,
|
Pos: diag.Position,
|
||||||
Pkg: diag.Pkg,
|
Pkg: diag.Pkg,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
if len(diag.Related) > 0 {
|
||||||
|
for _, info := range diag.Related {
|
||||||
|
issues = append(issues, result.Issue{
|
||||||
|
FromLinter: linterName,
|
||||||
|
Text: fmt.Sprintf("%s(related information): %s", diag.Analyzer.Name, info.Message),
|
||||||
|
Pos: diag.Pkg.Fset.Position(info.Pos),
|
||||||
|
Pkg: diag.Pkg,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return issues
|
return issues
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user