Skip to content

Commit cd2a66b

Browse files
committed
♻️ Move Helpers from cmd/ to pkg/
1 parent 93810c0 commit cd2a66b

File tree

3 files changed

+27
-22
lines changed

3 files changed

+27
-22
lines changed

cmd/params.go

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package cmd
2+
3+
import (
4+
"flag"
5+
)
6+
7+
func getParams() (*bool, *int, bool, bool, []string) {
8+
overwrite := flag.Bool("w", false, "Overwrite the input file")
9+
indent := flag.Int("indent", 2, "Default indent")
10+
log := flag.Bool("l", false, "Log when a file is formatted")
11+
12+
flag.Parse()
13+
14+
return overwrite, indent, *log, flag.NArg() > 0, flag.Args()
15+
16+
}

cmd/root.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
package cmd
22

33
import (
4+
"github.com/UltiRequiem/yamlfmt/pkg"
45
"log"
56
"os"
67
)
78

8-
// yamlfmt entry point
99
func Init() {
1010
overwrite, indent, logFiles, multipleArgs, files := getParams()
1111

1212
if multipleArgs {
1313
channel := make(chan string)
1414

1515
for _, file := range files {
16-
go formatFile(file, *indent, *overwrite, channel)
16+
go yamlfmt.FormatFile(file, *indent, *overwrite, channel)
1717
}
1818

1919
for i := 0; i < len(files); i++ {
@@ -25,7 +25,8 @@ func Init() {
2525

2626
}
2727

28-
} else {
29-
formatStream(os.Stdin, os.Stdout, *indent)
28+
return
3029
}
30+
31+
yamlfmt.FormatStream(os.Stdin, os.Stdout, *indent)
3132
}

cmd/utils.go renamed to pkg/root.go

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
package cmd
1+
package yamlfmt
22

33
import (
44
"bytes"
5-
"flag"
65
"fmt"
76
"io"
87
"log"
@@ -11,18 +10,7 @@ import (
1110
"gopkg.in/yaml.v3"
1211
)
1312

14-
func getParams() (*bool, *int, bool, bool, []string) {
15-
overwrite := flag.Bool("w", false, "Overwrite the input file")
16-
indent := flag.Int("indent", 2, "Default indent")
17-
log := flag.Bool("l", false, "Log when a file is formatted")
18-
19-
flag.Parse()
20-
21-
return overwrite, indent, *log, flag.NArg() > 0, flag.Args()
22-
23-
}
24-
25-
func formatFile(file string, indent int, overwrite bool, channel chan string) {
13+
func FormatFile(file string, indent int, overwrite bool, channel chan string) {
2614
r, err := os.Open(file)
2715

2816
defer r.Close()
@@ -33,18 +21,18 @@ func formatFile(file string, indent int, overwrite bool, channel chan string) {
3321

3422
var out bytes.Buffer
3523

36-
if err := formatStream(r, &out, indent); err != nil {
24+
if err := FormatStream(r, &out, indent); err != nil {
3725
log.Fatalf("Failed formatting YAML stream: '%s'", err)
3826
}
3927

40-
if e := dumpStream(&out, file, overwrite); e != nil {
28+
if e := DumpStream(&out, file, overwrite); e != nil {
4129
log.Fatalf("Cannot overwrite %s: '%s'", file, e)
4230
}
4331

4432
channel <- fmt.Sprintf("%s formatted!", file)
4533
}
4634

47-
func formatStream(r io.Reader, out io.Writer, indent int) error {
35+
func FormatStream(r io.Reader, out io.Writer, indent int) error {
4836

4937
d := yaml.NewDecoder(r)
5038
in := yaml.Node{}
@@ -70,7 +58,7 @@ func formatStream(r io.Reader, out io.Writer, indent int) error {
7058
return nil
7159
}
7260

73-
func dumpStream(out *bytes.Buffer, f string, overwrite bool) error {
61+
func DumpStream(out *bytes.Buffer, f string, overwrite bool) error {
7462
if overwrite {
7563
return os.WriteFile(f, out.Bytes(), 0744)
7664
}

0 commit comments

Comments
 (0)