analysis.go 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. package stylecheck
  2. import (
  3. "honnef.co/go/tools/analysis/facts"
  4. "honnef.co/go/tools/analysis/lint"
  5. "honnef.co/go/tools/config"
  6. "honnef.co/go/tools/internal/passes/buildir"
  7. "honnef.co/go/tools/internal/sharedcheck"
  8. "golang.org/x/tools/go/analysis"
  9. "golang.org/x/tools/go/analysis/passes/inspect"
  10. )
  11. var Analyzers = lint.InitializeAnalyzers(Docs, map[string]*analysis.Analyzer{
  12. "ST1000": {
  13. Run: CheckPackageComment,
  14. },
  15. "ST1001": {
  16. Run: CheckDotImports,
  17. Requires: []*analysis.Analyzer{facts.Generated, config.Analyzer},
  18. },
  19. "ST1003": {
  20. Run: CheckNames,
  21. Requires: []*analysis.Analyzer{inspect.Analyzer, facts.Generated, config.Analyzer},
  22. },
  23. "ST1005": {
  24. Run: CheckErrorStrings,
  25. Requires: []*analysis.Analyzer{buildir.Analyzer},
  26. },
  27. "ST1006": {
  28. Run: CheckReceiverNames,
  29. Requires: []*analysis.Analyzer{buildir.Analyzer, facts.Generated},
  30. },
  31. "ST1008": {
  32. Run: CheckErrorReturn,
  33. Requires: []*analysis.Analyzer{buildir.Analyzer},
  34. },
  35. "ST1011": {
  36. Run: CheckTimeNames,
  37. Requires: []*analysis.Analyzer{inspect.Analyzer},
  38. },
  39. "ST1012": {
  40. Run: CheckErrorVarNames,
  41. },
  42. "ST1013": {
  43. Run: CheckHTTPStatusCodes,
  44. // TODO(dh): why does this depend on facts.TokenFile?
  45. Requires: []*analysis.Analyzer{facts.Generated, facts.TokenFile, config.Analyzer, inspect.Analyzer},
  46. },
  47. "ST1015": {
  48. Run: CheckDefaultCaseOrder,
  49. Requires: []*analysis.Analyzer{inspect.Analyzer, facts.Generated, facts.TokenFile},
  50. },
  51. "ST1016": {
  52. Run: CheckReceiverNamesIdentical,
  53. Requires: []*analysis.Analyzer{buildir.Analyzer, facts.Generated},
  54. },
  55. "ST1017": {
  56. Run: CheckYodaConditions,
  57. Requires: []*analysis.Analyzer{inspect.Analyzer, facts.Generated, facts.TokenFile},
  58. },
  59. "ST1018": {
  60. Run: CheckInvisibleCharacters,
  61. Requires: []*analysis.Analyzer{inspect.Analyzer},
  62. },
  63. "ST1019": {
  64. Run: CheckDuplicatedImports,
  65. Requires: []*analysis.Analyzer{facts.Generated},
  66. },
  67. "ST1020": {
  68. Run: CheckExportedFunctionDocs,
  69. Requires: []*analysis.Analyzer{facts.Generated, inspect.Analyzer},
  70. },
  71. "ST1021": {
  72. Run: CheckExportedTypeDocs,
  73. Requires: []*analysis.Analyzer{facts.Generated, inspect.Analyzer},
  74. },
  75. "ST1022": {
  76. Run: CheckExportedVarDocs,
  77. Requires: []*analysis.Analyzer{facts.Generated, inspect.Analyzer},
  78. },
  79. "ST1023": sharedcheck.RedundantTypeInDeclarationChecker("should", false),
  80. })