Skip to content

Commit c9f2cde

Browse files
authored
Merge pull request #25 from kyoh86/format
Format sources
2 parents 5275369 + 43fd8be commit c9f2cde

File tree

1 file changed

+25
-20
lines changed

1 file changed

+25
-20
lines changed

cmd/interfacer/main.go

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,11 @@
22
package main
33

44
import (
5+
"bytes"
6+
"errors"
57
"flag"
68
"fmt"
9+
"go/format"
710
"os"
811
"strings"
912
"text/template"
@@ -40,39 +43,32 @@ type vars struct {
4043
Interface interfaces.Interface
4144
}
4245

43-
func nonil(err ...error) error {
44-
for _, e := range err {
45-
if e != nil {
46-
return e
47-
}
46+
func main() {
47+
if err := run(); err != nil {
48+
fmt.Fprintln(os.Stderr, err)
49+
os.Exit(1)
4850
}
49-
return nil
5051
}
5152

52-
func die(v interface{}) {
53-
fmt.Fprintln(os.Stderr, v)
54-
os.Exit(1)
55-
}
56-
57-
func main() {
53+
func run() error {
5854
flag.Parse()
5955
if *query == "" {
60-
die("empty -for flag value; see -help for details")
56+
return errors.New("empty -for flag value; see -help for details")
6157
}
6258
if *output == "" {
63-
die("empty -o flag value; see -help for details")
59+
return errors.New("empty -o flag value; see -help for details")
6460
}
6561
q, err := interfaces.ParseQuery(*query)
6662
if err != nil {
67-
die(err)
63+
return err
6864
}
6965
opts := &interfaces.Options{
7066
Query: q,
7167
Unexported: *all,
7268
}
7369
i, err := interfaces.NewWithOptions(opts)
7470
if err != nil {
75-
die(err)
71+
return err
7672
}
7773
v := &vars{
7874
Type: fmt.Sprintf(`"%s"`, *query),
@@ -85,15 +81,24 @@ func main() {
8581
} else {
8682
v.InterfaceName = *as
8783
}
84+
var buf bytes.Buffer
85+
if err := tmpl.Execute(&buf, v); err != nil {
86+
return err
87+
}
88+
formatted, err := format.Source(buf.Bytes())
89+
if err != nil {
90+
return err
91+
}
8892
f := os.Stdout
8993
if *output != "-" {
9094
f, err = os.OpenFile(*output, os.O_TRUNC|os.O_CREATE|os.O_WRONLY, 0644)
9195
if err != nil {
92-
die(err)
96+
return err
9397
}
98+
defer f.Close()
9499
}
95-
err = nonil(tmpl.Execute(f, v), f.Close())
96-
if err != nil {
97-
die(err)
100+
if _, err := f.Write(formatted); err != nil {
101+
return err
98102
}
103+
return nil
99104
}

0 commit comments

Comments
 (0)