summaryrefslogtreecommitdiff
path: root/marshal.go
diff options
context:
space:
mode:
Diffstat (limited to 'marshal.go')
-rw-r--r--marshal.go28
1 files changed, 11 insertions, 17 deletions
diff --git a/marshal.go b/marshal.go
index 7585a6d..43d8c14 100644
--- a/marshal.go
+++ b/marshal.go
@@ -8,19 +8,16 @@ import (
"go.wit.com/log"
)
-func marshal(names map[string]string) {
-
+// makes Marshal and Unmarshal functions for protoWIRE protoTEXT and protoJSON
+func (pb *Files) marshal(f *File) {
if argv.DryRun {
- for k, v := range names {
- log.Info(k, "=", v)
- }
- os.Exit(0)
+ return
}
- w, _ := os.OpenFile(names["protobase"]+".marshal.pb.go", os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0644)
+ w, _ := os.OpenFile(f.Filebase+".marshal.pb.go", os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0644)
- fmt.Fprintln(w, "package "+names["package"])
headerComment(w)
+ fmt.Fprintf(w, "package %s\n", f.Package)
fmt.Fprintln(w, "import (")
fmt.Fprintln(w, " \"google.golang.org/protobuf/encoding/protojson\"")
fmt.Fprintln(w, " \"google.golang.org/protobuf/encoding/prototext\"")
@@ -28,15 +25,12 @@ func marshal(names map[string]string) {
fmt.Fprintln(w, ")")
fmt.Fprintln(w, "")
- for _, v := range marshalKeys {
- // log.Info("found marshal key in .proto", v)
- marshalThing(w, v)
- }
-
- // marshalThing(w, names["Base"])
- // marshalThing(w, names["Bases"])
- for _, v := range argv.Marshal {
- marshalThing(w, v)
+ for _, msg := range f.MsgNames {
+ if msg.DoMarshal {
+ marshalThing(w, msg.Name)
+ } else {
+ log.Info("Skipping. DoMarshal = false for", msg.Name)
+ }
}
}