This file is indexed.

/usr/share/gocode/src/github.com/hashicorp/serf/command/output.go is in golang-github-hashicorp-serf-dev 0.7.0~ds1-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package command

import (
	"encoding/json"
	"fmt"
	"strings"
)

// Format some raw data for output. For better or worse, this currently forces
// the passed data object to implement fmt.Stringer, since it's pretty hard to
// implement a canonical *-to-string function.
func formatOutput(data interface{}, format string) ([]byte, error) {
	var out string

	switch format {

	case "json":
		jsonout, err := json.MarshalIndent(data, "", "  ")
		if err != nil {
			return nil, err
		}
		out = string(jsonout)

	case "text":
		out = data.(fmt.Stringer).String()

	default:
		return nil, fmt.Errorf("Invalid output format \"%s\"", format)

	}
	return []byte(prepareOutput(out)), nil
}

// Apply some final formatting to make sure we don't end up with extra newlines
func prepareOutput(in string) string {
	return strings.TrimSpace(string(in))
}