From d022bef7e5fe2945651a3035131f9b4a06bd4a04 Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Fri, 13 Dec 2024 18:57:48 -0600 Subject: [PATCH] Notes added by 'git notes append' --- e8fcc25b1a11ec0e57037dfef2756ee153caa65d | 58 ++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/e8fcc25b1a11ec0e57037dfef2756ee153caa65d b/e8fcc25b1a11ec0e57037dfef2756ee153caa65d index acb8156..002b62c 100644 --- a/e8fcc25b1a11ec0e57037dfef2756ee153caa65d +++ b/e8fcc25b1a11ec0e57037dfef2756ee153caa65d @@ -1214,3 +1214,61 @@ func (all *Patchs) selectAllPatch() []*Patch { } // `autogen:uuid.marshal.pb.go` + +package forgepb + +// This file was autogenerated with autogenpb. +// go install go.wit.com/apps/autogenpb@latest +// +// You can use it on simple protobuf files +// The .proto file must have a singular and plural form of a message +// (for those of you that know ruby on rails, it's like that) +// +// You can mark which repos you want to auto generate sort.pb.go and marshal.pb.go files for +// +// For an example, +// go-clone go.wit.com/lib/protobuf/gitpb +// + +import ( + "google.golang.org/protobuf/encoding/protojson" + "google.golang.org/protobuf/encoding/prototext" + "google.golang.org/protobuf/proto" +) + +// human readable JSON +func (v *UuidConfigs) FormatJSON() string { + return protojson.Format(v) +} + +// marshal json +func (v *UuidConfigs) MarshalJSON() ([]byte, error) { + return protojson.Marshal(v) +} + +// unmarshal json +func (v *UuidConfigs) UnmarshalJSON(data []byte) error { + return protojson.Unmarshal(data, v) +} + +// apparently this isn't stable, but it's awesomely better +// https://protobuf.dev/reference/go/faq/#unstable-text +// it's so great for config files, I'm using it by default to try to fix the problems with it +func (v *UuidConfigs) FormatTEXT() string { + return prototext.Format(v) +} + +// unmarshalTEXT. This reads the .text config file back in after the user edits it +func (v *UuidConfigs) UnmarshalTEXT(data []byte) error { + return prototext.Unmarshal(data, v) +} + +// marshal to wire. This is called winning. +func (v *UuidConfigs) Marshal() ([]byte, error) { + return proto.Marshal(v) +} + +// unmarshal from wire. You have won. +func (v *UuidConfigs) Unmarshal(data []byte) error { + return proto.Unmarshal(data, v) +}