start toying with a protobuf here
This commit is contained in:
parent
f4b0273fc1
commit
f2a296064e
|
@ -1,3 +1,4 @@
|
||||||
*.swp
|
*.swp
|
||||||
go.sum
|
go.sum
|
||||||
go.mod
|
go.mod
|
||||||
|
*.pb.go
|
||||||
|
|
12
Makefile
12
Makefile
|
@ -3,6 +3,12 @@ all:
|
||||||
@echo "Run: make redomod # to remake the go files"
|
@echo "Run: make redomod # to remake the go files"
|
||||||
@echo
|
@echo
|
||||||
|
|
||||||
|
redo: clean proto goimports vet
|
||||||
|
|
||||||
|
vet:
|
||||||
|
@GO111MODULE=off go vet
|
||||||
|
@echo this go plugin package builds okay
|
||||||
|
|
||||||
redomod: goimports
|
redomod: goimports
|
||||||
rm -f go.*
|
rm -f go.*
|
||||||
GO111MODULE= go mod init
|
GO111MODULE= go mod init
|
||||||
|
@ -10,3 +16,9 @@ redomod: goimports
|
||||||
|
|
||||||
goimports:
|
goimports:
|
||||||
goimports -w *.go
|
goimports -w *.go
|
||||||
|
|
||||||
|
proto:
|
||||||
|
autogenpb --proto widget.proto
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f go.* *.pb.go
|
||||||
|
|
|
@ -0,0 +1,36 @@
|
||||||
|
syntax = "proto3";
|
||||||
|
|
||||||
|
// playing around with ideas here
|
||||||
|
|
||||||
|
package main;
|
||||||
|
|
||||||
|
import "google/protobuf/timestamp.proto"; // Import the well-known type for Timestamp
|
||||||
|
|
||||||
|
message Size {
|
||||||
|
int64 width = 1;
|
||||||
|
int64 height = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
message Location {
|
||||||
|
int64 x = 1;
|
||||||
|
int64 y = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
message Tree {
|
||||||
|
Widget parent = 1;
|
||||||
|
repeated Widget children = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
message Widget {
|
||||||
|
int64 id = 1;
|
||||||
|
string name = 2;
|
||||||
|
Size size = 3;
|
||||||
|
Location location = 4;
|
||||||
|
string color = 5;
|
||||||
|
}
|
||||||
|
|
||||||
|
message Widgets {
|
||||||
|
string uuid = 1; // `autogenpb:uuid:0331fcd7-3c8c-43e4-be1b-77db6a6bc58c`
|
||||||
|
string version = 2; // `autogenpb:version:v1`
|
||||||
|
repeated Widget Widgets = 3;
|
||||||
|
}
|
Loading…
Reference in New Issue