json.go 525 B

12345678910111213141516171819202122232425262728
  1. package report
  2. import (
  3. "encoding/json"
  4. "io"
  5. )
  6. func writeJson(findings []Finding, w io.WriteCloser) error {
  7. if len(findings) == 0 {
  8. findings = []Finding{}
  9. }
  10. for i := range findings {
  11. // Remove `Line` from JSON output
  12. findings[i].Line = ""
  13. }
  14. return writeJsonExtra(findings, w)
  15. }
  16. func writeJsonExtra(findings []Finding, w io.WriteCloser) error {
  17. if len(findings) == 0 {
  18. findings = []Finding{}
  19. }
  20. defer w.Close()
  21. encoder := json.NewEncoder(w)
  22. encoder.SetIndent("", " ")
  23. return encoder.Encode(findings)
  24. }