2
0

DiagnosticCategory.cs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. namespace Terminal.Gui.Analyzers;
  2. /// <summary>
  3. /// Categories commonly used for diagnostic analyzers, inspired by FxCop and .NET analyzers conventions.
  4. /// </summary>
  5. internal enum DiagnosticCategory
  6. {
  7. /// <summary>
  8. /// Issues related to naming conventions and identifiers.
  9. /// </summary>
  10. Naming,
  11. /// <summary>
  12. /// API design, class structure, inheritance, etc.
  13. /// </summary>
  14. Design,
  15. /// <summary>
  16. /// How code uses APIs or language features incorrectly or suboptimally.
  17. /// </summary>
  18. Usage,
  19. /// <summary>
  20. /// Patterns that cause poor runtime performance.
  21. /// </summary>
  22. Performance,
  23. /// <summary>
  24. /// Vulnerabilities or insecure coding patterns.
  25. /// </summary>
  26. Security,
  27. /// <summary>
  28. /// Code patterns that can cause bugs, crashes, or unpredictable behavior.
  29. /// </summary>
  30. Reliability,
  31. /// <summary>
  32. /// Code readability, complexity, or future-proofing concerns.
  33. /// </summary>
  34. Maintainability,
  35. /// <summary>
  36. /// Code patterns that may not work on all platforms or frameworks.
  37. /// </summary>
  38. Portability,
  39. /// <summary>
  40. /// Issues with culture, localization, or globalization support.
  41. /// </summary>
  42. Globalization,
  43. /// <summary>
  44. /// Problems when working with COM, P/Invoke, or other interop scenarios.
  45. /// </summary>
  46. Interoperability,
  47. /// <summary>
  48. /// Issues with missing or incorrect XML doc comments.
  49. /// </summary>
  50. Documentation,
  51. /// <summary>
  52. /// Purely stylistic issues not affecting semantics (e.g., whitespace, order).
  53. /// </summary>
  54. Style
  55. }