| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- package cli
-
- import (
- "encoding/json"
- "fmt"
- "io"
- "os"
- )
-
- func Fatal(arg interface{}) {
- if value, ok := arg.(error); ok {
- arg = fmt.Errorf("fatal error: %+v", value) // nolint: errorlint
- }
-
- PrintStderr(arg)
- os.Exit(1)
- }
-
- func PrintStderr(args ...interface{}) {
- fmt.Fprintln(os.Stderr, args...)
- }
-
- func PrintStdout(args ...interface{}) {
- fmt.Println(args...) // nolint: forbidigo
- }
-
- func PrintJSONStderr(data interface{}) {
- printJSON(os.Stderr, data)
- }
-
- func PrintJSONStdout(data interface{}) {
- printJSON(os.Stdout, data)
- }
-
- func printJSON(writer io.Writer, data interface{}) {
- encoder := json.NewEncoder(writer)
- encoder.SetEscapeHTML(false)
- encoder.SetIndent("", " ")
-
- if err := encoder.Encode(data); err != nil {
- panic(err)
- }
- }
|