autogen pb gui table fixes
This commit is contained in:
parent
261d54485c
commit
68eea60f16
|
@ -65,6 +65,7 @@ message Fruit {
|
|||
Pears notpears = 6;
|
||||
Pears fakepears = 7;
|
||||
repeated Basket gifts = 8;
|
||||
int64 price = 9; // `autogenpb:sort`
|
||||
}
|
||||
|
||||
// "Fruits" MUST EXIST and start exactly this way
|
||||
|
|
|
@ -80,6 +80,7 @@ message File {
|
|||
map<string, string> iterMap = 11;
|
||||
repeated Sort toSort = 12; // variables that are repeated can have the standard functions generated (Sort(), etc)
|
||||
string goPath = 13; // the version to use in a func NewMsgName()
|
||||
bool doGui = 14; // if a gui.pb.go file should be created
|
||||
}
|
||||
|
||||
// I know, I know, the whole point of using protobuf
|
||||
|
|
|
@ -32,8 +32,13 @@ func (pb *Files) makeGuiFile(pf *File) error {
|
|||
}
|
||||
if v.VarType == "string" {
|
||||
log.Printf("make Add function here %s %s %s\n", pf.Bases.Name, pf.Base.Name, v.VarName)
|
||||
guiAddFunc(newf, pf.Bases.Name, pf.Base.Name, v.VarName)
|
||||
// log.Printf("make Add function here %s %s\n", v.VarType, v.VarName)
|
||||
guiAddStringFunc(newf, pf.Bases.Name, pf.Base.Name, v.VarName)
|
||||
continue
|
||||
}
|
||||
if v.VarType == "int64" {
|
||||
log.Printf("make Add function here %s %s %s\n", pf.Bases.Name, pf.Base.Name, v.VarName)
|
||||
guiAddIntFunc(newf, pf.Bases.Name, pf.Base.Name, v.VarName)
|
||||
continue
|
||||
}
|
||||
/*
|
||||
continue
|
||||
|
@ -221,7 +226,7 @@ func guiStringFuncs(w io.Writer, ZOOPB string, FRUITS string, FRUIT string) {
|
|||
fmt.Fprintln(w, "}")
|
||||
}
|
||||
|
||||
func guiAddFunc(w io.Writer, FRUITS string, FRUIT string, BRAND string) {
|
||||
func guiAddStringFunc(w io.Writer, FRUITS string, FRUIT string, BRAND string) {
|
||||
fmt.Fprintln(w, "")
|
||||
fmt.Fprintln(w, "func (t *"+FRUITS+"Table) Add"+BRAND+"() {")
|
||||
fmt.Fprintln(w, " // t.pb.Order = append(t.pb.Order, "+BRAND+")")
|
||||
|
@ -241,3 +246,24 @@ func guiAddFunc(w io.Writer, FRUITS string, FRUIT string, BRAND string) {
|
|||
fmt.Fprintln(w, "")
|
||||
*/
|
||||
}
|
||||
|
||||
func guiAddIntFunc(w io.Writer, FRUITS string, FRUIT string, BRAND string) {
|
||||
fmt.Fprintln(w, "")
|
||||
fmt.Fprintln(w, "func (t *"+FRUITS+"Table) Add"+BRAND+"() {")
|
||||
fmt.Fprintln(w, " // t.pb.Order = append(t.pb.Order, "+BRAND+")")
|
||||
fmt.Fprintln(w, "")
|
||||
fmt.Fprintln(w, " t.AddIntFunc(\""+BRAND+"\", func(m *"+FRUIT+") int {")
|
||||
fmt.Fprintln(w, " return int(m."+BRAND+")")
|
||||
fmt.Fprintln(w, " })")
|
||||
fmt.Fprintln(w, "}")
|
||||
/*
|
||||
fmt.Fprintln(w, "func (t *"+FRUITS+"Table) AddMemory() {")
|
||||
fmt.Fprintln(w, " t.pb.Order = append(t.pb.Order, \"Memory\")")
|
||||
fmt.Fprintln(w, "}")
|
||||
fmt.Fprintln(w, "")
|
||||
fmt.Fprintln(w, "func (t *"+FRUITS+"Table) AddCpus() {")
|
||||
fmt.Fprintln(w, " t.pb.Order = append(t.pb.Order, \"Cpus\")")
|
||||
fmt.Fprintln(w, "}")
|
||||
fmt.Fprintln(w, "")
|
||||
*/
|
||||
}
|
||||
|
|
6
main.go
6
main.go
|
@ -188,8 +188,10 @@ func main() {
|
|||
badExit(err)
|
||||
}
|
||||
|
||||
if err := pb.makeGuiFile(pf); err != nil {
|
||||
badExit(err)
|
||||
if pf.DoGui {
|
||||
if err := pb.makeGuiFile(pf); err != nil {
|
||||
badExit(err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -10,6 +10,7 @@ import (
|
|||
"strings"
|
||||
|
||||
"go.wit.com/lib/fhelp"
|
||||
"go.wit.com/log"
|
||||
"golang.org/x/text/cases"
|
||||
"golang.org/x/text/language"
|
||||
)
|
||||
|
@ -188,5 +189,10 @@ func (pf *File) parseForMessage(line string) *MsgName {
|
|||
msg.DoMarshal = true
|
||||
// log.Info("Added Marshal=true:", msg.Name)
|
||||
}
|
||||
if strings.Contains(line, "autogenpb:gui") {
|
||||
log.Info("got autogenpb:gui")
|
||||
pf.DoGui = true
|
||||
// os.Exit(-1)
|
||||
}
|
||||
return msg
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue