code.pfad.fr/gohmekit@v0.2.1/cmd/generate/categories.go (about) 1 package main 2 3 import ( 4 "os" 5 "strconv" 6 ) 7 8 func writeCategories(cc []Category) error { 9 f, err := os.Create("discovery/apple_category_gen.go") 10 if err != nil { 11 return err 12 } 13 defer f.Close() 14 15 _, err = f.WriteString(`// Code generated by cmd/generate/main.go; DO NOT EDIT. 16 17 package discovery 18 19 type Category uint16 20 21 const ( 22 `) 23 if err != nil { 24 return err 25 } 26 27 for _, c := range cc { 28 txt := " " + camelCase(c.Name) + " = Category(" + strconv.Itoa(c.Category) + ")\n" 29 _, err = f.WriteString(txt) 30 if err != nil { 31 return err 32 } 33 } 34 _, err = f.WriteString(")\n") 35 if err != nil { 36 return err 37 } 38 39 if err = f.Close(); err != nil { 40 return err 41 } 42 return nil 43 }