Notes removed by 'git notes remove'
This commit is contained in:
parent
419744bc02
commit
afb6f01b20
|
@ -1,740 +0,0 @@
|
||||||
// `autogen:go.mod`
|
|
||||||
|
|
||||||
module go.wit.com/apps/autogenpb
|
|
||||||
|
|
||||||
go 1.21
|
|
||||||
|
|
||||||
toolchain go1.23.4
|
|
||||||
|
|
||||||
require (
|
|
||||||
github.com/alexflint/go-arg v1.5.1
|
|
||||||
github.com/go-cmd/cmd v1.4.3
|
|
||||||
go.wit.com/lib/gui/shell v0.22.20
|
|
||||||
go.wit.com/log v0.22.10
|
|
||||||
golang.org/x/text v0.21.0
|
|
||||||
google.golang.org/protobuf v1.36.2
|
|
||||||
)
|
|
||||||
|
|
||||||
require github.com/alexflint/go-scalar v1.2.0 // indirect
|
|
||||||
|
|
||||||
// `autogen:go.sum`
|
|
||||||
|
|
||||||
github.com/alexflint/go-arg v1.5.1 h1:nBuWUCpuRy0snAG+uIJ6N0UvYxpxA0/ghA/AaHxlT8Y=
|
|
||||||
github.com/alexflint/go-arg v1.5.1/go.mod h1:A7vTJzvjoaSTypg4biM5uYNTkJ27SkNTArtYXnlqVO8=
|
|
||||||
github.com/alexflint/go-scalar v1.2.0 h1:WR7JPKkeNpnYIOfHRa7ivM21aWAdHD0gEWHCx+WQBRw=
|
|
||||||
github.com/alexflint/go-scalar v1.2.0/go.mod h1:LoFvNMqS1CPrMVltza4LvnGKhaSpc3oyLEBUZVhhS2o=
|
|
||||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
|
||||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
|
||||||
github.com/go-cmd/cmd v1.4.3 h1:6y3G+3UqPerXvPcXvj+5QNPHT02BUw7p6PsqRxLNA7Y=
|
|
||||||
github.com/go-cmd/cmd v1.4.3/go.mod h1:u3hxg/ry+D5kwh8WvUkHLAMe2zQCaXd00t35WfQaOFk=
|
|
||||||
github.com/go-test/deep v1.1.0 h1:WOcxcdHcvdgThNXjw0t76K42FXTU7HpNQWHpA2HHNlg=
|
|
||||||
github.com/go-test/deep v1.1.0/go.mod h1:5C2ZWiW0ErCdrYzpqxLbTX7MG14M9iiw8DgHncVwcsE=
|
|
||||||
github.com/google/go-cmp v0.5.5 h1:Khx7svrCpmxxtHBq5j2mp/xVjsi8hQMfNLvJFAlrGgU=
|
|
||||||
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
|
||||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
|
||||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
|
||||||
github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5CcY=
|
|
||||||
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
|
||||||
go.wit.com/lib/gui/shell v0.22.20 h1:iVPXL1h1Qri1WrymjfgTy0gRGEepj6+w2e6kSVaBtUk=
|
|
||||||
go.wit.com/lib/gui/shell v0.22.20/go.mod h1:zduuMSWq+EE7w0xbXn+vkoGZ4HJhURVJpvXw8oK9WAU=
|
|
||||||
go.wit.com/log v0.22.10 h1:rlSgaYjvxbpcmi9UBQO3ESmbd/jiyFdRQFoGOvpCEUc=
|
|
||||||
go.wit.com/log v0.22.10/go.mod h1:4uNPFBqhsAh8zNF+zxVEmC3c/9AZ8JeTfUUvRpddvLQ=
|
|
||||||
golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=
|
|
||||||
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
|
|
||||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
|
|
||||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
|
||||||
google.golang.org/protobuf v1.36.2 h1:R8FeyR1/eLmkutZOM5CWghmo5itiG9z0ktFlTVLuTmU=
|
|
||||||
google.golang.org/protobuf v1.36.2/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
|
|
||||||
gopkg.in/yaml.v3 v3.0.0 h1:hjy8E9ON/egN1tAYqKb61G10WtihqetD4sz2H+8nIeA=
|
|
||||||
gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
|
||||||
|
|
||||||
// `autogen:file.marshal.pb.go`
|
|
||||||
|
|
||||||
// Code generated by go.wit.com/apps/autogenpb DO NOT EDIT.
|
|
||||||
// This file was autogenerated with autogenpb v0.0.37-29-gb9fec2e 2025.01.09_2038
|
|
||||||
// go install go.wit.com/apps/autogenpb@latest
|
|
||||||
//
|
|
||||||
// define which structs (messages) you want to use in the .proto file
|
|
||||||
// Then sort.pb.go and marshal.pb.go files are autogenerated
|
|
||||||
//
|
|
||||||
// autogenpb uses it and has an example .proto file with instructions
|
|
||||||
//
|
|
||||||
|
|
||||||
package main
|
|
||||||
|
|
||||||
import (
|
|
||||||
"google.golang.org/protobuf/encoding/protojson"
|
|
||||||
"google.golang.org/protobuf/encoding/prototext"
|
|
||||||
"google.golang.org/protobuf/proto"
|
|
||||||
)
|
|
||||||
|
|
||||||
// human readable JSON
|
|
||||||
func (v *Files) FormatJSON() string {
|
|
||||||
return protojson.Format(v)
|
|
||||||
}
|
|
||||||
|
|
||||||
// marshal json
|
|
||||||
func (v *Files) MarshalJSON() ([]byte, error) {
|
|
||||||
return protojson.Marshal(v)
|
|
||||||
}
|
|
||||||
|
|
||||||
// unmarshal json
|
|
||||||
func (v *Files) 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 brilliant for config files!
|
|
||||||
func (v *Files) FormatTEXT() string {
|
|
||||||
return prototext.Format(v)
|
|
||||||
}
|
|
||||||
|
|
||||||
// unmarshalTEXT. This reads the .text config file back in after the user edits it
|
|
||||||
func (v *Files) UnmarshalTEXT(data []byte) error {
|
|
||||||
return prototext.Unmarshal(data, v)
|
|
||||||
}
|
|
||||||
|
|
||||||
// marshal to wire. This is called winning.
|
|
||||||
func (v *Files) Marshal() ([]byte, error) {
|
|
||||||
return proto.Marshal(v)
|
|
||||||
}
|
|
||||||
|
|
||||||
// unmarshal from wire. You have won.
|
|
||||||
func (v *Files) Unmarshal(data []byte) error {
|
|
||||||
return proto.Unmarshal(data, v)
|
|
||||||
}
|
|
||||||
|
|
||||||
// human readable JSON
|
|
||||||
func (v *Identify) FormatJSON() string {
|
|
||||||
return protojson.Format(v)
|
|
||||||
}
|
|
||||||
|
|
||||||
// marshal json
|
|
||||||
func (v *Identify) MarshalJSON() ([]byte, error) {
|
|
||||||
return protojson.Marshal(v)
|
|
||||||
}
|
|
||||||
|
|
||||||
// unmarshal json
|
|
||||||
func (v *Identify) 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 brilliant for config files!
|
|
||||||
func (v *Identify) FormatTEXT() string {
|
|
||||||
return prototext.Format(v)
|
|
||||||
}
|
|
||||||
|
|
||||||
// unmarshalTEXT. This reads the .text config file back in after the user edits it
|
|
||||||
func (v *Identify) UnmarshalTEXT(data []byte) error {
|
|
||||||
return prototext.Unmarshal(data, v)
|
|
||||||
}
|
|
||||||
|
|
||||||
// marshal to wire. This is called winning.
|
|
||||||
func (v *Identify) Marshal() ([]byte, error) {
|
|
||||||
return proto.Marshal(v)
|
|
||||||
}
|
|
||||||
|
|
||||||
// unmarshal from wire. You have won.
|
|
||||||
func (v *Identify) Unmarshal(data []byte) error {
|
|
||||||
return proto.Unmarshal(data, v)
|
|
||||||
}
|
|
||||||
|
|
||||||
// `autogen:file.newsort.pb.go`
|
|
||||||
|
|
||||||
// Code generated by go.wit.com/apps/autogenpb DO NOT EDIT.
|
|
||||||
// This file was autogenerated with autogenpb v0.0.37-29-gb9fec2e 2025.01.09_2038
|
|
||||||
// go install go.wit.com/apps/autogenpb@latest
|
|
||||||
//
|
|
||||||
// define which structs (messages) you want to use in the .proto file
|
|
||||||
// Then sort.pb.go and marshal.pb.go files are autogenerated
|
|
||||||
//
|
|
||||||
// autogenpb uses it and has an example .proto file with instructions
|
|
||||||
//
|
|
||||||
|
|
||||||
package main
|
|
||||||
|
|
||||||
import (
|
|
||||||
"fmt"
|
|
||||||
"sync"
|
|
||||||
)
|
|
||||||
|
|
||||||
// bad global lock until modifying the .pb.go file is tested
|
|
||||||
// sync.RWMutex or sync.Mutex?
|
|
||||||
var fileMu sync.RWMutex
|
|
||||||
|
|
||||||
type FileIterator struct {
|
|
||||||
sync.RWMutex
|
|
||||||
|
|
||||||
things []*File
|
|
||||||
index int
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewFileIterator initializes a new iterator.
|
|
||||||
func NewFileIterator(things []*File) *FileIterator {
|
|
||||||
return &FileIterator{things: things}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Scan moves to the next element and returns false if there are no more things.
|
|
||||||
// Use Scan() in a loop, similar to a while loop
|
|
||||||
//
|
|
||||||
// for iterator.Scan()
|
|
||||||
// d := iterator.Next(
|
|
||||||
// fmt.Println("found UUID:", d.Uuid
|
|
||||||
// }
|
|
||||||
func (it *FileIterator) Scan() bool {
|
|
||||||
if it.index >= len(it.things) {
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
it.index++
|
|
||||||
return true
|
|
||||||
}
|
|
||||||
|
|
||||||
// Next() returns the next thing in the array
|
|
||||||
func (it *FileIterator) Next() *File {
|
|
||||||
if it.things[it.index-1] == nil {
|
|
||||||
for i, d := range it.things {
|
|
||||||
fmt.Println("i =", i, d)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return it.things[it.index-1]
|
|
||||||
}
|
|
||||||
|
|
||||||
// safely returns a slice of pointers to the File protobufs
|
|
||||||
func (all *Files) selectAllFile() []*File {
|
|
||||||
fileMu.RLock()
|
|
||||||
defer fileMu.RUnlock()
|
|
||||||
|
|
||||||
// Create a new slice to hold pointers to each File
|
|
||||||
var tmp []*File
|
|
||||||
tmp = make([]*File, len(all.Files))
|
|
||||||
for i, p := range all.Files {
|
|
||||||
tmp[i] = p // Copy pointers for safe iteration
|
|
||||||
}
|
|
||||||
|
|
||||||
return tmp
|
|
||||||
}
|
|
||||||
|
|
||||||
// just a simple Append() with no checking (but still uses the mutex lock)
|
|
||||||
func (all *Files) Append(newP *File) bool {
|
|
||||||
fileMu.RLock()
|
|
||||||
defer fileMu.RUnlock()
|
|
||||||
|
|
||||||
all.Files = append(all.Files, newP)
|
|
||||||
return true
|
|
||||||
}
|
|
||||||
|
|
||||||
func (all *Files) All() *FileIterator {
|
|
||||||
FilePointers := all.selectAllFile()
|
|
||||||
|
|
||||||
iterator := NewFileIterator(FilePointers)
|
|
||||||
return iterator
|
|
||||||
}
|
|
||||||
|
|
||||||
func (all *Files) Len() int {
|
|
||||||
fileMu.RLock()
|
|
||||||
defer fileMu.RUnlock()
|
|
||||||
|
|
||||||
return len(all.Files)
|
|
||||||
}
|
|
||||||
|
|
||||||
// `autogen:file.pb.go`
|
|
||||||
|
|
||||||
// Code modified by go.wit.com/apps/autogenpb DO NOT EDIT.
|
|
||||||
//
|
|
||||||
// user defined Mutex locks were auto added
|
|
||||||
//
|
|
||||||
// autogenpb version & build time: v0.0.37-29-gb9fec2e 2025.01.09_2038
|
|
||||||
// autogenpb auto generates Sort(), Unique() and Marshal() functions
|
|
||||||
// go install go.wit.com/apps/autogenpb@latest
|
|
||||||
|
|
||||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
||||||
// versions:
|
|
||||||
// protoc-gen-go v1.35.2-devel
|
|
||||||
// protoc v3.21.12
|
|
||||||
// source: file.proto
|
|
||||||
|
|
||||||
// Look at "example/fruit.proto" not this file
|
|
||||||
|
|
||||||
// this file is actually used by autogenpb
|
|
||||||
|
|
||||||
// here are some docs, but probably it's just easier to run
|
|
||||||
// autogenpb on this file and see what gets autogenerated
|
|
||||||
// in this directory. All autogenerated files are named *.pb.go
|
|
||||||
|
|
||||||
// the 'uuid' standard at the end is an experiment
|
|
||||||
// establish a way to identify arbitrary .pb files
|
|
||||||
|
|
||||||
// You can generate Marshal & Unmarshal for any struct (message) you want
|
|
||||||
// You can generate SortBy and Append functions ONLY FOR 'repeated <message>'
|
|
||||||
// Also, those structs must be defined in the same file
|
|
||||||
// Additionally, you must use `autogenpb:mutex` on the parent struct.
|
|
||||||
// The autogenerated code requires a RW mutex and autogenpb will insert it into the struct
|
|
||||||
|
|
||||||
package main
|
|
||||||
|
|
||||||
import (
|
|
||||||
reflect "reflect"
|
|
||||||
sync "sync"
|
|
||||||
|
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
||||||
)
|
|
||||||
|
|
||||||
const (
|
|
||||||
// Verify that this generated code is sufficiently up-to-date.
|
|
||||||
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
|
||||||
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
|
||||||
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
|
||||||
)
|
|
||||||
|
|
||||||
// below are the actual structs autogen uses
|
|
||||||
// autogen parses the .proto file and then store the information
|
|
||||||
// it needs in these protobuf files, then it processes the
|
|
||||||
// protobuf files to write out *.sort.pb.go and *.marshal.pb.go files
|
|
||||||
type MsgName struct {
|
|
||||||
// Lock sync.RWMutex // autogenpb skipped this. needs --mutex command line arg
|
|
||||||
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // the name of the message aka struct. for this example: "Shelf"
|
|
||||||
Lockname string `protobuf:"bytes,2,opt,name=lockname,proto3" json:"lockname,omitempty"` // name of the lockfile. ends in Mu
|
|
||||||
DoMarshal bool `protobuf:"varint,3,opt,name=doMarshal,proto3" json:"doMarshal,omitempty"` // if msg struct should have Marshal & Unmarshal functions
|
|
||||||
DoMutex bool `protobuf:"varint,4,opt,name=doMutex,proto3" json:"doMutex,omitempty"` // true if a mutex is needed for the message struct
|
|
||||||
DoProtocMutex bool `protobuf:"varint,5,opt,name=doProtocMutex,proto3" json:"doProtocMutex,omitempty"` // an experiment to insert a mutex into the protoc generated msg struct (bad idea?)
|
|
||||||
MutexFound bool `protobuf:"varint,6,opt,name=mutexFound,proto3" json:"mutexFound,omitempty"` // true if the mutex was added to the protoc pb.go file
|
|
||||||
Sort []string `protobuf:"bytes,7,rep,name=sort,proto3" json:"sort,omitempty"` // keys to sort on
|
|
||||||
Unique []string `protobuf:"bytes,8,rep,name=unique,proto3" json:"unique,omitempty"` // if the fields should have AppendUnique() functions
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *MsgName) Reset() {
|
|
||||||
*x = MsgName{}
|
|
||||||
mi := &file_file_proto_msgTypes[0]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *MsgName) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*MsgName) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *MsgName) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_file_proto_msgTypes[0]
|
|
||||||
if x != nil {
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
if ms.LoadMessageInfo() == nil {
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
return ms
|
|
||||||
}
|
|
||||||
return mi.MessageOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Deprecated: Use MsgName.ProtoReflect.Descriptor instead.
|
|
||||||
func (*MsgName) Descriptor() ([]byte, []int) {
|
|
||||||
return file_file_proto_rawDescGZIP(), []int{0}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *MsgName) GetName() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Name
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *MsgName) GetLockname() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Lockname
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *MsgName) GetDoMarshal() bool {
|
|
||||||
if x != nil {
|
|
||||||
return x.DoMarshal
|
|
||||||
}
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *MsgName) GetDoMutex() bool {
|
|
||||||
if x != nil {
|
|
||||||
return x.DoMutex
|
|
||||||
}
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *MsgName) GetDoProtocMutex() bool {
|
|
||||||
if x != nil {
|
|
||||||
return x.DoProtocMutex
|
|
||||||
}
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *MsgName) GetMutexFound() bool {
|
|
||||||
if x != nil {
|
|
||||||
return x.MutexFound
|
|
||||||
}
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *MsgName) GetSort() []string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Sort
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *MsgName) GetUnique() []string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Unique
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
type File struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
Package string `protobuf:"bytes,1,opt,name=Package,proto3" json:"Package,omitempty"` // whatever the package name is at the top of the .go file
|
|
||||||
Filename string `protobuf:"bytes,2,opt,name=filename,proto3" json:"filename,omitempty"` // yellow.proto
|
|
||||||
Pbfilename string `protobuf:"bytes,3,opt,name=pbfilename,proto3" json:"pbfilename,omitempty"` // yellow.pb.go
|
|
||||||
Filebase string `protobuf:"bytes,4,opt,name=filebase,proto3" json:"filebase,omitempty"` // yellow
|
|
||||||
Uuid string `protobuf:"bytes,5,opt,name=uuid,proto3" json:"uuid,omitempty"` // the uuid to use in a func NewMsgName()
|
|
||||||
Version string `protobuf:"bytes,6,opt,name=version,proto3" json:"version,omitempty"` // the version to use in a func NewMsgName()
|
|
||||||
Bases *MsgName `protobuf:"bytes,7,opt,name=bases,proto3" json:"bases,omitempty"` // the message in "plural" form
|
|
||||||
Base *MsgName `protobuf:"bytes,8,opt,name=base,proto3" json:"base,omitempty"` // the primary repeated message for the master struct
|
|
||||||
// every struct in this proto file, this file has: "Apple", "Apples", ... "File", etc...
|
|
||||||
MsgNames []*MsgName `protobuf:"bytes,9,rep,name=msgNames,proto3" json:"msgNames,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *File) Reset() {
|
|
||||||
*x = File{}
|
|
||||||
mi := &file_file_proto_msgTypes[1]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *File) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*File) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *File) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_file_proto_msgTypes[1]
|
|
||||||
if x != nil {
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
if ms.LoadMessageInfo() == nil {
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
return ms
|
|
||||||
}
|
|
||||||
return mi.MessageOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Deprecated: Use File.ProtoReflect.Descriptor instead.
|
|
||||||
func (*File) Descriptor() ([]byte, []int) {
|
|
||||||
return file_file_proto_rawDescGZIP(), []int{1}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *File) GetPackage() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Package
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *File) GetFilename() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Filename
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *File) GetPbfilename() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Pbfilename
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *File) GetFilebase() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Filebase
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *File) GetUuid() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Uuid
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *File) GetVersion() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Version
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *File) GetBases() *MsgName {
|
|
||||||
if x != nil {
|
|
||||||
return x.Bases
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *File) GetBase() *MsgName {
|
|
||||||
if x != nil {
|
|
||||||
return x.Base
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *File) GetMsgNames() []*MsgName {
|
|
||||||
if x != nil {
|
|
||||||
return x.MsgNames
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// I know, I know, the whole point of using protobuf
|
|
||||||
// is so you don't need a uuid or versions because it's
|
|
||||||
// inherently forward compatable. nonetheless, a simple stubbed out
|
|
||||||
// trivial and empty protobuf message can marshal and identify all the files
|
|
||||||
// also, this could be used to modify /usr/bin/file /usr/share/magic to identify the files
|
|
||||||
// maybe this is already been done and is pointless, but it seems like a good idea
|
|
||||||
type Files struct {
|
|
||||||
// Lock sync.RWMutex // autogenpb skipped this. needs --mutex command line arg
|
|
||||||
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"` // `autogenpb:uuid:6c9ae4dd-648d-4b51-9738-bd59fb8fafd5`
|
|
||||||
Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"` // `autogenpb:version:v0.0.38`
|
|
||||||
Files []*File `protobuf:"bytes,3,rep,name=Files,proto3" json:"Files,omitempty"` // an array of each .proto file in the working directory
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Files) Reset() {
|
|
||||||
*x = Files{}
|
|
||||||
mi := &file_file_proto_msgTypes[2]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Files) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*Files) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *Files) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_file_proto_msgTypes[2]
|
|
||||||
if x != nil {
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
if ms.LoadMessageInfo() == nil {
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
return ms
|
|
||||||
}
|
|
||||||
return mi.MessageOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Deprecated: Use Files.ProtoReflect.Descriptor instead.
|
|
||||||
func (*Files) Descriptor() ([]byte, []int) {
|
|
||||||
return file_file_proto_rawDescGZIP(), []int{2}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Files) GetUuid() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Uuid
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Files) GetVersion() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Version
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Files) GetFiles() []*File {
|
|
||||||
if x != nil {
|
|
||||||
return x.Files
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// this generic message is used by autogen to identify and
|
|
||||||
// then dump the uuid and version from any arbitrary .pb file
|
|
||||||
type Identify struct {
|
|
||||||
// Lock sync.RWMutex // autogenpb skipped this. needs --mutex command line arg
|
|
||||||
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"` //
|
|
||||||
Version int64 `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty"` //
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Identify) Reset() {
|
|
||||||
*x = Identify{}
|
|
||||||
mi := &file_file_proto_msgTypes[3]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Identify) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*Identify) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *Identify) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_file_proto_msgTypes[3]
|
|
||||||
if x != nil {
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
if ms.LoadMessageInfo() == nil {
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
return ms
|
|
||||||
}
|
|
||||||
return mi.MessageOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Deprecated: Use Identify.ProtoReflect.Descriptor instead.
|
|
||||||
func (*Identify) Descriptor() ([]byte, []int) {
|
|
||||||
return file_file_proto_rawDescGZIP(), []int{3}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Identify) GetUuid() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Uuid
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Identify) GetVersion() int64 {
|
|
||||||
if x != nil {
|
|
||||||
return x.Version
|
|
||||||
}
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
var File_file_proto protoreflect.FileDescriptor
|
|
||||||
|
|
||||||
var file_file_proto_rawDesc = []byte{
|
|
||||||
0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x6d, 0x61,
|
|
||||||
0x69, 0x6e, 0x22, 0xe3, 0x01, 0x0a, 0x07, 0x4d, 0x73, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12,
|
|
||||||
0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
|
|
||||||
0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
|
|
||||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c,
|
|
||||||
0x0a, 0x09, 0x64, 0x6f, 0x4d, 0x61, 0x72, 0x73, 0x68, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28,
|
|
||||||
0x08, 0x52, 0x09, 0x64, 0x6f, 0x4d, 0x61, 0x72, 0x73, 0x68, 0x61, 0x6c, 0x12, 0x18, 0x0a, 0x07,
|
|
||||||
0x64, 0x6f, 0x4d, 0x75, 0x74, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64,
|
|
||||||
0x6f, 0x4d, 0x75, 0x74, 0x65, 0x78, 0x12, 0x24, 0x0a, 0x0d, 0x64, 0x6f, 0x50, 0x72, 0x6f, 0x74,
|
|
||||||
0x6f, 0x63, 0x4d, 0x75, 0x74, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x64,
|
|
||||||
0x6f, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x4d, 0x75, 0x74, 0x65, 0x78, 0x12, 0x1e, 0x0a, 0x0a,
|
|
||||||
0x6d, 0x75, 0x74, 0x65, 0x78, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08,
|
|
||||||
0x52, 0x0a, 0x6d, 0x75, 0x74, 0x65, 0x78, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04,
|
|
||||||
0x73, 0x6f, 0x72, 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x73, 0x6f, 0x72, 0x74,
|
|
||||||
0x12, 0x16, 0x0a, 0x06, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09,
|
|
||||||
0x52, 0x06, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x22, 0x99, 0x02, 0x0a, 0x04, 0x46, 0x69, 0x6c,
|
|
||||||
0x65, 0x12, 0x18, 0x0a, 0x07, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01,
|
|
||||||
0x28, 0x09, 0x52, 0x07, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x66,
|
|
||||||
0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66,
|
|
||||||
0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x62, 0x66, 0x69, 0x6c,
|
|
||||||
0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x62, 0x66,
|
|
||||||
0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x62,
|
|
||||||
0x61, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x62,
|
|
||||||
0x61, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
|
|
||||||
0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
|
|
||||||
0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
|
|
||||||
0x6e, 0x12, 0x23, 0x0a, 0x05, 0x62, 0x61, 0x73, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b,
|
|
||||||
0x32, 0x0d, 0x2e, 0x6d, 0x61, 0x69, 0x6e, 0x2e, 0x4d, 0x73, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x52,
|
|
||||||
0x05, 0x62, 0x61, 0x73, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x04, 0x62, 0x61, 0x73, 0x65, 0x18, 0x08,
|
|
||||||
0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x6d, 0x61, 0x69, 0x6e, 0x2e, 0x4d, 0x73, 0x67, 0x4e,
|
|
||||||
0x61, 0x6d, 0x65, 0x52, 0x04, 0x62, 0x61, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x08, 0x6d, 0x73, 0x67,
|
|
||||||
0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x6d, 0x61,
|
|
||||||
0x69, 0x6e, 0x2e, 0x4d, 0x73, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x08, 0x6d, 0x73, 0x67, 0x4e,
|
|
||||||
0x61, 0x6d, 0x65, 0x73, 0x22, 0x57, 0x0a, 0x05, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x12, 0x0a,
|
|
||||||
0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69,
|
|
||||||
0x64, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01,
|
|
||||||
0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x05, 0x46,
|
|
||||||
0x69, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x6d, 0x61, 0x69,
|
|
||||||
0x6e, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x05, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x22, 0x38, 0x0a,
|
|
||||||
0x08, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69,
|
|
||||||
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x18, 0x0a,
|
|
||||||
0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07,
|
|
||||||
0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
|
||||||
}
|
|
||||||
|
|
||||||
var (
|
|
||||||
file_file_proto_rawDescOnce sync.Once
|
|
||||||
file_file_proto_rawDescData = file_file_proto_rawDesc
|
|
||||||
)
|
|
||||||
|
|
||||||
func file_file_proto_rawDescGZIP() []byte {
|
|
||||||
file_file_proto_rawDescOnce.Do(func() {
|
|
||||||
file_file_proto_rawDescData = protoimpl.X.CompressGZIP(file_file_proto_rawDescData)
|
|
||||||
})
|
|
||||||
return file_file_proto_rawDescData
|
|
||||||
}
|
|
||||||
|
|
||||||
var file_file_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
|
|
||||||
var file_file_proto_goTypes = []any{
|
|
||||||
(*MsgName)(nil), // 0: main.MsgName
|
|
||||||
(*File)(nil), // 1: main.File
|
|
||||||
(*Files)(nil), // 2: main.Files
|
|
||||||
(*Identify)(nil), // 3: main.Identify
|
|
||||||
}
|
|
||||||
var file_file_proto_depIdxs = []int32{
|
|
||||||
0, // 0: main.File.bases:type_name -> main.MsgName
|
|
||||||
0, // 1: main.File.base:type_name -> main.MsgName
|
|
||||||
0, // 2: main.File.msgNames:type_name -> main.MsgName
|
|
||||||
1, // 3: main.Files.Files:type_name -> main.File
|
|
||||||
4, // [4:4] is the sub-list for method output_type
|
|
||||||
4, // [4:4] is the sub-list for method input_type
|
|
||||||
4, // [4:4] is the sub-list for extension type_name
|
|
||||||
4, // [4:4] is the sub-list for extension extendee
|
|
||||||
0, // [0:4] is the sub-list for field type_name
|
|
||||||
}
|
|
||||||
|
|
||||||
func init() { file_file_proto_init() }
|
|
||||||
func file_file_proto_init() {
|
|
||||||
if File_file_proto != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
type x struct{}
|
|
||||||
out := protoimpl.TypeBuilder{
|
|
||||||
File: protoimpl.DescBuilder{
|
|
||||||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
||||||
RawDescriptor: file_file_proto_rawDesc,
|
|
||||||
NumEnums: 0,
|
|
||||||
NumMessages: 4,
|
|
||||||
NumExtensions: 0,
|
|
||||||
NumServices: 0,
|
|
||||||
},
|
|
||||||
GoTypes: file_file_proto_goTypes,
|
|
||||||
DependencyIndexes: file_file_proto_depIdxs,
|
|
||||||
MessageInfos: file_file_proto_msgTypes,
|
|
||||||
}.Build()
|
|
||||||
File_file_proto = out.File
|
|
||||||
file_file_proto_rawDesc = nil
|
|
||||||
file_file_proto_goTypes = nil
|
|
||||||
file_file_proto_depIdxs = nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// `autogen:`
|
|
Loading…
Reference in New Issue