Compare commits
3 Commits
v1.0.3
...
chore/go_1
Author | SHA1 | Date | |
---|---|---|---|
b868d34594 | |||
f048268629 | |||
02a3091853 |
4
Makefile
4
Makefile
@ -24,8 +24,8 @@ endif
|
|||||||
# If $GOPATH/bin/protoc-gen-go does not exist, we'll run this command to install
|
# If $GOPATH/bin/protoc-gen-go does not exist, we'll run this command to install
|
||||||
# it.
|
# it.
|
||||||
$(PROTOC_GEN_GO):
|
$(PROTOC_GEN_GO):
|
||||||
go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.26
|
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
|
||||||
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@v1.1
|
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
|
||||||
|
|
||||||
events.pb.go: events/events.proto | $(PROTOC_GEN_GO) $(PROTOC)
|
events.pb.go: events/events.proto | $(PROTOC_GEN_GO) $(PROTOC)
|
||||||
protoc --go_out=./go --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative events/events.proto
|
protoc --go_out=./go --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative events/events.proto
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||||||
// versions:
|
// versions:
|
||||||
// protoc-gen-go v1.26.0
|
// protoc-gen-go v1.27.1
|
||||||
// protoc v3.12.4
|
// protoc v3.12.4
|
||||||
// source: events/events.proto
|
// source: events/events.proto
|
||||||
|
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
module github.com/cyrilix/robocar-protobuf/go
|
module github.com/cyrilix/robocar-protobuf/go
|
||||||
|
|
||||||
go 1.17
|
go 1.18
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/golang/protobuf v1.5.2
|
github.com/golang/protobuf v1.5.2
|
||||||
google.golang.org/protobuf v1.26.0
|
google.golang.org/protobuf v1.28.0
|
||||||
)
|
)
|
||||||
|
@ -6,5 +6,6 @@ github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/
|
|||||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
|
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=
|
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||||
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
|
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
|
||||||
google.golang.org/protobuf v1.26.0 h1:bxAC2xTBsZGibn2RTntX0oH50xLsqy1OxA9tTL3p/lk=
|
|
||||||
google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
|
google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
|
||||||
|
google.golang.org/protobuf v1.28.0 h1:w43yiav+6bVFTBQFZX0r7ipe9JQ1QsbMgHwbBziscLw=
|
||||||
|
google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
|
||||||
|
3
go/vendor/google.golang.org/protobuf/encoding/prototext/decode.go
generated
vendored
3
go/vendor/google.golang.org/protobuf/encoding/prototext/decode.go
generated
vendored
@ -744,9 +744,6 @@ func (d decoder) skipValue() error {
|
|||||||
// Skip items. This will not validate whether skipped values are
|
// Skip items. This will not validate whether skipped values are
|
||||||
// of the same type or not, same behavior as C++
|
// of the same type or not, same behavior as C++
|
||||||
// TextFormat::Parser::AllowUnknownField(true) version 3.8.0.
|
// TextFormat::Parser::AllowUnknownField(true) version 3.8.0.
|
||||||
if err := d.skipValue(); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
11
go/vendor/google.golang.org/protobuf/encoding/protowire/wire.go
generated
vendored
11
go/vendor/google.golang.org/protobuf/encoding/protowire/wire.go
generated
vendored
@ -25,6 +25,7 @@ const (
|
|||||||
FirstReservedNumber Number = 19000
|
FirstReservedNumber Number = 19000
|
||||||
LastReservedNumber Number = 19999
|
LastReservedNumber Number = 19999
|
||||||
MaxValidNumber Number = 1<<29 - 1
|
MaxValidNumber Number = 1<<29 - 1
|
||||||
|
DefaultRecursionLimit = 10000
|
||||||
)
|
)
|
||||||
|
|
||||||
// IsValid reports whether the field number is semantically valid.
|
// IsValid reports whether the field number is semantically valid.
|
||||||
@ -55,6 +56,7 @@ const (
|
|||||||
errCodeOverflow
|
errCodeOverflow
|
||||||
errCodeReserved
|
errCodeReserved
|
||||||
errCodeEndGroup
|
errCodeEndGroup
|
||||||
|
errCodeRecursionDepth
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
@ -112,6 +114,10 @@ func ConsumeField(b []byte) (Number, Type, int) {
|
|||||||
// When parsing a group, the length includes the end group marker and
|
// When parsing a group, the length includes the end group marker and
|
||||||
// the end group is verified to match the starting field number.
|
// the end group is verified to match the starting field number.
|
||||||
func ConsumeFieldValue(num Number, typ Type, b []byte) (n int) {
|
func ConsumeFieldValue(num Number, typ Type, b []byte) (n int) {
|
||||||
|
return consumeFieldValueD(num, typ, b, DefaultRecursionLimit)
|
||||||
|
}
|
||||||
|
|
||||||
|
func consumeFieldValueD(num Number, typ Type, b []byte, depth int) (n int) {
|
||||||
switch typ {
|
switch typ {
|
||||||
case VarintType:
|
case VarintType:
|
||||||
_, n = ConsumeVarint(b)
|
_, n = ConsumeVarint(b)
|
||||||
@ -126,6 +132,9 @@ func ConsumeFieldValue(num Number, typ Type, b []byte) (n int) {
|
|||||||
_, n = ConsumeBytes(b)
|
_, n = ConsumeBytes(b)
|
||||||
return n
|
return n
|
||||||
case StartGroupType:
|
case StartGroupType:
|
||||||
|
if depth < 0 {
|
||||||
|
return errCodeRecursionDepth
|
||||||
|
}
|
||||||
n0 := len(b)
|
n0 := len(b)
|
||||||
for {
|
for {
|
||||||
num2, typ2, n := ConsumeTag(b)
|
num2, typ2, n := ConsumeTag(b)
|
||||||
@ -140,7 +149,7 @@ func ConsumeFieldValue(num Number, typ Type, b []byte) (n int) {
|
|||||||
return n0 - len(b)
|
return n0 - len(b)
|
||||||
}
|
}
|
||||||
|
|
||||||
n = ConsumeFieldValue(num2, typ2, b)
|
n = consumeFieldValueD(num2, typ2, b, depth-1)
|
||||||
if n < 0 {
|
if n < 0 {
|
||||||
return n // forward error code
|
return n // forward error code
|
||||||
}
|
}
|
||||||
|
2
go/vendor/google.golang.org/protobuf/internal/encoding/text/decode.go
generated
vendored
2
go/vendor/google.golang.org/protobuf/internal/encoding/text/decode.go
generated
vendored
@ -381,7 +381,7 @@ func (d *Decoder) currentOpenKind() (Kind, byte) {
|
|||||||
case '[':
|
case '[':
|
||||||
return ListOpen, ']'
|
return ListOpen, ']'
|
||||||
}
|
}
|
||||||
panic(fmt.Sprintf("Decoder: openStack contains invalid byte %s", string(openCh)))
|
panic(fmt.Sprintf("Decoder: openStack contains invalid byte %c", openCh))
|
||||||
}
|
}
|
||||||
|
|
||||||
func (d *Decoder) pushOpenStack(ch byte) {
|
func (d *Decoder) pushOpenStack(ch byte) {
|
||||||
|
5
go/vendor/google.golang.org/protobuf/internal/encoding/text/encode.go
generated
vendored
5
go/vendor/google.golang.org/protobuf/internal/encoding/text/encode.go
generated
vendored
@ -263,3 +263,8 @@ func (e *Encoder) Snapshot() encoderState {
|
|||||||
func (e *Encoder) Reset(es encoderState) {
|
func (e *Encoder) Reset(es encoderState) {
|
||||||
e.encoderState = es
|
e.encoderState = es
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// AppendString appends the escaped form of the input string to b.
|
||||||
|
func AppendString(b []byte, s string) []byte {
|
||||||
|
return appendString(b, s, false)
|
||||||
|
}
|
||||||
|
1
go/vendor/google.golang.org/protobuf/internal/errors/is_go112.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/internal/errors/is_go112.go
generated
vendored
@ -2,6 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build !go1.13
|
||||||
// +build !go1.13
|
// +build !go1.13
|
||||||
|
|
||||||
package errors
|
package errors
|
||||||
|
1
go/vendor/google.golang.org/protobuf/internal/errors/is_go113.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/internal/errors/is_go113.go
generated
vendored
@ -2,6 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build go1.13
|
||||||
// +build go1.13
|
// +build go1.13
|
||||||
|
|
||||||
package errors
|
package errors
|
||||||
|
1
go/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_disable.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_disable.go
generated
vendored
@ -2,6 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build !protolegacy
|
||||||
// +build !protolegacy
|
// +build !protolegacy
|
||||||
|
|
||||||
package flags
|
package flags
|
||||||
|
1
go/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_enable.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_enable.go
generated
vendored
@ -2,6 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build protolegacy
|
||||||
// +build protolegacy
|
// +build protolegacy
|
||||||
|
|
||||||
package flags
|
package flags
|
||||||
|
1
go/vendor/google.golang.org/protobuf/internal/impl/codec_map_go111.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/internal/impl/codec_map_go111.go
generated
vendored
@ -2,6 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build !go1.12
|
||||||
// +build !go1.12
|
// +build !go1.12
|
||||||
|
|
||||||
package impl
|
package impl
|
||||||
|
1
go/vendor/google.golang.org/protobuf/internal/impl/codec_map_go112.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/internal/impl/codec_map_go112.go
generated
vendored
@ -2,6 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build go1.12
|
||||||
// +build go1.12
|
// +build go1.12
|
||||||
|
|
||||||
package impl
|
package impl
|
||||||
|
1
go/vendor/google.golang.org/protobuf/internal/impl/codec_reflect.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/internal/impl/codec_reflect.go
generated
vendored
@ -2,6 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build purego || appengine
|
||||||
// +build purego appengine
|
// +build purego appengine
|
||||||
|
|
||||||
package impl
|
package impl
|
||||||
|
1
go/vendor/google.golang.org/protobuf/internal/impl/codec_unsafe.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/internal/impl/codec_unsafe.go
generated
vendored
@ -2,6 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build !purego && !appengine
|
||||||
// +build !purego,!appengine
|
// +build !purego,!appengine
|
||||||
|
|
||||||
package impl
|
package impl
|
||||||
|
8
go/vendor/google.golang.org/protobuf/internal/impl/decode.go
generated
vendored
8
go/vendor/google.golang.org/protobuf/internal/impl/decode.go
generated
vendored
@ -18,6 +18,7 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
var errDecode = errors.New("cannot parse invalid wire-format data")
|
var errDecode = errors.New("cannot parse invalid wire-format data")
|
||||||
|
var errRecursionDepth = errors.New("exceeded maximum recursion depth")
|
||||||
|
|
||||||
type unmarshalOptions struct {
|
type unmarshalOptions struct {
|
||||||
flags protoiface.UnmarshalInputFlags
|
flags protoiface.UnmarshalInputFlags
|
||||||
@ -25,6 +26,7 @@ type unmarshalOptions struct {
|
|||||||
FindExtensionByName(field protoreflect.FullName) (protoreflect.ExtensionType, error)
|
FindExtensionByName(field protoreflect.FullName) (protoreflect.ExtensionType, error)
|
||||||
FindExtensionByNumber(message protoreflect.FullName, field protoreflect.FieldNumber) (protoreflect.ExtensionType, error)
|
FindExtensionByNumber(message protoreflect.FullName, field protoreflect.FieldNumber) (protoreflect.ExtensionType, error)
|
||||||
}
|
}
|
||||||
|
depth int
|
||||||
}
|
}
|
||||||
|
|
||||||
func (o unmarshalOptions) Options() proto.UnmarshalOptions {
|
func (o unmarshalOptions) Options() proto.UnmarshalOptions {
|
||||||
@ -44,6 +46,7 @@ func (o unmarshalOptions) IsDefault() bool {
|
|||||||
|
|
||||||
var lazyUnmarshalOptions = unmarshalOptions{
|
var lazyUnmarshalOptions = unmarshalOptions{
|
||||||
resolver: preg.GlobalTypes,
|
resolver: preg.GlobalTypes,
|
||||||
|
depth: protowire.DefaultRecursionLimit,
|
||||||
}
|
}
|
||||||
|
|
||||||
type unmarshalOutput struct {
|
type unmarshalOutput struct {
|
||||||
@ -62,6 +65,7 @@ func (mi *MessageInfo) unmarshal(in piface.UnmarshalInput) (piface.UnmarshalOutp
|
|||||||
out, err := mi.unmarshalPointer(in.Buf, p, 0, unmarshalOptions{
|
out, err := mi.unmarshalPointer(in.Buf, p, 0, unmarshalOptions{
|
||||||
flags: in.Flags,
|
flags: in.Flags,
|
||||||
resolver: in.Resolver,
|
resolver: in.Resolver,
|
||||||
|
depth: in.Depth,
|
||||||
})
|
})
|
||||||
var flags piface.UnmarshalOutputFlags
|
var flags piface.UnmarshalOutputFlags
|
||||||
if out.initialized {
|
if out.initialized {
|
||||||
@ -82,6 +86,10 @@ var errUnknown = errors.New("unknown")
|
|||||||
|
|
||||||
func (mi *MessageInfo) unmarshalPointer(b []byte, p pointer, groupTag protowire.Number, opts unmarshalOptions) (out unmarshalOutput, err error) {
|
func (mi *MessageInfo) unmarshalPointer(b []byte, p pointer, groupTag protowire.Number, opts unmarshalOptions) (out unmarshalOutput, err error) {
|
||||||
mi.init()
|
mi.init()
|
||||||
|
opts.depth--
|
||||||
|
if opts.depth < 0 {
|
||||||
|
return out, errRecursionDepth
|
||||||
|
}
|
||||||
if flags.ProtoLegacy && mi.isMessageSet {
|
if flags.ProtoLegacy && mi.isMessageSet {
|
||||||
return unmarshalMessageSet(mi, b, p, opts)
|
return unmarshalMessageSet(mi, b, p, opts)
|
||||||
}
|
}
|
||||||
|
7
go/vendor/google.golang.org/protobuf/internal/impl/legacy_message.go
generated
vendored
7
go/vendor/google.golang.org/protobuf/internal/impl/legacy_message.go
generated
vendored
@ -440,6 +440,13 @@ func legacyMerge(in piface.MergeInput) piface.MergeOutput {
|
|||||||
if !ok {
|
if !ok {
|
||||||
return piface.MergeOutput{}
|
return piface.MergeOutput{}
|
||||||
}
|
}
|
||||||
|
if !in.Source.IsValid() {
|
||||||
|
// Legacy Marshal methods may not function on nil messages.
|
||||||
|
// Check for a typed nil source only after we confirm that
|
||||||
|
// legacy Marshal/Unmarshal methods are present, for
|
||||||
|
// consistency.
|
||||||
|
return piface.MergeOutput{Flags: piface.MergeComplete}
|
||||||
|
}
|
||||||
b, err := marshaler.Marshal()
|
b, err := marshaler.Marshal()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return piface.MergeOutput{}
|
return piface.MergeOutput{}
|
||||||
|
1
go/vendor/google.golang.org/protobuf/internal/impl/pointer_reflect.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/internal/impl/pointer_reflect.go
generated
vendored
@ -2,6 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build purego || appengine
|
||||||
// +build purego appengine
|
// +build purego appengine
|
||||||
|
|
||||||
package impl
|
package impl
|
||||||
|
1
go/vendor/google.golang.org/protobuf/internal/impl/pointer_unsafe.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/internal/impl/pointer_unsafe.go
generated
vendored
@ -2,6 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build !purego && !appengine
|
||||||
// +build !purego,!appengine
|
// +build !purego,!appengine
|
||||||
|
|
||||||
package impl
|
package impl
|
||||||
|
1
go/vendor/google.golang.org/protobuf/internal/strs/strings_pure.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/internal/strs/strings_pure.go
generated
vendored
@ -2,6 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build purego || appengine
|
||||||
// +build purego appengine
|
// +build purego appengine
|
||||||
|
|
||||||
package strs
|
package strs
|
||||||
|
1
go/vendor/google.golang.org/protobuf/internal/strs/strings_unsafe.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/internal/strs/strings_unsafe.go
generated
vendored
@ -2,6 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build !purego && !appengine
|
||||||
// +build !purego,!appengine
|
// +build !purego,!appengine
|
||||||
|
|
||||||
package strs
|
package strs
|
||||||
|
2
go/vendor/google.golang.org/protobuf/internal/version/version.go
generated
vendored
2
go/vendor/google.golang.org/protobuf/internal/version/version.go
generated
vendored
@ -52,7 +52,7 @@ import (
|
|||||||
// 10. Send out the CL for review and submit it.
|
// 10. Send out the CL for review and submit it.
|
||||||
const (
|
const (
|
||||||
Major = 1
|
Major = 1
|
||||||
Minor = 26
|
Minor = 28
|
||||||
Patch = 0
|
Patch = 0
|
||||||
PreRelease = ""
|
PreRelease = ""
|
||||||
)
|
)
|
||||||
|
17
go/vendor/google.golang.org/protobuf/proto/decode.go
generated
vendored
17
go/vendor/google.golang.org/protobuf/proto/decode.go
generated
vendored
@ -42,18 +42,25 @@ type UnmarshalOptions struct {
|
|||||||
FindExtensionByName(field protoreflect.FullName) (protoreflect.ExtensionType, error)
|
FindExtensionByName(field protoreflect.FullName) (protoreflect.ExtensionType, error)
|
||||||
FindExtensionByNumber(message protoreflect.FullName, field protoreflect.FieldNumber) (protoreflect.ExtensionType, error)
|
FindExtensionByNumber(message protoreflect.FullName, field protoreflect.FieldNumber) (protoreflect.ExtensionType, error)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// RecursionLimit limits how deeply messages may be nested.
|
||||||
|
// If zero, a default limit is applied.
|
||||||
|
RecursionLimit int
|
||||||
}
|
}
|
||||||
|
|
||||||
// Unmarshal parses the wire-format message in b and places the result in m.
|
// Unmarshal parses the wire-format message in b and places the result in m.
|
||||||
// The provided message must be mutable (e.g., a non-nil pointer to a message).
|
// The provided message must be mutable (e.g., a non-nil pointer to a message).
|
||||||
func Unmarshal(b []byte, m Message) error {
|
func Unmarshal(b []byte, m Message) error {
|
||||||
_, err := UnmarshalOptions{}.unmarshal(b, m.ProtoReflect())
|
_, err := UnmarshalOptions{RecursionLimit: protowire.DefaultRecursionLimit}.unmarshal(b, m.ProtoReflect())
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// Unmarshal parses the wire-format message in b and places the result in m.
|
// Unmarshal parses the wire-format message in b and places the result in m.
|
||||||
// The provided message must be mutable (e.g., a non-nil pointer to a message).
|
// The provided message must be mutable (e.g., a non-nil pointer to a message).
|
||||||
func (o UnmarshalOptions) Unmarshal(b []byte, m Message) error {
|
func (o UnmarshalOptions) Unmarshal(b []byte, m Message) error {
|
||||||
|
if o.RecursionLimit == 0 {
|
||||||
|
o.RecursionLimit = protowire.DefaultRecursionLimit
|
||||||
|
}
|
||||||
_, err := o.unmarshal(b, m.ProtoReflect())
|
_, err := o.unmarshal(b, m.ProtoReflect())
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -63,6 +70,9 @@ func (o UnmarshalOptions) Unmarshal(b []byte, m Message) error {
|
|||||||
// This method permits fine-grained control over the unmarshaler.
|
// This method permits fine-grained control over the unmarshaler.
|
||||||
// Most users should use Unmarshal instead.
|
// Most users should use Unmarshal instead.
|
||||||
func (o UnmarshalOptions) UnmarshalState(in protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
|
func (o UnmarshalOptions) UnmarshalState(in protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
|
||||||
|
if o.RecursionLimit == 0 {
|
||||||
|
o.RecursionLimit = protowire.DefaultRecursionLimit
|
||||||
|
}
|
||||||
return o.unmarshal(in.Buf, in.Message)
|
return o.unmarshal(in.Buf, in.Message)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -86,12 +96,17 @@ func (o UnmarshalOptions) unmarshal(b []byte, m protoreflect.Message) (out proto
|
|||||||
Message: m,
|
Message: m,
|
||||||
Buf: b,
|
Buf: b,
|
||||||
Resolver: o.Resolver,
|
Resolver: o.Resolver,
|
||||||
|
Depth: o.RecursionLimit,
|
||||||
}
|
}
|
||||||
if o.DiscardUnknown {
|
if o.DiscardUnknown {
|
||||||
in.Flags |= protoiface.UnmarshalDiscardUnknown
|
in.Flags |= protoiface.UnmarshalDiscardUnknown
|
||||||
}
|
}
|
||||||
out, err = methods.Unmarshal(in)
|
out, err = methods.Unmarshal(in)
|
||||||
} else {
|
} else {
|
||||||
|
o.RecursionLimit--
|
||||||
|
if o.RecursionLimit < 0 {
|
||||||
|
return out, errors.New("exceeded max recursion depth")
|
||||||
|
}
|
||||||
err = o.unmarshalMessageSlow(b, m)
|
err = o.unmarshalMessageSlow(b, m)
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
1
go/vendor/google.golang.org/protobuf/proto/proto_methods.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/proto/proto_methods.go
generated
vendored
@ -3,6 +3,7 @@
|
|||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
// The protoreflect build tag disables use of fast-path methods.
|
// The protoreflect build tag disables use of fast-path methods.
|
||||||
|
//go:build !protoreflect
|
||||||
// +build !protoreflect
|
// +build !protoreflect
|
||||||
|
|
||||||
package proto
|
package proto
|
||||||
|
1
go/vendor/google.golang.org/protobuf/proto/proto_reflect.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/proto/proto_reflect.go
generated
vendored
@ -3,6 +3,7 @@
|
|||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
// The protoreflect build tag disables use of fast-path methods.
|
// The protoreflect build tag disables use of fast-path methods.
|
||||||
|
//go:build protoreflect
|
||||||
// +build protoreflect
|
// +build protoreflect
|
||||||
|
|
||||||
package proto
|
package proto
|
||||||
|
1
go/vendor/google.golang.org/protobuf/reflect/protoreflect/methods.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/reflect/protoreflect/methods.go
generated
vendored
@ -53,6 +53,7 @@ type (
|
|||||||
FindExtensionByName(field FullName) (ExtensionType, error)
|
FindExtensionByName(field FullName) (ExtensionType, error)
|
||||||
FindExtensionByNumber(message FullName, field FieldNumber) (ExtensionType, error)
|
FindExtensionByNumber(message FullName, field FieldNumber) (ExtensionType, error)
|
||||||
}
|
}
|
||||||
|
Depth int
|
||||||
}
|
}
|
||||||
unmarshalOutput = struct {
|
unmarshalOutput = struct {
|
||||||
pragma.NoUnkeyedLiterals
|
pragma.NoUnkeyedLiterals
|
||||||
|
1
go/vendor/google.golang.org/protobuf/reflect/protoreflect/value_pure.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/reflect/protoreflect/value_pure.go
generated
vendored
@ -2,6 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build purego || appengine
|
||||||
// +build purego appengine
|
// +build purego appengine
|
||||||
|
|
||||||
package protoreflect
|
package protoreflect
|
||||||
|
25
go/vendor/google.golang.org/protobuf/reflect/protoreflect/value_union.go
generated
vendored
25
go/vendor/google.golang.org/protobuf/reflect/protoreflect/value_union.go
generated
vendored
@ -41,6 +41,31 @@ import (
|
|||||||
// Converting to/from a Value and a concrete Go value panics on type mismatch.
|
// Converting to/from a Value and a concrete Go value panics on type mismatch.
|
||||||
// For example, ValueOf("hello").Int() panics because this attempts to
|
// For example, ValueOf("hello").Int() panics because this attempts to
|
||||||
// retrieve an int64 from a string.
|
// retrieve an int64 from a string.
|
||||||
|
//
|
||||||
|
// List, Map, and Message Values are called "composite" values.
|
||||||
|
//
|
||||||
|
// A composite Value may alias (reference) memory at some location,
|
||||||
|
// such that changes to the Value updates the that location.
|
||||||
|
// A composite value acquired with a Mutable method, such as Message.Mutable,
|
||||||
|
// always references the source object.
|
||||||
|
//
|
||||||
|
// For example:
|
||||||
|
// // Append a 0 to a "repeated int32" field.
|
||||||
|
// // Since the Value returned by Mutable is guaranteed to alias
|
||||||
|
// // the source message, modifying the Value modifies the message.
|
||||||
|
// message.Mutable(fieldDesc).(List).Append(protoreflect.ValueOfInt32(0))
|
||||||
|
//
|
||||||
|
// // Assign [0] to a "repeated int32" field by creating a new Value,
|
||||||
|
// // modifying it, and assigning it.
|
||||||
|
// list := message.NewField(fieldDesc).(List)
|
||||||
|
// list.Append(protoreflect.ValueOfInt32(0))
|
||||||
|
// message.Set(fieldDesc, list)
|
||||||
|
// // ERROR: Since it is not defined whether Set aliases the source,
|
||||||
|
// // appending to the List here may or may not modify the message.
|
||||||
|
// list.Append(protoreflect.ValueOfInt32(0))
|
||||||
|
//
|
||||||
|
// Some operations, such as Message.Get, may return an "empty, read-only"
|
||||||
|
// composite Value. Modifying an empty, read-only value panics.
|
||||||
type Value value
|
type Value value
|
||||||
|
|
||||||
// The protoreflect API uses a custom Value union type instead of interface{}
|
// The protoreflect API uses a custom Value union type instead of interface{}
|
||||||
|
1
go/vendor/google.golang.org/protobuf/reflect/protoreflect/value_unsafe.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/reflect/protoreflect/value_unsafe.go
generated
vendored
@ -2,6 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build !purego && !appengine
|
||||||
// +build !purego,!appengine
|
// +build !purego,!appengine
|
||||||
|
|
||||||
package protoreflect
|
package protoreflect
|
||||||
|
39
go/vendor/google.golang.org/protobuf/reflect/protoregistry/registry.go
generated
vendored
39
go/vendor/google.golang.org/protobuf/reflect/protoregistry/registry.go
generated
vendored
@ -94,7 +94,8 @@ type Files struct {
|
|||||||
// Note that enum values are in the top-level since that are in the same
|
// Note that enum values are in the top-level since that are in the same
|
||||||
// scope as the parent enum.
|
// scope as the parent enum.
|
||||||
descsByName map[protoreflect.FullName]interface{}
|
descsByName map[protoreflect.FullName]interface{}
|
||||||
filesByPath map[string]protoreflect.FileDescriptor
|
filesByPath map[string][]protoreflect.FileDescriptor
|
||||||
|
numFiles int
|
||||||
}
|
}
|
||||||
|
|
||||||
type packageDescriptor struct {
|
type packageDescriptor struct {
|
||||||
@ -117,18 +118,17 @@ func (r *Files) RegisterFile(file protoreflect.FileDescriptor) error {
|
|||||||
r.descsByName = map[protoreflect.FullName]interface{}{
|
r.descsByName = map[protoreflect.FullName]interface{}{
|
||||||
"": &packageDescriptor{},
|
"": &packageDescriptor{},
|
||||||
}
|
}
|
||||||
r.filesByPath = make(map[string]protoreflect.FileDescriptor)
|
r.filesByPath = make(map[string][]protoreflect.FileDescriptor)
|
||||||
}
|
}
|
||||||
path := file.Path()
|
path := file.Path()
|
||||||
if prev := r.filesByPath[path]; prev != nil {
|
if prev := r.filesByPath[path]; len(prev) > 0 {
|
||||||
r.checkGenProtoConflict(path)
|
r.checkGenProtoConflict(path)
|
||||||
err := errors.New("file %q is already registered", file.Path())
|
err := errors.New("file %q is already registered", file.Path())
|
||||||
err = amendErrorWithCaller(err, prev, file)
|
err = amendErrorWithCaller(err, prev[0], file)
|
||||||
if r == GlobalFiles && ignoreConflict(file, err) {
|
if !(r == GlobalFiles && ignoreConflict(file, err)) {
|
||||||
err = nil
|
|
||||||
}
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
for name := file.Package(); name != ""; name = name.Parent() {
|
for name := file.Package(); name != ""; name = name.Parent() {
|
||||||
switch prev := r.descsByName[name]; prev.(type) {
|
switch prev := r.descsByName[name]; prev.(type) {
|
||||||
@ -168,7 +168,8 @@ func (r *Files) RegisterFile(file protoreflect.FileDescriptor) error {
|
|||||||
rangeTopLevelDescriptors(file, func(d protoreflect.Descriptor) {
|
rangeTopLevelDescriptors(file, func(d protoreflect.Descriptor) {
|
||||||
r.descsByName[d.FullName()] = d
|
r.descsByName[d.FullName()] = d
|
||||||
})
|
})
|
||||||
r.filesByPath[path] = file
|
r.filesByPath[path] = append(r.filesByPath[path], file)
|
||||||
|
r.numFiles++
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -308,6 +309,7 @@ func (s *nameSuffix) Pop() (name protoreflect.Name) {
|
|||||||
// FindFileByPath looks up a file by the path.
|
// FindFileByPath looks up a file by the path.
|
||||||
//
|
//
|
||||||
// This returns (nil, NotFound) if not found.
|
// This returns (nil, NotFound) if not found.
|
||||||
|
// This returns an error if multiple files have the same path.
|
||||||
func (r *Files) FindFileByPath(path string) (protoreflect.FileDescriptor, error) {
|
func (r *Files) FindFileByPath(path string) (protoreflect.FileDescriptor, error) {
|
||||||
if r == nil {
|
if r == nil {
|
||||||
return nil, NotFound
|
return nil, NotFound
|
||||||
@ -316,13 +318,19 @@ func (r *Files) FindFileByPath(path string) (protoreflect.FileDescriptor, error)
|
|||||||
globalMutex.RLock()
|
globalMutex.RLock()
|
||||||
defer globalMutex.RUnlock()
|
defer globalMutex.RUnlock()
|
||||||
}
|
}
|
||||||
if fd, ok := r.filesByPath[path]; ok {
|
fds := r.filesByPath[path]
|
||||||
return fd, nil
|
switch len(fds) {
|
||||||
}
|
case 0:
|
||||||
return nil, NotFound
|
return nil, NotFound
|
||||||
|
case 1:
|
||||||
|
return fds[0], nil
|
||||||
|
default:
|
||||||
|
return nil, errors.New("multiple files named %q", path)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// NumFiles reports the number of registered files.
|
// NumFiles reports the number of registered files,
|
||||||
|
// including duplicate files with the same name.
|
||||||
func (r *Files) NumFiles() int {
|
func (r *Files) NumFiles() int {
|
||||||
if r == nil {
|
if r == nil {
|
||||||
return 0
|
return 0
|
||||||
@ -331,10 +339,11 @@ func (r *Files) NumFiles() int {
|
|||||||
globalMutex.RLock()
|
globalMutex.RLock()
|
||||||
defer globalMutex.RUnlock()
|
defer globalMutex.RUnlock()
|
||||||
}
|
}
|
||||||
return len(r.filesByPath)
|
return r.numFiles
|
||||||
}
|
}
|
||||||
|
|
||||||
// RangeFiles iterates over all registered files while f returns true.
|
// RangeFiles iterates over all registered files while f returns true.
|
||||||
|
// If multiple files have the same name, RangeFiles iterates over all of them.
|
||||||
// The iteration order is undefined.
|
// The iteration order is undefined.
|
||||||
func (r *Files) RangeFiles(f func(protoreflect.FileDescriptor) bool) {
|
func (r *Files) RangeFiles(f func(protoreflect.FileDescriptor) bool) {
|
||||||
if r == nil {
|
if r == nil {
|
||||||
@ -344,12 +353,14 @@ func (r *Files) RangeFiles(f func(protoreflect.FileDescriptor) bool) {
|
|||||||
globalMutex.RLock()
|
globalMutex.RLock()
|
||||||
defer globalMutex.RUnlock()
|
defer globalMutex.RUnlock()
|
||||||
}
|
}
|
||||||
for _, file := range r.filesByPath {
|
for _, files := range r.filesByPath {
|
||||||
|
for _, file := range files {
|
||||||
if !f(file) {
|
if !f(file) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// NumFilesByPackage reports the number of registered files in a proto package.
|
// NumFilesByPackage reports the number of registered files in a proto package.
|
||||||
func (r *Files) NumFilesByPackage(name protoreflect.FullName) int {
|
func (r *Files) NumFilesByPackage(name protoreflect.FullName) int {
|
||||||
|
1
go/vendor/google.golang.org/protobuf/runtime/protoiface/methods.go
generated
vendored
1
go/vendor/google.golang.org/protobuf/runtime/protoiface/methods.go
generated
vendored
@ -103,6 +103,7 @@ type UnmarshalInput = struct {
|
|||||||
FindExtensionByName(field protoreflect.FullName) (protoreflect.ExtensionType, error)
|
FindExtensionByName(field protoreflect.FullName) (protoreflect.ExtensionType, error)
|
||||||
FindExtensionByNumber(message protoreflect.FullName, field protoreflect.FieldNumber) (protoreflect.ExtensionType, error)
|
FindExtensionByNumber(message protoreflect.FullName, field protoreflect.FieldNumber) (protoreflect.ExtensionType, error)
|
||||||
}
|
}
|
||||||
|
Depth int
|
||||||
}
|
}
|
||||||
|
|
||||||
// UnmarshalOutput is output from the Unmarshal method.
|
// UnmarshalOutput is output from the Unmarshal method.
|
||||||
|
4
go/vendor/modules.txt
vendored
4
go/vendor/modules.txt
vendored
@ -1,8 +1,8 @@
|
|||||||
# github.com/golang/protobuf v1.5.2
|
# github.com/golang/protobuf v1.5.2
|
||||||
## explicit; go 1.9
|
## explicit; go 1.9
|
||||||
github.com/golang/protobuf/ptypes/timestamp
|
github.com/golang/protobuf/ptypes/timestamp
|
||||||
# google.golang.org/protobuf v1.26.0
|
# google.golang.org/protobuf v1.28.0
|
||||||
## explicit; go 1.9
|
## explicit; go 1.11
|
||||||
google.golang.org/protobuf/encoding/prototext
|
google.golang.org/protobuf/encoding/prototext
|
||||||
google.golang.org/protobuf/encoding/protowire
|
google.golang.org/protobuf/encoding/protowire
|
||||||
google.golang.org/protobuf/internal/descfmt
|
google.golang.org/protobuf/internal/descfmt
|
||||||
|
@ -19,9 +19,9 @@ DESCRIPTOR = _descriptor.FileDescriptor(
|
|||||||
name='events/events.proto',
|
name='events/events.proto',
|
||||||
package='robocar.events',
|
package='robocar.events',
|
||||||
syntax='proto3',
|
syntax='proto3',
|
||||||
serialized_options=b'Z\006events',
|
serialized_options=b'Z\010./events',
|
||||||
create_key=_descriptor._internal_create_key,
|
create_key=_descriptor._internal_create_key,
|
||||||
serialized_pb=b'\n\x13\x65vents/events.proto\x12\x0erobocar.events\x1a\x1fgoogle/protobuf/timestamp.proto\"T\n\x08\x46rameRef\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\n\n\x02id\x18\x02 \x01(\t\x12.\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"C\n\x0c\x46rameMessage\x12$\n\x02id\x18\x01 \x01(\x0b\x32\x18.robocar.events.FrameRef\x12\r\n\x05\x66rame\x18\x02 \x01(\x0c\"d\n\x0fSteeringMessage\x12\x10\n\x08steering\x18\x01 \x01(\x02\x12\x12\n\nconfidence\x18\x02 \x01(\x02\x12+\n\tframe_ref\x18\x03 \x01(\x0b\x32\x18.robocar.events.FrameRef\"d\n\x0fThrottleMessage\x12\x10\n\x08throttle\x18\x01 \x01(\x02\x12\x12\n\nconfidence\x18\x02 \x01(\x02\x12+\n\tframe_ref\x18\x03 \x01(\x0b\x32\x18.robocar.events.FrameRef\"A\n\x10\x44riveModeMessage\x12-\n\ndrive_mode\x18\x01 \x01(\x0e\x32\x19.robocar.events.DriveMode\"f\n\x0eObjectsMessage\x12\'\n\x07objects\x18\x01 \x03(\x0b\x32\x16.robocar.events.Object\x12+\n\tframe_ref\x18\x02 \x01(\x0b\x32\x18.robocar.events.FrameRef\"\x80\x01\n\x06Object\x12(\n\x04type\x18\x01 \x01(\x0e\x32\x1a.robocar.events.TypeObject\x12\x0c\n\x04left\x18\x02 \x01(\x05\x12\x0b\n\x03top\x18\x03 \x01(\x05\x12\r\n\x05right\x18\x04 \x01(\x05\x12\x0e\n\x06\x62ottom\x18\x05 \x01(\x05\x12\x12\n\nconfidence\x18\x06 \x01(\x02\"&\n\x13SwitchRecordMessage\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\"\x8c\x01\n\x0bRoadMessage\x12&\n\x07\x63ontour\x18\x01 \x03(\x0b\x32\x15.robocar.events.Point\x12(\n\x07\x65llipse\x18\x02 \x01(\x0b\x32\x17.robocar.events.Ellipse\x12+\n\tframe_ref\x18\x03 \x01(\x0b\x32\x18.robocar.events.FrameRef\"\x1d\n\x05Point\x12\t\n\x01x\x18\x01 \x01(\x05\x12\t\n\x01y\x18\x02 \x01(\x05\"r\n\x07\x45llipse\x12%\n\x06\x63\x65nter\x18\x01 \x01(\x0b\x32\x15.robocar.events.Point\x12\r\n\x05width\x18\x02 \x01(\x05\x12\x0e\n\x06height\x18\x03 \x01(\x05\x12\r\n\x05\x61ngle\x18\x04 \x01(\x02\x12\x12\n\nconfidence\x18\x05 \x01(\x02\"\x82\x01\n\rRecordMessage\x12+\n\x05\x66rame\x18\x01 \x01(\x0b\x32\x1c.robocar.events.FrameMessage\x12\x31\n\x08steering\x18\x02 \x01(\x0b\x32\x1f.robocar.events.SteeringMessage\x12\x11\n\trecordSet\x18\x03 \x01(\t*-\n\tDriveMode\x12\x0b\n\x07INVALID\x10\x00\x12\x08\n\x04USER\x10\x01\x12\t\n\x05PILOT\x10\x02*2\n\nTypeObject\x12\x07\n\x03\x41NY\x10\x00\x12\x07\n\x03\x43\x41R\x10\x01\x12\x08\n\x04\x42UMP\x10\x02\x12\x08\n\x04PLOT\x10\x03\x42\x08Z\x06\x65ventsb\x06proto3'
|
serialized_pb=b'\n\x13\x65vents/events.proto\x12\x0erobocar.events\x1a\x1fgoogle/protobuf/timestamp.proto\"T\n\x08\x46rameRef\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\n\n\x02id\x18\x02 \x01(\t\x12.\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"C\n\x0c\x46rameMessage\x12$\n\x02id\x18\x01 \x01(\x0b\x32\x18.robocar.events.FrameRef\x12\r\n\x05\x66rame\x18\x02 \x01(\x0c\"d\n\x0fSteeringMessage\x12\x10\n\x08steering\x18\x01 \x01(\x02\x12\x12\n\nconfidence\x18\x02 \x01(\x02\x12+\n\tframe_ref\x18\x03 \x01(\x0b\x32\x18.robocar.events.FrameRef\"d\n\x0fThrottleMessage\x12\x10\n\x08throttle\x18\x01 \x01(\x02\x12\x12\n\nconfidence\x18\x02 \x01(\x02\x12+\n\tframe_ref\x18\x03 \x01(\x0b\x32\x18.robocar.events.FrameRef\"A\n\x10\x44riveModeMessage\x12-\n\ndrive_mode\x18\x01 \x01(\x0e\x32\x19.robocar.events.DriveMode\"f\n\x0eObjectsMessage\x12\'\n\x07objects\x18\x01 \x03(\x0b\x32\x16.robocar.events.Object\x12+\n\tframe_ref\x18\x02 \x01(\x0b\x32\x18.robocar.events.FrameRef\"\x80\x01\n\x06Object\x12(\n\x04type\x18\x01 \x01(\x0e\x32\x1a.robocar.events.TypeObject\x12\x0c\n\x04left\x18\x02 \x01(\x05\x12\x0b\n\x03top\x18\x03 \x01(\x05\x12\r\n\x05right\x18\x04 \x01(\x05\x12\x0e\n\x06\x62ottom\x18\x05 \x01(\x05\x12\x12\n\nconfidence\x18\x06 \x01(\x02\"&\n\x13SwitchRecordMessage\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\"\x8c\x01\n\x0bRoadMessage\x12&\n\x07\x63ontour\x18\x01 \x03(\x0b\x32\x15.robocar.events.Point\x12(\n\x07\x65llipse\x18\x02 \x01(\x0b\x32\x17.robocar.events.Ellipse\x12+\n\tframe_ref\x18\x03 \x01(\x0b\x32\x18.robocar.events.FrameRef\"\x1d\n\x05Point\x12\t\n\x01x\x18\x01 \x01(\x05\x12\t\n\x01y\x18\x02 \x01(\x05\"r\n\x07\x45llipse\x12%\n\x06\x63\x65nter\x18\x01 \x01(\x0b\x32\x15.robocar.events.Point\x12\r\n\x05width\x18\x02 \x01(\x05\x12\x0e\n\x06height\x18\x03 \x01(\x05\x12\r\n\x05\x61ngle\x18\x04 \x01(\x02\x12\x12\n\nconfidence\x18\x05 \x01(\x02\"\x82\x01\n\rRecordMessage\x12+\n\x05\x66rame\x18\x01 \x01(\x0b\x32\x1c.robocar.events.FrameMessage\x12\x31\n\x08steering\x18\x02 \x01(\x0b\x32\x1f.robocar.events.SteeringMessage\x12\x11\n\trecordSet\x18\x03 \x01(\t*-\n\tDriveMode\x12\x0b\n\x07INVALID\x10\x00\x12\x08\n\x04USER\x10\x01\x12\t\n\x05PILOT\x10\x02*2\n\nTypeObject\x12\x07\n\x03\x41NY\x10\x00\x12\x07\n\x03\x43\x41R\x10\x01\x12\x08\n\x04\x42UMP\x10\x02\x12\x08\n\x04PLOT\x10\x03\x42\nZ\x08./eventsb\x06proto3'
|
||||||
,
|
,
|
||||||
dependencies=[google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,])
|
dependencies=[google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,])
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user