lib/protocol, lib/discover, lib/db: Use protocol buffer serialization (fixes #3080)

This changes the BEP protocol to use protocol buffer serialization
instead of XDR, and therefore also the database format. The local
discovery protocol is also updated to be protocol buffer format.

GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3276
LGTM: AudriusButkevicius
This commit is contained in:
Jakob Borg
2016-07-04 10:40:29 +00:00
committed by Audrius Butkevicius
parent 21f5b16e47
commit fa0101bd60
269 changed files with 477296 additions and 4175 deletions
+621
View File
@@ -0,0 +1,621 @@
// Code generated by protoc-gen-gogo.
// source: asym.proto
// DO NOT EDIT!
/*
Package asym is a generated protocol buffer package.
It is generated from these files:
asym.proto
It has these top-level messages:
M
MyType
*/
package asym
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import bytes "bytes"
import io "io"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type M struct {
Arr []MyType `protobuf:"bytes,1,rep,name=arr,customtype=MyType" json:"arr"`
XXX_unrecognized []byte `json:"-"`
}
func (m *M) Reset() { *m = M{} }
func (m *M) String() string { return proto.CompactTextString(m) }
func (*M) ProtoMessage() {}
func (*M) Descriptor() ([]byte, []int) { return fileDescriptorAsym, []int{0} }
type MyType struct {
XXX_unrecognized []byte `json:"-"`
}
func (m *MyType) Reset() { *m = MyType{} }
func (m *MyType) String() string { return proto.CompactTextString(m) }
func (*MyType) ProtoMessage() {}
func (*MyType) Descriptor() ([]byte, []int) { return fileDescriptorAsym, []int{1} }
func init() {
proto.RegisterType((*M)(nil), "asym.M")
proto.RegisterType((*MyType)(nil), "asym.MyType")
}
func (this *M) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*M)
if !ok {
that2, ok := that.(M)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *M")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *M but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *M but is not nil && this == nil")
}
if len(this.Arr) != len(that1.Arr) {
return fmt.Errorf("Arr this(%v) Not Equal that(%v)", len(this.Arr), len(that1.Arr))
}
for i := range this.Arr {
if !this.Arr[i].Equal(that1.Arr[i]) {
return fmt.Errorf("Arr this[%v](%v) Not Equal that[%v](%v)", i, this.Arr[i], i, that1.Arr[i])
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *M) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*M)
if !ok {
that2, ok := that.(M)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if len(this.Arr) != len(that1.Arr) {
return false
}
for i := range this.Arr {
if !this.Arr[i].Equal(that1.Arr[i]) {
return false
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (this *MyType) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*MyType)
if !ok {
that2, ok := that.(MyType)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *MyType")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *MyType but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *MyType but is not nil && this == nil")
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *MyType) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*MyType)
if !ok {
that2, ok := that.(MyType)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (m *M) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *M) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if len(m.Arr) > 0 {
for _, msg := range m.Arr {
data[i] = 0xa
i++
i = encodeVarintAsym(data, i, uint64(msg.Size()))
n, err := msg.MarshalTo(data[i:])
if err != nil {
return 0, err
}
i += n
}
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func encodeFixed64Asym(data []byte, offset int, v uint64) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
data[offset+4] = uint8(v >> 32)
data[offset+5] = uint8(v >> 40)
data[offset+6] = uint8(v >> 48)
data[offset+7] = uint8(v >> 56)
return offset + 8
}
func encodeFixed32Asym(data []byte, offset int, v uint32) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
return offset + 4
}
func encodeVarintAsym(data []byte, offset int, v uint64) int {
for v >= 1<<7 {
data[offset] = uint8(v&0x7f | 0x80)
v >>= 7
offset++
}
data[offset] = uint8(v)
return offset + 1
}
func NewPopulatedM(r randyAsym, easy bool) *M {
this := &M{}
if r.Intn(10) != 0 {
v1 := r.Intn(10)
this.Arr = make([]MyType, v1)
for i := 0; i < v1; i++ {
v2 := NewPopulatedMyType(r)
this.Arr[i] = *v2
}
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedAsym(r, 2)
}
return this
}
type randyAsym interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneAsym(r randyAsym) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringAsym(r randyAsym) string {
v3 := r.Intn(100)
tmps := make([]rune, v3)
for i := 0; i < v3; i++ {
tmps[i] = randUTF8RuneAsym(r)
}
return string(tmps)
}
func randUnrecognizedAsym(r randyAsym, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldAsym(data, r, fieldNumber, wire)
}
return data
}
func randFieldAsym(data []byte, r randyAsym, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateAsym(data, uint64(key))
v4 := r.Int63()
if r.Intn(2) == 0 {
v4 *= -1
}
data = encodeVarintPopulateAsym(data, uint64(v4))
case 1:
data = encodeVarintPopulateAsym(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateAsym(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateAsym(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateAsym(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateAsym(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
func (m *M) Size() (n int) {
var l int
_ = l
if len(m.Arr) > 0 {
for _, e := range m.Arr {
l = e.Size()
n += 1 + l + sovAsym(uint64(l))
}
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func sovAsym(x uint64) (n int) {
for {
n++
x >>= 7
if x == 0 {
break
}
}
return n
}
func sozAsym(x uint64) (n int) {
return sovAsym(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (m *M) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowAsym
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: M: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: M: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Arr", wireType)
}
var byteLen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowAsym
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
byteLen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if byteLen < 0 {
return ErrInvalidLengthAsym
}
postIndex := iNdEx + byteLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
var v MyType
m.Arr = append(m.Arr, v)
if err := m.Arr[len(m.Arr)-1].Unmarshal(data[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipAsym(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthAsym
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
m.XXX_unrecognized = append(m.XXX_unrecognized, data[iNdEx:iNdEx+skippy]...)
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func (m *MyType) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowAsym
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: MyType: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: MyType: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
default:
iNdEx = preIndex
skippy, err := skipAsym(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthAsym
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
m.XXX_unrecognized = append(m.XXX_unrecognized, data[iNdEx:iNdEx+skippy]...)
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipAsym(data []byte) (n int, err error) {
l := len(data)
iNdEx := 0
for iNdEx < l {
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowAsym
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
wireType := int(wire & 0x7)
switch wireType {
case 0:
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowAsym
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
iNdEx++
if data[iNdEx-1] < 0x80 {
break
}
}
return iNdEx, nil
case 1:
iNdEx += 8
return iNdEx, nil
case 2:
var length int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowAsym
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
length |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
iNdEx += length
if length < 0 {
return 0, ErrInvalidLengthAsym
}
return iNdEx, nil
case 3:
for {
var innerWire uint64
var start int = iNdEx
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowAsym
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
innerWire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
innerWireType := int(innerWire & 0x7)
if innerWireType == 4 {
break
}
next, err := skipAsym(data[start:])
if err != nil {
return 0, err
}
iNdEx = start + next
}
return iNdEx, nil
case 4:
return iNdEx, nil
case 5:
iNdEx += 4
return iNdEx, nil
default:
return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
}
}
panic("unreachable")
}
var (
ErrInvalidLengthAsym = fmt.Errorf("proto: negative length found during unmarshaling")
ErrIntOverflowAsym = fmt.Errorf("proto: integer overflow")
)
var fileDescriptorAsym = []byte{
// 151 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0x4a, 0x2c, 0xae, 0xcc,
0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x62, 0x01, 0xb1, 0xa5, 0x74, 0xd3, 0x33, 0x4b, 0x32,
0x4a, 0x93, 0xf4, 0x92, 0xf3, 0x73, 0xf5, 0xd3, 0xf3, 0xd3, 0xf3, 0xf5, 0xc1, 0x92, 0x49, 0xa5,
0x69, 0x60, 0x1e, 0x98, 0x03, 0x66, 0x41, 0x34, 0x29, 0xa9, 0x72, 0x31, 0xfa, 0x0a, 0x29, 0x70,
0x31, 0x27, 0x16, 0x15, 0x49, 0x30, 0x2a, 0x30, 0x6b, 0xf0, 0x38, 0xf1, 0x9d, 0xb8, 0x27, 0xcf,
0x70, 0xeb, 0x9e, 0x3c, 0x9b, 0x6f, 0x65, 0x48, 0x65, 0x41, 0x6a, 0x10, 0x48, 0x4a, 0x49, 0x8a,
0x0b, 0xca, 0xb5, 0x12, 0xd8, 0xb1, 0x40, 0x9e, 0xe1, 0x07, 0x10, 0x77, 0x2c, 0x94, 0x67, 0x58,
0x00, 0xc4, 0x4e, 0x32, 0x0f, 0x1e, 0xca, 0x31, 0xfe, 0x00, 0xe2, 0x15, 0x8f, 0xe4, 0x18, 0x77,
0x00, 0xf1, 0x09, 0x20, 0xbe, 0x00, 0xc4, 0x0f, 0x80, 0x18, 0x10, 0x00, 0x00, 0xff, 0xff, 0x9c,
0x0b, 0x12, 0x6c, 0xa2, 0x00, 0x00, 0x00,
}
+62
View File
@@ -0,0 +1,62 @@
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package asym
func NewPopulatedMyType(r randyAsym) *MyType {
this := &MyType{}
return this
}
func (m MyType) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *MyType) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func (m *MyType) Size() (n int) {
var l int
_ = l
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+57
View File
@@ -0,0 +1,57 @@
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package casttype
import (
"encoding/json"
)
type MyInt32Type int32
type MyFloat32Type float32
type MyUint64Type uint64
type MyFloat64Type float64
type Bytes []byte
func (this Bytes) MarshalJSON() ([]byte, error) {
return json.Marshal([]byte(this))
}
func (this *Bytes) UnmarshalJSON(data []byte) error {
v := new([]byte)
err := json.Unmarshal(data, v)
if err != nil {
return err
}
*this = *v
return nil
}
type MyStringType string
type MyMapType map[string]uint64
+856
View File
@@ -0,0 +1,856 @@
// Code generated by protoc-gen-gogo.
// source: castvalue.proto
// DO NOT EDIT!
/*
Package castvalue is a generated protocol buffer package.
It is generated from these files:
castvalue.proto
It has these top-level messages:
Castaway
Wilson
*/
package castvalue
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import github_com_gogo_protobuf_protoc_gen_gogo_descriptor "github.com/gogo/protobuf/protoc-gen-gogo/descriptor"
import github_com_gogo_protobuf_proto "github.com/gogo/protobuf/proto"
import compress_gzip "compress/gzip"
import bytes "bytes"
import io_ioutil "io/ioutil"
import strings "strings"
import sort "sort"
import strconv "strconv"
import reflect "reflect"
import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type Castaway struct {
CastMapValueMessage map[int32]MyWilson `protobuf:"bytes,1,rep,name=CastMapValueMessage,json=castMapValueMessage,castvalue=MyWilson,castvaluetype=castvalue.Wilson" json:"CastMapValueMessage" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
CastMapValueMessageNullable map[int32]*MyWilson `protobuf:"bytes,2,rep,name=CastMapValueMessageNullable,json=castMapValueMessageNullable,castvalue=MyWilson,castvaluetype=castvalue.Wilson" json:"CastMapValueMessageNullable,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Castaway) Reset() { *m = Castaway{} }
func (*Castaway) ProtoMessage() {}
func (*Castaway) Descriptor() ([]byte, []int) { return fileDescriptorCastvalue, []int{0} }
type Wilson struct {
Int64 *int64 `protobuf:"varint,1,opt,name=Int64,json=int64" json:"Int64,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Wilson) Reset() { *m = Wilson{} }
func (*Wilson) ProtoMessage() {}
func (*Wilson) Descriptor() ([]byte, []int) { return fileDescriptorCastvalue, []int{1} }
func init() {
proto.RegisterType((*Castaway)(nil), "castvalue.Castaway")
proto.RegisterType((*Wilson)(nil), "castvalue.Wilson")
}
func (this *Castaway) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return CastvalueDescription()
}
func (this *Wilson) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return CastvalueDescription()
}
func CastvalueDescription() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
d := &github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet{}
var gzipped = []byte{
// 3462 bytes of a gzipped FileDescriptorSet
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xcc, 0x5a, 0x6b, 0x6c, 0x23, 0x57,
0xf5, 0x5f, 0xc7, 0x76, 0x62, 0x1f, 0x3b, 0x8e, 0x33, 0x49, 0x77, 0xbd, 0xd9, 0x76, 0x1f, 0xee,
0x63, 0xb7, 0xdb, 0x36, 0xdb, 0xff, 0xfe, 0xfb, 0xd8, 0xba, 0xff, 0x7f, 0xab, 0x3c, 0xbc, 0xa9,
0x57, 0x79, 0x31, 0x89, 0xdb, 0xdd, 0xf2, 0x61, 0x34, 0x19, 0xdf, 0x38, 0xde, 0x1d, 0xcf, 0x18,
0xcf, 0x78, 0x77, 0xd3, 0x4f, 0x45, 0x2d, 0xa0, 0x82, 0x78, 0x23, 0xd1, 0x37, 0xb4, 0x12, 0xb4,
0x94, 0x57, 0xcb, 0x4b, 0x88, 0x4f, 0x45, 0xa8, 0xd0, 0x4f, 0x08, 0xf8, 0xc4, 0x07, 0x04, 0x6d,
0xa9, 0x44, 0x81, 0x02, 0x45, 0x5a, 0x89, 0x4a, 0x15, 0x12, 0xe7, 0xbe, 0xc6, 0x33, 0xb6, 0x93,
0x71, 0x8a, 0x4a, 0x89, 0x34, 0xca, 0xcc, 0xb9, 0xe7, 0xf7, 0x9b, 0x7b, 0xcf, 0x3d, 0xf7, 0x9c,
0x73, 0xef, 0x18, 0x7e, 0xf2, 0x3f, 0x70, 0xb0, 0x6a, 0xdb, 0x55, 0x93, 0x1c, 0x6b, 0x34, 0x6d,
0xd7, 0x5e, 0x6b, 0xad, 0x1f, 0xab, 0x10, 0xc7, 0x68, 0xd6, 0x1a, 0xae, 0xdd, 0x9c, 0x64, 0x32,
0x65, 0x84, 0x6b, 0x4c, 0x4a, 0x8d, 0xfc, 0x02, 0x8c, 0x9e, 0xac, 0x99, 0x64, 0xd6, 0x53, 0x5c,
0x21, 0xae, 0x72, 0x02, 0x62, 0xeb, 0x28, 0xcc, 0x45, 0x0e, 0x46, 0x8f, 0xa4, 0x8e, 0x5f, 0x35,
0xd9, 0x01, 0x9a, 0x0c, 0x22, 0x96, 0xa9, 0x58, 0x65, 0x88, 0xfc, 0xeb, 0x31, 0x18, 0xeb, 0xd1,
0xaa, 0x28, 0x10, 0xb3, 0xf4, 0x3a, 0x65, 0x8c, 0x1c, 0x49, 0xaa, 0xec, 0x5e, 0xc9, 0xc1, 0x50,
0x43, 0x37, 0xce, 0xe9, 0x55, 0x92, 0x1b, 0x60, 0x62, 0xf9, 0xa8, 0xec, 0x07, 0xa8, 0x90, 0x06,
0xb1, 0x2a, 0xc4, 0x32, 0x36, 0x73, 0x51, 0xec, 0x45, 0x52, 0xf5, 0x49, 0x94, 0xeb, 0x60, 0xb4,
0xd1, 0x5a, 0x33, 0x6b, 0x86, 0xe6, 0x53, 0x03, 0x54, 0x8b, 0xab, 0x59, 0xde, 0x30, 0xdb, 0x56,
0x3e, 0x0c, 0x23, 0x17, 0x88, 0x7e, 0xce, 0xaf, 0x9a, 0x62, 0xaa, 0x19, 0x2a, 0xf6, 0x29, 0xce,
0x40, 0xba, 0x4e, 0x1c, 0x07, 0x3b, 0xa0, 0xb9, 0x9b, 0x0d, 0x92, 0x8b, 0xb1, 0xd1, 0x1f, 0xec,
0x1a, 0x7d, 0xe7, 0xc8, 0x53, 0x02, 0xb5, 0x8a, 0x20, 0x65, 0x0a, 0x92, 0xc4, 0x6a, 0xd5, 0x39,
0x43, 0x7c, 0x0b, 0xfb, 0x15, 0x51, 0xa3, 0x93, 0x25, 0x41, 0x61, 0x82, 0x62, 0xc8, 0x21, 0xcd,
0xf3, 0x35, 0x83, 0xe4, 0x06, 0x19, 0xc1, 0xe1, 0x2e, 0x82, 0x15, 0xde, 0xde, 0xc9, 0x21, 0x71,
0x38, 0x94, 0x24, 0xb9, 0xe8, 0x12, 0xcb, 0xa9, 0xd9, 0x56, 0x6e, 0x88, 0x91, 0x5c, 0xdd, 0x63,
0x16, 0x89, 0x59, 0xe9, 0xa4, 0x68, 0xe3, 0x94, 0x5b, 0x60, 0xc8, 0x6e, 0xb8, 0x78, 0xe7, 0xe4,
0x12, 0x38, 0x3f, 0xa9, 0xe3, 0x97, 0xf7, 0x74, 0x84, 0x25, 0xae, 0xa3, 0x4a, 0x65, 0xa5, 0x04,
0x59, 0xc7, 0x6e, 0x35, 0x0d, 0xa2, 0x19, 0x76, 0x85, 0x68, 0x35, 0x6b, 0xdd, 0xce, 0x25, 0x19,
0xc1, 0x81, 0xee, 0x81, 0x30, 0xc5, 0x19, 0xd4, 0x2b, 0xa1, 0x9a, 0x9a, 0x71, 0x02, 0xcf, 0xca,
0x6e, 0x18, 0x74, 0x36, 0x2d, 0x57, 0xbf, 0x98, 0x4b, 0x33, 0x0f, 0x11, 0x4f, 0xf9, 0x7f, 0xc4,
0x61, 0xa4, 0x1f, 0x17, 0xbb, 0x1d, 0xe2, 0xeb, 0x74, 0x94, 0xe8, 0x60, 0x3b, 0xb0, 0x01, 0xc7,
0x04, 0x8d, 0x38, 0xf8, 0x2e, 0x8d, 0x38, 0x05, 0x29, 0x8b, 0x38, 0x2e, 0xa9, 0x70, 0x8f, 0x88,
0xf6, 0xe9, 0x53, 0xc0, 0x41, 0xdd, 0x2e, 0x15, 0x7b, 0x57, 0x2e, 0x75, 0x1a, 0x46, 0xbc, 0x2e,
0x69, 0x4d, 0xdd, 0xaa, 0x4a, 0xdf, 0x3c, 0x16, 0xd6, 0x93, 0xc9, 0xa2, 0xc4, 0xa9, 0x14, 0xa6,
0x66, 0x48, 0xe0, 0x59, 0x99, 0x05, 0xb0, 0x2d, 0x62, 0xaf, 0xe3, 0xf2, 0x32, 0x4c, 0xf4, 0x93,
0xde, 0x56, 0x5a, 0xa2, 0x2a, 0x5d, 0x56, 0xb2, 0xb9, 0xd4, 0x30, 0x95, 0xdb, 0xda, 0xae, 0x36,
0xb4, 0x85, 0xa7, 0x2c, 0xf0, 0x45, 0xd6, 0xe5, 0x6d, 0x65, 0xc8, 0x34, 0x09, 0xf5, 0x7b, 0x34,
0x31, 0x1f, 0x59, 0x92, 0x75, 0x62, 0x32, 0x74, 0x64, 0xaa, 0x80, 0xf1, 0x81, 0x0d, 0x37, 0xfd,
0x8f, 0xca, 0x95, 0xe0, 0x09, 0x34, 0xe6, 0x56, 0xc0, 0xa2, 0x50, 0x5a, 0x0a, 0x17, 0x51, 0x36,
0x71, 0x02, 0x32, 0x41, 0xf3, 0x28, 0xe3, 0x10, 0x77, 0x5c, 0xbd, 0xe9, 0x32, 0x2f, 0x8c, 0xab,
0xfc, 0x41, 0xc9, 0x42, 0x14, 0x83, 0x0c, 0x8b, 0x72, 0x71, 0x95, 0xde, 0x4e, 0xdc, 0x0a, 0xc3,
0x81, 0xd7, 0xf7, 0x0b, 0xcc, 0x3f, 0x3c, 0x08, 0xe3, 0xbd, 0x7c, 0xae, 0xa7, 0xfb, 0xe3, 0xf2,
0x41, 0x0f, 0x58, 0x23, 0x4d, 0xf4, 0x3b, 0xca, 0x20, 0x9e, 0xd0, 0xa3, 0xe2, 0xa6, 0xbe, 0x46,
0x4c, 0xf4, 0xa6, 0xc8, 0x91, 0xcc, 0xf1, 0xeb, 0xfa, 0xf2, 0xea, 0xc9, 0x79, 0x0a, 0x51, 0x39,
0x52, 0xb9, 0x03, 0x62, 0x22, 0xc4, 0x51, 0x86, 0xa3, 0xfd, 0x31, 0x50, 0x5f, 0x54, 0x19, 0x4e,
0xd9, 0x07, 0x49, 0xfa, 0x9f, 0xdb, 0x76, 0x90, 0xf5, 0x39, 0x41, 0x05, 0xd4, 0xae, 0xca, 0x04,
0x24, 0x98, 0x9b, 0x55, 0x88, 0x4c, 0x0d, 0xde, 0x33, 0x9d, 0x98, 0x0a, 0x59, 0xd7, 0x5b, 0xa6,
0xab, 0x9d, 0xd7, 0xcd, 0x16, 0x61, 0x0e, 0x83, 0x13, 0x23, 0x84, 0x77, 0x53, 0x99, 0x72, 0x00,
0x52, 0xdc, 0x2b, 0x6b, 0x88, 0xb9, 0xc8, 0xa2, 0x4f, 0x5c, 0xe5, 0x8e, 0x5a, 0xa2, 0x12, 0xfa,
0xfa, 0xb3, 0x0e, 0xae, 0x05, 0x31, 0xb5, 0xec, 0x15, 0x54, 0xc0, 0x5e, 0x7f, 0x6b, 0x67, 0xe0,
0xbb, 0xa2, 0xf7, 0xf0, 0x3a, 0x7d, 0x31, 0xff, 0x83, 0x01, 0x88, 0xb1, 0xf5, 0x36, 0x02, 0xa9,
0xd5, 0x33, 0xcb, 0x45, 0x6d, 0x76, 0xa9, 0x3c, 0x3d, 0x5f, 0xcc, 0x46, 0x94, 0x0c, 0x00, 0x13,
0x9c, 0x9c, 0x5f, 0x9a, 0x5a, 0xcd, 0x0e, 0x78, 0xcf, 0xa5, 0xc5, 0xd5, 0x5b, 0x6e, 0xca, 0x46,
0x3d, 0x40, 0x99, 0x0b, 0x62, 0x7e, 0x85, 0xff, 0x3d, 0x9e, 0x8d, 0xa3, 0x27, 0xa4, 0x39, 0x41,
0xe9, 0x74, 0x71, 0x16, 0x35, 0x06, 0x83, 0x12, 0xd4, 0x19, 0x52, 0x86, 0x21, 0xc9, 0x24, 0xd3,
0x4b, 0x4b, 0xf3, 0xd9, 0x84, 0xc7, 0xb9, 0xb2, 0xaa, 0x96, 0x16, 0xe7, 0xb2, 0x49, 0x8f, 0x73,
0x4e, 0x5d, 0x2a, 0x2f, 0x67, 0xc1, 0x63, 0x58, 0x28, 0xae, 0xac, 0x4c, 0xcd, 0x15, 0xb3, 0x29,
0x4f, 0x63, 0xfa, 0xcc, 0x6a, 0x71, 0x25, 0x9b, 0x0e, 0x74, 0x0b, 0x5f, 0x31, 0xec, 0xbd, 0xa2,
0xb8, 0x58, 0x5e, 0xc8, 0x66, 0x94, 0x51, 0x18, 0xe6, 0xaf, 0x90, 0x9d, 0x18, 0xe9, 0x10, 0x61,
0x4f, 0xb3, 0xed, 0x8e, 0x70, 0x96, 0xd1, 0x80, 0x00, 0x35, 0x94, 0xfc, 0x0c, 0xc4, 0x99, 0x77,
0xa1, 0x17, 0x67, 0xe6, 0xa7, 0xa6, 0x8b, 0xf3, 0xda, 0xd2, 0xf2, 0x6a, 0x69, 0x69, 0x71, 0x6a,
0x1e, 0x6d, 0xe7, 0xc9, 0xd4, 0xe2, 0x07, 0xca, 0x25, 0xb5, 0x38, 0x8b, 0xf6, 0xf3, 0xc9, 0x96,
0x8b, 0x53, 0xab, 0x28, 0x8b, 0xe6, 0x8f, 0xc2, 0x78, 0xaf, 0x38, 0xd3, 0x6b, 0x65, 0xe4, 0x9f,
0x8e, 0xc0, 0x58, 0x8f, 0x90, 0xd9, 0x73, 0x15, 0xdd, 0x09, 0x71, 0xee, 0x69, 0x3c, 0x89, 0x5c,
0xdb, 0x33, 0xf6, 0x32, 0xbf, 0xeb, 0x4a, 0x24, 0x0c, 0xe7, 0x4f, 0xa4, 0xd1, 0x2d, 0x12, 0x29,
0xa5, 0xe8, 0x72, 0xa7, 0x07, 0x22, 0x90, 0xdb, 0x8a, 0x3b, 0x64, 0xbd, 0x0f, 0x04, 0xd6, 0xfb,
0xed, 0x9d, 0x1d, 0x38, 0xb4, 0xf5, 0x18, 0xba, 0x7a, 0xf1, 0x4c, 0x04, 0x76, 0xf7, 0xae, 0x37,
0x7a, 0xf6, 0xe1, 0x0e, 0x18, 0xac, 0x13, 0x77, 0xc3, 0x96, 0x39, 0xf7, 0x9a, 0x1e, 0x91, 0x9c,
0x36, 0x77, 0xda, 0x4a, 0xa0, 0xfc, 0xa9, 0x20, 0xba, 0x55, 0xd1, 0xc0, 0x7b, 0xd3, 0xd5, 0xd3,
0x87, 0x06, 0xe0, 0xb2, 0x9e, 0xe4, 0x3d, 0x3b, 0x7a, 0x05, 0x40, 0xcd, 0x6a, 0xb4, 0x5c, 0x9e,
0x57, 0x79, 0x98, 0x49, 0x32, 0x09, 0x5b, 0xc2, 0x34, 0x84, 0xb4, 0x5c, 0xaf, 0x3d, 0xca, 0xda,
0x81, 0x8b, 0x98, 0xc2, 0x89, 0x76, 0x47, 0x63, 0xac, 0xa3, 0xfb, 0xb7, 0x18, 0x69, 0x57, 0xca,
0xba, 0x11, 0xb2, 0x86, 0x59, 0x23, 0x96, 0xab, 0x39, 0x6e, 0x93, 0xe8, 0xf5, 0x9a, 0x55, 0x65,
0x71, 0x34, 0x51, 0x88, 0xaf, 0xeb, 0xa6, 0x43, 0xd4, 0x11, 0xde, 0xbc, 0x22, 0x5b, 0x29, 0x82,
0x25, 0x8b, 0xa6, 0x0f, 0x31, 0x18, 0x40, 0xf0, 0x66, 0x0f, 0x91, 0xff, 0xd5, 0x10, 0xa4, 0x7c,
0xd5, 0x99, 0x72, 0x08, 0xd2, 0x67, 0xf5, 0xf3, 0xba, 0x26, 0x2b, 0x6e, 0x6e, 0x89, 0x14, 0x95,
0x2d, 0x8b, 0xaa, 0xfb, 0x46, 0x18, 0x67, 0x2a, 0x38, 0x46, 0x7c, 0x91, 0x61, 0xea, 0x8e, 0xc3,
0x8c, 0x96, 0x60, 0xaa, 0x0a, 0x6d, 0x5b, 0xa2, 0x4d, 0x33, 0xb2, 0x45, 0xb9, 0x19, 0xc6, 0x18,
0xa2, 0x8e, 0x81, 0xb7, 0xd6, 0x30, 0x89, 0x46, 0xf7, 0x00, 0x0e, 0x8b, 0xa7, 0x5e, 0xcf, 0x46,
0xa9, 0xc6, 0x82, 0x50, 0xa0, 0x3d, 0x72, 0x94, 0x39, 0xb8, 0x82, 0xc1, 0xaa, 0xc4, 0x22, 0x4d,
0xdd, 0x25, 0x1a, 0xf9, 0x50, 0x0b, 0x75, 0x35, 0xdd, 0xaa, 0x68, 0x1b, 0xba, 0xb3, 0x91, 0x1b,
0xf7, 0x13, 0xec, 0xa5, 0xba, 0x73, 0x42, 0xb5, 0xc8, 0x34, 0xa7, 0xac, 0xca, 0x5d, 0xa8, 0xa7,
0x14, 0x60, 0x37, 0x23, 0x42, 0xa3, 0xe0, 0x98, 0x35, 0x63, 0x83, 0x18, 0xe7, 0xb4, 0x96, 0xbb,
0x7e, 0x22, 0xb7, 0xcf, 0xcf, 0xc0, 0x3a, 0xb9, 0xc2, 0x74, 0x66, 0xa8, 0x4a, 0x19, 0x35, 0x94,
0x15, 0x48, 0xd3, 0xf9, 0xa8, 0xd7, 0xee, 0xc3, 0x6e, 0xdb, 0x4d, 0x96, 0x23, 0x32, 0x3d, 0x16,
0xb7, 0xcf, 0x88, 0x93, 0x4b, 0x02, 0xb0, 0x80, 0xf5, 0x69, 0x21, 0xbe, 0xb2, 0x5c, 0x2c, 0xce,
0xaa, 0x29, 0xc9, 0x72, 0xd2, 0x6e, 0x52, 0x9f, 0xaa, 0xda, 0x9e, 0x8d, 0x53, 0xdc, 0xa7, 0xaa,
0xb6, 0xb4, 0x30, 0xda, 0xcb, 0x30, 0xf8, 0xb0, 0x71, 0xef, 0x22, 0x8a, 0x75, 0x27, 0x97, 0x0d,
0xd8, 0xcb, 0x30, 0xe6, 0xb8, 0x82, 0x70, 0x73, 0x07, 0x97, 0xc4, 0x65, 0x6d, 0x7b, 0xf9, 0x81,
0xa3, 0x5d, 0xa3, 0xec, 0x84, 0xe2, 0x1b, 0x1b, 0x9b, 0xdd, 0x40, 0x25, 0xf0, 0xc6, 0xc6, 0x66,
0x27, 0xec, 0x6a, 0xb6, 0x01, 0x6b, 0x12, 0x03, 0x4d, 0x5e, 0xc9, 0xed, 0xf1, 0x6b, 0xfb, 0x1a,
0x94, 0x63, 0xe8, 0xc8, 0x86, 0x46, 0x2c, 0x7d, 0x0d, 0xe7, 0x5e, 0x6f, 0xe2, 0x8d, 0x93, 0x3b,
0xe0, 0x57, 0xce, 0x18, 0x46, 0x91, 0xb5, 0x4e, 0xb1, 0x46, 0xe5, 0x28, 0x8c, 0xda, 0x6b, 0x67,
0x0d, 0xee, 0x5c, 0x1a, 0xf2, 0xac, 0xd7, 0x2e, 0xe6, 0xae, 0x62, 0x66, 0x1a, 0xa1, 0x0d, 0xcc,
0xb5, 0x96, 0x99, 0x58, 0xb9, 0x16, 0xc9, 0x9d, 0x0d, 0xbd, 0xd9, 0x60, 0x49, 0xda, 0x41, 0xa3,
0x92, 0xdc, 0xd5, 0x5c, 0x95, 0xcb, 0x17, 0xa5, 0x58, 0x29, 0xc2, 0x01, 0x3a, 0x78, 0x4b, 0xb7,
0x6c, 0xad, 0xe5, 0x10, 0xad, 0xdd, 0x45, 0x6f, 0x2e, 0xae, 0xa1, 0xdd, 0x52, 0x2f, 0x97, 0x6a,
0x65, 0x07, 0x83, 0x99, 0x54, 0x92, 0xd3, 0x73, 0x1a, 0xc6, 0x5b, 0x56, 0xcd, 0x42, 0x17, 0xc7,
0x16, 0x0a, 0xe6, 0x0b, 0x36, 0xf7, 0x87, 0xa1, 0x2d, 0x8a, 0xee, 0xb2, 0x5f, 0x9b, 0x3b, 0x89,
0x3a, 0xd6, 0xea, 0x16, 0xe6, 0x0b, 0x90, 0xf6, 0xfb, 0x8e, 0x92, 0x04, 0xee, 0x3d, 0x98, 0xdd,
0x30, 0xa3, 0xce, 0x2c, 0xcd, 0xd2, 0x5c, 0x78, 0x6f, 0x11, 0x13, 0x1b, 0xe6, 0xe4, 0xf9, 0xd2,
0x6a, 0x51, 0x53, 0xcb, 0x8b, 0xab, 0xa5, 0x85, 0x62, 0x36, 0x7a, 0x34, 0x99, 0x78, 0x63, 0x28,
0x7b, 0x3f, 0xfe, 0x0d, 0xe4, 0x5f, 0x1a, 0x80, 0x4c, 0xb0, 0x0e, 0x56, 0xfe, 0x0f, 0xf6, 0xc8,
0x4d, 0xab, 0x43, 0x5c, 0xed, 0x42, 0xad, 0xc9, 0xdc, 0xb9, 0xae, 0xf3, 0x4a, 0xd2, 0x9b, 0x89,
0x71, 0xa1, 0x85, 0xdb, 0xfb, 0x7b, 0x50, 0xe7, 0x24, 0x53, 0x51, 0xe6, 0xe1, 0x00, 0x9a, 0x0c,
0x6b, 0x4d, 0xab, 0xa2, 0x37, 0x2b, 0x5a, 0xfb, 0xb8, 0x40, 0xd3, 0x0d, 0xf4, 0x03, 0xc7, 0xe6,
0x99, 0xc4, 0x63, 0xb9, 0xdc, 0xb2, 0x57, 0x84, 0x72, 0x3b, 0xc4, 0x4e, 0x09, 0xd5, 0x0e, 0xaf,
0x89, 0x6e, 0xe5, 0x35, 0x58, 0x7b, 0xd5, 0xf5, 0x06, 0xba, 0x8d, 0xdb, 0xdc, 0x64, 0xd5, 0x5b,
0x42, 0x4d, 0xa0, 0xa0, 0x48, 0x9f, 0xdf, 0xbb, 0x39, 0xf0, 0xdb, 0xf1, 0x37, 0x51, 0x48, 0xfb,
0x2b, 0x38, 0x5a, 0x10, 0x1b, 0x2c, 0xcc, 0x47, 0x58, 0x14, 0xb8, 0x72, 0xdb, 0x7a, 0x6f, 0x72,
0x86, 0xc6, 0xff, 0xc2, 0x20, 0xaf, 0xab, 0x54, 0x8e, 0xa4, 0xb9, 0x97, 0xfa, 0x1a, 0xe1, 0xd5,
0x7a, 0x42, 0x15, 0x4f, 0x18, 0xec, 0x06, 0xcf, 0x3a, 0x8c, 0x7b, 0x90, 0x71, 0x5f, 0xb5, 0x3d,
0xf7, 0xa9, 0x15, 0x46, 0x9e, 0x3c, 0xb5, 0xa2, 0x2d, 0x2e, 0xa9, 0x0b, 0x53, 0xf3, 0xaa, 0x80,
0x2b, 0x7b, 0x21, 0x66, 0xea, 0xf7, 0x6d, 0x06, 0x33, 0x05, 0x13, 0xf5, 0x6b, 0x78, 0x64, 0xa0,
0x47, 0x1e, 0xc1, 0xf8, 0xcc, 0x44, 0xef, 0xa1, 0xeb, 0x1f, 0x83, 0x38, 0xb3, 0x97, 0x02, 0x20,
0x2c, 0x96, 0xdd, 0xa5, 0x24, 0x20, 0x36, 0xb3, 0xa4, 0x52, 0xf7, 0x47, 0x7f, 0xe7, 0x52, 0x6d,
0xb9, 0x54, 0x9c, 0xc1, 0x15, 0x90, 0xbf, 0x19, 0x06, 0xb9, 0x11, 0xe8, 0xd2, 0xf0, 0xcc, 0x80,
0x20, 0xfe, 0x28, 0x38, 0x22, 0xb2, 0xb5, 0xbc, 0x30, 0x5d, 0x54, 0xb3, 0x03, 0xfe, 0xe9, 0xfd,
0x51, 0x04, 0x52, 0xbe, 0x82, 0x8a, 0xa6, 0x72, 0xdd, 0x34, 0xed, 0x0b, 0x9a, 0x6e, 0xd6, 0x30,
0x42, 0xf1, 0xf9, 0x01, 0x26, 0x9a, 0xa2, 0x92, 0x7e, 0xed, 0xf7, 0x1f, 0xf1, 0xcd, 0x27, 0x23,
0x90, 0xed, 0x2c, 0xc6, 0x3a, 0x3a, 0x18, 0x79, 0x5f, 0x3b, 0xf8, 0x78, 0x04, 0x32, 0xc1, 0x0a,
0xac, 0xa3, 0x7b, 0x87, 0xde, 0xd7, 0xee, 0x3d, 0x16, 0x81, 0xe1, 0x40, 0xdd, 0xf5, 0x5f, 0xd5,
0xbb, 0x47, 0xa3, 0x30, 0xd6, 0x03, 0x87, 0x01, 0x88, 0x17, 0xa8, 0xbc, 0x66, 0xbe, 0xa1, 0x9f,
0x77, 0x4d, 0xd2, 0xfc, 0xb7, 0xac, 0x37, 0x5d, 0x51, 0xcf, 0x62, 0xbe, 0xac, 0x55, 0x30, 0xa8,
0xd6, 0xd6, 0x6b, 0x58, 0xbe, 0xf1, 0x1d, 0x0b, 0xaf, 0x5a, 0x47, 0xda, 0x72, 0xbe, 0x3d, 0xbe,
0x1e, 0x94, 0x86, 0xed, 0xd4, 0xdc, 0xda, 0x79, 0x7a, 0x3c, 0x27, 0x37, 0xd2, 0xb4, 0x8a, 0x8d,
0xa9, 0x59, 0xd9, 0x52, 0xb2, 0x5c, 0x4f, 0xdb, 0x22, 0x55, 0xbd, 0x43, 0x9b, 0x86, 0xa1, 0xa8,
0x9a, 0x95, 0x2d, 0x9e, 0x36, 0x16, 0x9a, 0x15, 0xbb, 0x45, 0x0b, 0x02, 0xae, 0x47, 0xa3, 0x5e,
0x44, 0x4d, 0x71, 0x99, 0xa7, 0x22, 0x2a, 0xb6, 0xf6, 0x0e, 0x3e, 0xad, 0xa6, 0xb8, 0x8c, 0xab,
0x1c, 0x86, 0x11, 0xbd, 0x5a, 0x6d, 0x52, 0x72, 0x49, 0xc4, 0xcb, 0xd0, 0x8c, 0x27, 0x66, 0x8a,
0x13, 0xa7, 0x20, 0x21, 0xed, 0x40, 0x13, 0x0b, 0xb5, 0x04, 0xe6, 0x7c, 0x76, 0x8e, 0x32, 0x40,
0x37, 0xf5, 0x96, 0x6c, 0xc4, 0x97, 0xd6, 0x1c, 0xad, 0x7d, 0xa0, 0x37, 0x80, 0xed, 0x09, 0x35,
0x55, 0x73, 0xbc, 0x13, 0x9c, 0xfc, 0x33, 0x98, 0x5e, 0x83, 0x07, 0x92, 0xca, 0x2c, 0x24, 0x4c,
0x1b, 0xfd, 0x83, 0x22, 0xf8, 0x69, 0xf8, 0x91, 0x90, 0x33, 0xcc, 0xc9, 0x79, 0xa1, 0xaf, 0x7a,
0xc8, 0x89, 0x9f, 0x47, 0x20, 0x21, 0xc5, 0x98, 0x28, 0x62, 0x0d, 0xdd, 0xdd, 0x60, 0x74, 0xf1,
0xe9, 0x81, 0x6c, 0x44, 0x65, 0xcf, 0x54, 0x8e, 0xd5, 0x8c, 0xc5, 0x5c, 0x40, 0xc8, 0xe9, 0x33,
0x9d, 0x57, 0x93, 0xe8, 0x15, 0x56, 0xe0, 0xda, 0xf5, 0x3a, 0xce, 0xa4, 0x23, 0xe7, 0x55, 0xc8,
0x67, 0x84, 0x98, 0x9e, 0x8b, 0xbb, 0x4d, 0xbd, 0x66, 0x06, 0x74, 0x63, 0x4c, 0x37, 0x2b, 0x1b,
0x3c, 0xe5, 0x02, 0xec, 0x95, 0xbc, 0x15, 0xe2, 0xea, 0x58, 0x3c, 0x57, 0xda, 0xa0, 0x41, 0x76,
0xda, 0xb5, 0x47, 0x28, 0xcc, 0x8a, 0x76, 0x89, 0x9d, 0x3e, 0x8d, 0x85, 0xac, 0x5d, 0xef, 0xb4,
0xc4, 0x74, 0xb6, 0x63, 0xdf, 0xe5, 0xdc, 0x15, 0xb9, 0x17, 0xda, 0x45, 0xc5, 0xd3, 0x03, 0xd1,
0xb9, 0xe5, 0xe9, 0xe7, 0x06, 0x26, 0xe6, 0x38, 0x6e, 0x59, 0x5a, 0x50, 0x25, 0xeb, 0x26, 0x31,
0xa8, 0x75, 0xe0, 0xa9, 0x2b, 0xe1, 0x86, 0x6a, 0xcd, 0xdd, 0x68, 0xad, 0x4d, 0xe2, 0x1b, 0x8e,
0x55, 0xed, 0xaa, 0xdd, 0xfe, 0x9c, 0x41, 0x9f, 0xd8, 0x03, 0xbb, 0x13, 0x9f, 0x34, 0x92, 0x9e,
0x74, 0x22, 0xf4, 0xfb, 0x47, 0x61, 0x11, 0xc6, 0x84, 0xb2, 0xc6, 0xce, 0x54, 0x79, 0x09, 0xaa,
0x6c, 0xbb, 0x21, 0xcf, 0xbd, 0xf0, 0x3a, 0x4b, 0x09, 0xea, 0xa8, 0x80, 0xd2, 0x36, 0x5e, 0xa4,
0x16, 0x54, 0xb8, 0x2c, 0xc0, 0xc7, 0x7d, 0x18, 0xb7, 0xdc, 0xdb, 0x33, 0xbe, 0x24, 0x18, 0xc7,
0x7c, 0x8c, 0x2b, 0x02, 0x5a, 0x98, 0x81, 0xe1, 0x9d, 0x70, 0xfd, 0x54, 0x70, 0xa5, 0x89, 0x9f,
0x64, 0x0e, 0x46, 0x18, 0x89, 0xd1, 0x72, 0x5c, 0xbb, 0xce, 0x02, 0xc4, 0xf6, 0x34, 0x3f, 0x7b,
0x9d, 0x3b, 0x55, 0x86, 0xc2, 0x66, 0x3c, 0x54, 0xe1, 0x6e, 0x18, 0xa7, 0x12, 0xb6, 0x06, 0xfd,
0x6c, 0xe1, 0x47, 0x08, 0xb9, 0x5f, 0x3e, 0xc0, 0x7d, 0x6f, 0xcc, 0x23, 0xf0, 0xf1, 0xfa, 0x66,
0xa2, 0x4a, 0x5c, 0x8c, 0x6d, 0xb8, 0xff, 0x33, 0x4d, 0x65, 0xdb, 0x6f, 0x0c, 0xb9, 0x47, 0xde,
0x0c, 0xce, 0xc4, 0x1c, 0x47, 0x4e, 0x99, 0x66, 0xa1, 0x0c, 0x7b, 0x7a, 0xcc, 0x6c, 0x1f, 0x9c,
0x8f, 0x0a, 0xce, 0xf1, 0xae, 0xd9, 0xa5, 0xb4, 0xcb, 0x20, 0xe5, 0xde, 0x7c, 0xf4, 0xc1, 0xf9,
0x98, 0xe0, 0x54, 0x04, 0x56, 0x4e, 0x0b, 0x65, 0x3c, 0x05, 0xa3, 0xb8, 0x53, 0x5f, 0xb3, 0x1d,
0xb1, 0xef, 0xed, 0x83, 0xee, 0x71, 0x41, 0x37, 0x22, 0x80, 0x6c, 0x17, 0x4c, 0xb9, 0x6e, 0x83,
0xc4, 0x3a, 0x6e, 0x80, 0xfa, 0xa0, 0x78, 0x42, 0x50, 0x0c, 0x51, 0x7d, 0x0a, 0x9d, 0x82, 0x74,
0xd5, 0x16, 0x61, 0x38, 0x1c, 0xfe, 0xa4, 0x80, 0xa7, 0x24, 0x46, 0x50, 0x34, 0xec, 0x46, 0xcb,
0xa4, 0x31, 0x3a, 0x9c, 0xe2, 0x4b, 0x92, 0x42, 0x62, 0x04, 0xc5, 0x0e, 0xcc, 0xfa, 0x65, 0x49,
0xe1, 0xf8, 0xec, 0x79, 0x27, 0x3d, 0xeb, 0x35, 0x37, 0x6d, 0xab, 0x9f, 0x4e, 0x3c, 0x25, 0x18,
0x40, 0x40, 0x28, 0xc1, 0xed, 0x90, 0xec, 0x77, 0x22, 0xbe, 0x22, 0xe0, 0x09, 0x22, 0x67, 0x00,
0xd7, 0x99, 0x0c, 0x32, 0xf4, 0xdb, 0x4a, 0x38, 0xc5, 0x57, 0x05, 0x45, 0xc6, 0x07, 0x13, 0xc3,
0x70, 0x89, 0xe3, 0xe2, 0x56, 0xbd, 0x0f, 0x92, 0x67, 0xe4, 0x30, 0x04, 0x44, 0x98, 0x72, 0x8d,
0x58, 0xc6, 0x46, 0x7f, 0x0c, 0xcf, 0x4a, 0x53, 0x4a, 0x0c, 0xa5, 0xc0, 0xc8, 0x53, 0xd7, 0x9b,
0xb8, 0xb9, 0x36, 0xfb, 0x9a, 0x8e, 0xaf, 0x09, 0x8e, 0xb4, 0x07, 0x12, 0x16, 0x69, 0x59, 0x3b,
0xa1, 0x79, 0x4e, 0x5a, 0xc4, 0x07, 0x13, 0x4b, 0x0f, 0x77, 0xa6, 0xb4, 0x92, 0xd8, 0x09, 0xdb,
0xd7, 0xe5, 0xd2, 0xe3, 0xd8, 0x05, 0x3f, 0x23, 0xce, 0xb4, 0x83, 0x5b, 0xf0, 0x7e, 0x68, 0xbe,
0x21, 0x67, 0x9a, 0x01, 0x28, 0xf8, 0x0c, 0xec, 0xed, 0x19, 0xea, 0xfb, 0x20, 0xfb, 0xa6, 0x20,
0xdb, 0xdd, 0x23, 0xdc, 0x8b, 0x90, 0xb0, 0x53, 0xca, 0x6f, 0xc9, 0x90, 0x40, 0x3a, 0xb8, 0x96,
0x69, 0x19, 0xeb, 0xe8, 0xeb, 0x3b, 0xb3, 0xda, 0xb7, 0xa5, 0xd5, 0x38, 0x36, 0x60, 0xb5, 0x55,
0xd8, 0x2d, 0x18, 0x77, 0x36, 0xaf, 0xcf, 0xcb, 0xc0, 0xca, 0xd1, 0xe5, 0xe0, 0xec, 0x7e, 0x10,
0x26, 0x3c, 0x73, 0xca, 0x0a, 0xcc, 0xd1, 0xe8, 0xc1, 0x40, 0x38, 0xf3, 0x0b, 0x82, 0x59, 0x46,
0x7c, 0xaf, 0x84, 0x73, 0x16, 0xf4, 0x06, 0x25, 0x3f, 0x0d, 0x39, 0x49, 0xde, 0xb2, 0xb0, 0xc0,
0xb7, 0xab, 0x16, 0x4e, 0x63, 0xa5, 0x0f, 0xea, 0xef, 0x74, 0x4c, 0x55, 0xd9, 0x07, 0xa7, 0xcc,
0x25, 0xc8, 0x7a, 0xf5, 0x86, 0x56, 0xab, 0x37, 0x6c, 0x2c, 0x2d, 0xb7, 0x67, 0xfc, 0xae, 0x9c,
0x29, 0x0f, 0x57, 0x62, 0xb0, 0x42, 0x11, 0x32, 0xec, 0xb1, 0x5f, 0x97, 0xfc, 0x9e, 0x20, 0x1a,
0x6e, 0xa3, 0x44, 0xe0, 0xc0, 0x4a, 0x09, 0x6b, 0xde, 0x7e, 0xe2, 0xdf, 0xf7, 0x65, 0xe0, 0x10,
0x10, 0xee, 0x7d, 0x23, 0x1d, 0x99, 0x58, 0x09, 0xfb, 0xfc, 0x9a, 0xfb, 0xf0, 0x25, 0xb1, 0x66,
0x83, 0x89, 0xb8, 0x30, 0x4f, 0xcd, 0x13, 0x4c, 0x97, 0xe1, 0x64, 0x0f, 0x5c, 0xf2, 0x2c, 0x14,
0xc8, 0x96, 0x85, 0x93, 0x30, 0x1c, 0x48, 0x95, 0xe1, 0x54, 0x0f, 0x0a, 0xaa, 0xb4, 0x3f, 0x53,
0x16, 0x6e, 0x86, 0x18, 0x4d, 0x7b, 0xe1, 0xf0, 0x8f, 0x08, 0x38, 0x53, 0x2f, 0xfc, 0x3f, 0x24,
0x64, 0xba, 0x0b, 0x87, 0x7e, 0x54, 0x40, 0x3d, 0x08, 0x85, 0xcb, 0x54, 0x17, 0x0e, 0xff, 0x98,
0x84, 0x4b, 0x08, 0x85, 0xf7, 0x6f, 0xc2, 0x17, 0x3f, 0x11, 0x13, 0xe1, 0x4a, 0xda, 0x8e, 0x7e,
0xf3, 0xe1, 0x39, 0x2e, 0x1c, 0xfd, 0x90, 0x78, 0xb9, 0x44, 0x14, 0x6e, 0x85, 0x78, 0x9f, 0x06,
0xff, 0xa4, 0x80, 0x72, 0x7d, 0xcc, 0x20, 0x29, 0x5f, 0x5e, 0x0b, 0x87, 0x7f, 0x4a, 0xc0, 0xfd,
0x28, 0xda, 0x75, 0x91, 0xd7, 0xc2, 0x09, 0x3e, 0x2d, 0xbb, 0x2e, 0x10, 0xd4, 0x6c, 0x32, 0xa5,
0x85, 0xa3, 0x3f, 0x23, 0xad, 0x2e, 0x21, 0xb8, 0x9a, 0x92, 0x5e, 0x98, 0x0a, 0xc7, 0x7f, 0x56,
0xe0, 0xdb, 0x18, 0x6a, 0x01, 0x5f, 0x98, 0x0c, 0xa7, 0xf8, 0x9c, 0xb4, 0x80, 0x0f, 0x45, 0x97,
0x51, 0x67, 0xea, 0x0b, 0x67, 0xfa, 0xbc, 0x5c, 0x46, 0x1d, 0x99, 0x8f, 0xce, 0x26, 0x8b, 0x16,
0xe1, 0x14, 0x5f, 0x90, 0xb3, 0xc9, 0xf4, 0x69, 0x37, 0x3a, 0x73, 0x49, 0x38, 0xc7, 0x17, 0x65,
0x37, 0x3a, 0x52, 0x09, 0x66, 0x26, 0xa5, 0x3b, 0x8f, 0x84, 0xf3, 0x3d, 0x2c, 0xf8, 0x46, 0xbb,
0xd2, 0x48, 0xe1, 0x1e, 0xd8, 0xdd, 0x3b, 0x87, 0x84, 0xb3, 0x3e, 0x72, 0xa9, 0xa3, 0xea, 0xf7,
0xa7, 0x10, 0x4c, 0x79, 0xe3, 0xbd, 0xf2, 0x47, 0x38, 0xed, 0xa3, 0x97, 0x82, 0x1b, 0x3b, 0x7f,
0xfa, 0xc0, 0x0a, 0x0d, 0xda, 0xa1, 0x3b, 0x9c, 0xeb, 0x71, 0xc1, 0xe5, 0x03, 0xd1, 0xa5, 0x21,
0x22, 0x77, 0x38, 0xfe, 0x09, 0xb9, 0x34, 0x04, 0x02, 0xc1, 0x09, 0xab, 0x65, 0x9a, 0xd4, 0x39,
0x94, 0xed, 0x7f, 0xd2, 0x90, 0xfb, 0xe3, 0x3b, 0x62, 0x61, 0x48, 0x00, 0xc6, 0xd0, 0x38, 0xa9,
0xaf, 0xa1, 0x0d, 0x42, 0x90, 0x7f, 0x7a, 0x47, 0x06, 0x04, 0xaa, 0x8d, 0xeb, 0x09, 0xf8, 0xa6,
0x91, 0x9d, 0x61, 0x87, 0x60, 0xff, 0xfc, 0x8e, 0xf8, 0xcc, 0xda, 0x86, 0xb4, 0x09, 0xf8, 0x47,
0xdb, 0xed, 0x09, 0xde, 0x0c, 0x12, 0xb0, 0x8d, 0xe6, 0x6d, 0x30, 0x44, 0x7f, 0xd9, 0xe1, 0xea,
0xd5, 0x30, 0xf4, 0x5f, 0x04, 0x5a, 0xea, 0x53, 0x83, 0xd5, 0xed, 0x26, 0xc1, 0x5b, 0x27, 0x0c,
0xfb, 0x57, 0x81, 0xf5, 0x00, 0x14, 0x6c, 0xe8, 0x8e, 0xdb, 0xcf, 0xb8, 0xff, 0x26, 0xc1, 0x12,
0x40, 0x3b, 0x4d, 0xef, 0xcf, 0x91, 0xcd, 0x30, 0xec, 0x5b, 0xb2, 0xd3, 0x42, 0x1f, 0x03, 0x60,
0x92, 0xde, 0xf2, 0x9f, 0x1e, 0x84, 0x80, 0xff, 0x2e, 0xc0, 0x6d, 0xc4, 0xf4, 0xa1, 0xde, 0x47,
0x3b, 0x30, 0x67, 0xcf, 0xd9, 0xfc, 0x50, 0x07, 0xfe, 0x19, 0x83, 0x11, 0x0f, 0x20, 0x4f, 0x61,
0x3c, 0xc1, 0xc4, 0xce, 0xce, 0x6f, 0xf2, 0x3f, 0x8e, 0x42, 0x62, 0x06, 0xc1, 0xfa, 0x05, 0x7d,
0x53, 0x69, 0xc0, 0x18, 0xbd, 0xc7, 0x35, 0xc8, 0x4e, 0x12, 0x84, 0x47, 0x8b, 0xa3, 0xb7, 0xeb,
0x27, 0xdb, 0x6f, 0x95, 0x88, 0xc9, 0x1e, 0xea, 0xec, 0x4b, 0xd2, 0x74, 0xf6, 0xe5, 0xdf, 0x1e,
0xd8, 0xf5, 0xf1, 0xdf, 0x1d, 0x48, 0x2c, 0x6c, 0xde, 0x53, 0x33, 0x1d, 0x7a, 0x38, 0x6b, 0x74,
0xeb, 0x2a, 0x0f, 0x46, 0x60, 0x5f, 0x0f, 0x8e, 0x45, 0xe1, 0xf7, 0xe2, 0x44, 0xf6, 0xa6, 0x3e,
0x5f, 0x2d, 0x61, 0xbc, 0x0b, 0xe9, 0xc0, 0xeb, 0xf7, 0x19, 0x5b, 0xeb, 0x4f, 0x9c, 0x81, 0xdc,
0x56, 0x23, 0xa1, 0xbf, 0x02, 0xc3, 0x89, 0x15, 0xbf, 0x0c, 0xa3, 0xb7, 0xca, 0xe1, 0xf6, 0x4f,
0x52, 0xe8, 0x2f, 0x0f, 0x46, 0x7d, 0xbd, 0x13, 0x2f, 0xe3, 0xed, 0x85, 0x81, 0x13, 0x91, 0x09,
0x1d, 0x0e, 0x86, 0xf5, 0xf4, 0xdf, 0x7c, 0x45, 0x7e, 0x3f, 0x0c, 0x72, 0x21, 0xfd, 0x1d, 0x5b,
0xc9, 0x72, 0x6f, 0xb9, 0x89, 0x51, 0x45, 0xd5, 0x78, 0x8d, 0x3e, 0x4c, 0xcf, 0xbf, 0xfc, 0xea,
0xfe, 0x5d, 0xbf, 0xc0, 0xeb, 0xd7, 0x78, 0xbd, 0xf2, 0xea, 0xfe, 0xc8, 0x1b, 0x78, 0xbd, 0x85,
0xd7, 0xdb, 0x78, 0xdd, 0xff, 0xda, 0xfe, 0xc8, 0xb3, 0x78, 0x3d, 0x8f, 0xd7, 0x0f, 0xf1, 0x7a,
0x11, 0xaf, 0x97, 0x5f, 0x43, 0x7d, 0xbc, 0x5e, 0xc1, 0xfb, 0x37, 0xf0, 0xff, 0x5b, 0xf8, 0xff,
0x6d, 0xfc, 0x7f, 0xff, 0xef, 0xf7, 0xef, 0xfa, 0x57, 0x00, 0x00, 0x00, 0xff, 0xff, 0xf8, 0x6d,
0x34, 0xdd, 0xea, 0x2c, 0x00, 0x00,
}
r := bytes.NewReader(gzipped)
gzipr, err := compress_gzip.NewReader(r)
if err != nil {
panic(err)
}
ungzipped, err := io_ioutil.ReadAll(gzipr)
if err != nil {
panic(err)
}
if err := github_com_gogo_protobuf_proto.Unmarshal(ungzipped, d); err != nil {
panic(err)
}
return d
}
func (this *Castaway) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*Castaway)
if !ok {
that2, ok := that.(Castaway)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *Castaway")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *Castaway but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *Castaway but is not nil && this == nil")
}
if len(this.CastMapValueMessage) != len(that1.CastMapValueMessage) {
return fmt.Errorf("CastMapValueMessage this(%v) Not Equal that(%v)", len(this.CastMapValueMessage), len(that1.CastMapValueMessage))
}
for i := range this.CastMapValueMessage {
a := (Wilson)(this.CastMapValueMessage[i])
b := (Wilson)(that1.CastMapValueMessage[i])
if !(&a).Equal(&b) {
return fmt.Errorf("CastMapValueMessage this[%v](%v) Not Equal that[%v](%v)", i, this.CastMapValueMessage[i], i, that1.CastMapValueMessage[i])
}
}
if len(this.CastMapValueMessageNullable) != len(that1.CastMapValueMessageNullable) {
return fmt.Errorf("CastMapValueMessageNullable this(%v) Not Equal that(%v)", len(this.CastMapValueMessageNullable), len(that1.CastMapValueMessageNullable))
}
for i := range this.CastMapValueMessageNullable {
a := (*Wilson)(this.CastMapValueMessageNullable[i])
b := (*Wilson)(that1.CastMapValueMessageNullable[i])
if !a.Equal(b) {
return fmt.Errorf("CastMapValueMessageNullable this[%v](%v) Not Equal that[%v](%v)", i, this.CastMapValueMessageNullable[i], i, that1.CastMapValueMessageNullable[i])
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *Castaway) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Castaway)
if !ok {
that2, ok := that.(Castaway)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if len(this.CastMapValueMessage) != len(that1.CastMapValueMessage) {
return false
}
for i := range this.CastMapValueMessage {
a := (Wilson)(this.CastMapValueMessage[i])
b := (Wilson)(that1.CastMapValueMessage[i])
if !(&a).Equal(&b) {
return false
}
}
if len(this.CastMapValueMessageNullable) != len(that1.CastMapValueMessageNullable) {
return false
}
for i := range this.CastMapValueMessageNullable {
a := (*Wilson)(this.CastMapValueMessageNullable[i])
b := (*Wilson)(that1.CastMapValueMessageNullable[i])
if !a.Equal(b) {
return false
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (this *Wilson) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*Wilson)
if !ok {
that2, ok := that.(Wilson)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *Wilson")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *Wilson but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *Wilson but is not nil && this == nil")
}
if this.Int64 != nil && that1.Int64 != nil {
if *this.Int64 != *that1.Int64 {
return fmt.Errorf("Int64 this(%v) Not Equal that(%v)", *this.Int64, *that1.Int64)
}
} else if this.Int64 != nil {
return fmt.Errorf("this.Int64 == nil && that.Int64 != nil")
} else if that1.Int64 != nil {
return fmt.Errorf("Int64 this(%v) Not Equal that(%v)", this.Int64, that1.Int64)
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *Wilson) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Wilson)
if !ok {
that2, ok := that.(Wilson)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Int64 != nil && that1.Int64 != nil {
if *this.Int64 != *that1.Int64 {
return false
}
} else if this.Int64 != nil {
return false
} else if that1.Int64 != nil {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
type CastawayFace interface {
Proto() github_com_gogo_protobuf_proto.Message
GetCastMapValueMessage() map[int32]MyWilson
GetCastMapValueMessageNullable() map[int32]*MyWilson
}
func (this *Castaway) Proto() github_com_gogo_protobuf_proto.Message {
return this
}
func (this *Castaway) TestProto() github_com_gogo_protobuf_proto.Message {
return NewCastawayFromFace(this)
}
func (this *Castaway) GetCastMapValueMessage() map[int32]MyWilson {
return this.CastMapValueMessage
}
func (this *Castaway) GetCastMapValueMessageNullable() map[int32]*MyWilson {
return this.CastMapValueMessageNullable
}
func NewCastawayFromFace(that CastawayFace) *Castaway {
this := &Castaway{}
this.CastMapValueMessage = that.GetCastMapValueMessage()
this.CastMapValueMessageNullable = that.GetCastMapValueMessageNullable()
return this
}
type WilsonFace interface {
Proto() github_com_gogo_protobuf_proto.Message
GetInt64() *int64
}
func (this *Wilson) Proto() github_com_gogo_protobuf_proto.Message {
return this
}
func (this *Wilson) TestProto() github_com_gogo_protobuf_proto.Message {
return NewWilsonFromFace(this)
}
func (this *Wilson) GetInt64() *int64 {
return this.Int64
}
func NewWilsonFromFace(that WilsonFace) *Wilson {
this := &Wilson{}
this.Int64 = that.GetInt64()
return this
}
func (this *Castaway) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 6)
s = append(s, "&castvalue.Castaway{")
keysForCastMapValueMessage := make([]int32, 0, len(this.CastMapValueMessage))
for k := range this.CastMapValueMessage {
keysForCastMapValueMessage = append(keysForCastMapValueMessage, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessage)
mapStringForCastMapValueMessage := "map[int32]MyWilson{"
for _, k := range keysForCastMapValueMessage {
mapStringForCastMapValueMessage += fmt.Sprintf("%#v: %#v,", k, this.CastMapValueMessage[k])
}
mapStringForCastMapValueMessage += "}"
if this.CastMapValueMessage != nil {
s = append(s, "CastMapValueMessage: "+mapStringForCastMapValueMessage+",\n")
}
keysForCastMapValueMessageNullable := make([]int32, 0, len(this.CastMapValueMessageNullable))
for k := range this.CastMapValueMessageNullable {
keysForCastMapValueMessageNullable = append(keysForCastMapValueMessageNullable, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessageNullable)
mapStringForCastMapValueMessageNullable := "map[int32]*MyWilson{"
for _, k := range keysForCastMapValueMessageNullable {
mapStringForCastMapValueMessageNullable += fmt.Sprintf("%#v: %#v,", k, this.CastMapValueMessageNullable[k])
}
mapStringForCastMapValueMessageNullable += "}"
if this.CastMapValueMessageNullable != nil {
s = append(s, "CastMapValueMessageNullable: "+mapStringForCastMapValueMessageNullable+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func (this *Wilson) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 5)
s = append(s, "&castvalue.Wilson{")
if this.Int64 != nil {
s = append(s, "Int64: "+valueToGoStringCastvalue(this.Int64, "int64")+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func valueToGoStringCastvalue(v interface{}, typ string) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
return "nil"
}
pv := reflect.Indirect(rv).Interface()
return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv)
}
func extensionToGoStringCastvalue(e map[int32]github_com_gogo_protobuf_proto.Extension) string {
if e == nil {
return "nil"
}
s := "map[int32]proto.Extension{"
keys := make([]int, 0, len(e))
for k := range e {
keys = append(keys, int(k))
}
sort.Ints(keys)
ss := []string{}
for _, k := range keys {
ss = append(ss, strconv.Itoa(k)+": "+e[int32(k)].GoString())
}
s += strings.Join(ss, ",") + "}"
return s
}
func NewPopulatedCastaway(r randyCastvalue, easy bool) *Castaway {
this := &Castaway{}
if r.Intn(10) != 0 {
v1 := r.Intn(10)
this.CastMapValueMessage = make(map[int32]MyWilson)
for i := 0; i < v1; i++ {
this.CastMapValueMessage[int32(r.Int31())] = (MyWilson)(*NewPopulatedWilson(r, easy))
}
}
if r.Intn(10) != 0 {
v2 := r.Intn(10)
this.CastMapValueMessageNullable = make(map[int32]*MyWilson)
for i := 0; i < v2; i++ {
this.CastMapValueMessageNullable[int32(r.Int31())] = (*MyWilson)(NewPopulatedWilson(r, easy))
}
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedCastvalue(r, 3)
}
return this
}
func NewPopulatedWilson(r randyCastvalue, easy bool) *Wilson {
this := &Wilson{}
if r.Intn(10) != 0 {
v3 := int64(r.Int63())
if r.Intn(2) == 0 {
v3 *= -1
}
this.Int64 = &v3
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedCastvalue(r, 2)
}
return this
}
type randyCastvalue interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneCastvalue(r randyCastvalue) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringCastvalue(r randyCastvalue) string {
v4 := r.Intn(100)
tmps := make([]rune, v4)
for i := 0; i < v4; i++ {
tmps[i] = randUTF8RuneCastvalue(r)
}
return string(tmps)
}
func randUnrecognizedCastvalue(r randyCastvalue, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldCastvalue(data, r, fieldNumber, wire)
}
return data
}
func randFieldCastvalue(data []byte, r randyCastvalue, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateCastvalue(data, uint64(key))
v5 := r.Int63()
if r.Intn(2) == 0 {
v5 *= -1
}
data = encodeVarintPopulateCastvalue(data, uint64(v5))
case 1:
data = encodeVarintPopulateCastvalue(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateCastvalue(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateCastvalue(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateCastvalue(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateCastvalue(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
func (m *Castaway) Size() (n int) {
var l int
_ = l
if len(m.CastMapValueMessage) > 0 {
for k, v := range m.CastMapValueMessage {
_ = k
_ = v
l = ((*Wilson)(&v)).Size()
mapEntrySize := 1 + sovCastvalue(uint64(k)) + 1 + l + sovCastvalue(uint64(l))
n += mapEntrySize + 1 + sovCastvalue(uint64(mapEntrySize))
}
}
if len(m.CastMapValueMessageNullable) > 0 {
for k, v := range m.CastMapValueMessageNullable {
_ = k
_ = v
l = 0
if v != nil {
l = ((*Wilson)(v)).Size()
}
mapEntrySize := 1 + sovCastvalue(uint64(k)) + 1 + l + sovCastvalue(uint64(l))
n += mapEntrySize + 1 + sovCastvalue(uint64(mapEntrySize))
}
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func (m *Wilson) Size() (n int) {
var l int
_ = l
if m.Int64 != nil {
n += 1 + sovCastvalue(uint64(*m.Int64))
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func sovCastvalue(x uint64) (n int) {
for {
n++
x >>= 7
if x == 0 {
break
}
}
return n
}
func sozCastvalue(x uint64) (n int) {
return sovCastvalue(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (this *Castaway) String() string {
if this == nil {
return "nil"
}
keysForCastMapValueMessage := make([]int32, 0, len(this.CastMapValueMessage))
for k := range this.CastMapValueMessage {
keysForCastMapValueMessage = append(keysForCastMapValueMessage, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessage)
mapStringForCastMapValueMessage := "map[int32]MyWilson{"
for _, k := range keysForCastMapValueMessage {
mapStringForCastMapValueMessage += fmt.Sprintf("%v: %v,", k, this.CastMapValueMessage[k])
}
mapStringForCastMapValueMessage += "}"
keysForCastMapValueMessageNullable := make([]int32, 0, len(this.CastMapValueMessageNullable))
for k := range this.CastMapValueMessageNullable {
keysForCastMapValueMessageNullable = append(keysForCastMapValueMessageNullable, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessageNullable)
mapStringForCastMapValueMessageNullable := "map[int32]*MyWilson{"
for _, k := range keysForCastMapValueMessageNullable {
mapStringForCastMapValueMessageNullable += fmt.Sprintf("%v: %v,", k, this.CastMapValueMessageNullable[k])
}
mapStringForCastMapValueMessageNullable += "}"
s := strings.Join([]string{`&Castaway{`,
`CastMapValueMessage:` + mapStringForCastMapValueMessage + `,`,
`CastMapValueMessageNullable:` + mapStringForCastMapValueMessageNullable + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func (this *Wilson) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&Wilson{`,
`Int64:` + valueToStringCastvalue(this.Int64) + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func valueToStringCastvalue(v interface{}) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
return "nil"
}
pv := reflect.Indirect(rv).Interface()
return fmt.Sprintf("*%v", pv)
}
var fileDescriptorCastvalue = []byte{
// 322 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0x4f, 0x4e, 0x2c, 0x2e,
0x29, 0x4b, 0xcc, 0x29, 0x4d, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x84, 0x0b, 0x48,
0xe9, 0xa6, 0x67, 0x96, 0x64, 0x94, 0x26, 0xe9, 0x25, 0xe7, 0xe7, 0xea, 0xa7, 0xe7, 0xa7, 0xe7,
0xeb, 0x83, 0x55, 0x24, 0x95, 0xa6, 0x81, 0x79, 0x60, 0x0e, 0x98, 0x05, 0xd1, 0xa9, 0x74, 0x90,
0x99, 0x8b, 0xc3, 0x19, 0xa8, 0x39, 0xb1, 0x3c, 0xb1, 0x52, 0xa8, 0x80, 0x4b, 0x18, 0xc4, 0xf6,
0x4d, 0x2c, 0x08, 0x03, 0x99, 0xe5, 0x9b, 0x5a, 0x5c, 0x9c, 0x98, 0x9e, 0x2a, 0xc1, 0xa8, 0xc0,
0xac, 0xc1, 0x6d, 0xa4, 0xa3, 0x87, 0xb0, 0x15, 0xa6, 0x43, 0x0f, 0x8b, 0x72, 0xd7, 0xbc, 0x92,
0xa2, 0x4a, 0x27, 0x81, 0x13, 0xf7, 0xe4, 0x19, 0xba, 0xee, 0xcb, 0x73, 0xf8, 0x56, 0x86, 0x67,
0xe6, 0x14, 0xe7, 0xe7, 0x05, 0x09, 0x27, 0x63, 0xaa, 0x15, 0x6a, 0x61, 0xe4, 0x92, 0xc6, 0x62,
0x86, 0x5f, 0x69, 0x4e, 0x4e, 0x62, 0x52, 0x4e, 0xaa, 0x04, 0x13, 0xd8, 0x6a, 0x13, 0x22, 0xad,
0x86, 0x69, 0x83, 0x38, 0x81, 0x07, 0xc5, 0x7a, 0xe9, 0x64, 0xdc, 0xea, 0xa5, 0x22, 0xb9, 0x24,
0x70, 0xf9, 0x44, 0x48, 0x80, 0x8b, 0x39, 0x3b, 0xb5, 0x12, 0x18, 0x08, 0x8c, 0x1a, 0xac, 0x41,
0x20, 0xa6, 0x90, 0x3a, 0x17, 0x2b, 0xd8, 0x2d, 0x40, 0xd7, 0x31, 0x02, 0x5d, 0x27, 0x88, 0xe4,
0x3a, 0xa8, 0x65, 0x10, 0x79, 0x2b, 0x26, 0x0b, 0x46, 0xa9, 0x44, 0x2e, 0x05, 0x42, 0x2e, 0xa5,
0xd0, 0x0a, 0x25, 0x39, 0x2e, 0x36, 0x88, 0xa0, 0x90, 0x08, 0x17, 0xab, 0x67, 0x5e, 0x89, 0x99,
0x09, 0xd8, 0x28, 0xe6, 0x20, 0xd6, 0x4c, 0x10, 0xc7, 0xc9, 0xe7, 0xc4, 0x43, 0x39, 0x86, 0x0b,
0x40, 0x7c, 0x03, 0x88, 0x1f, 0x3c, 0x94, 0x63, 0x7c, 0x01, 0xc4, 0x1f, 0x80, 0xf8, 0x07, 0x10,
0x37, 0x3c, 0x92, 0x63, 0x5c, 0x01, 0xc4, 0x1b, 0x80, 0x78, 0x07, 0x10, 0x1f, 0x00, 0xe2, 0x13,
0x8f, 0x80, 0xea, 0x81, 0xf8, 0x01, 0x90, 0xfd, 0x02, 0x48, 0x7f, 0x00, 0xd2, 0x3f, 0x80, 0x74,
0xc3, 0x63, 0x39, 0x06, 0x40, 0x00, 0x00, 0x00, 0xff, 0xff, 0xad, 0x1f, 0x01, 0x78, 0x7d, 0x02,
0x00, 0x00,
}
File diff suppressed because it is too large Load Diff
+31
View File
@@ -0,0 +1,31 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package castvalue
type MyWilson Wilson
@@ -0,0 +1,978 @@
// Code generated by protoc-gen-gogo.
// source: combos/marshaler/castvalue.proto
// DO NOT EDIT!
/*
Package castvalue is a generated protocol buffer package.
It is generated from these files:
combos/marshaler/castvalue.proto
It has these top-level messages:
Castaway
Wilson
*/
package castvalue
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import github_com_gogo_protobuf_protoc_gen_gogo_descriptor "github.com/gogo/protobuf/protoc-gen-gogo/descriptor"
import github_com_gogo_protobuf_proto "github.com/gogo/protobuf/proto"
import compress_gzip "compress/gzip"
import bytes "bytes"
import io_ioutil "io/ioutil"
import strings "strings"
import sort "sort"
import strconv "strconv"
import reflect "reflect"
import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys"
import errors "errors"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type Castaway struct {
CastMapValueMessage map[int32]MyWilson `protobuf:"bytes,1,rep,name=CastMapValueMessage,json=castMapValueMessage,castvalue=MyWilson,castvaluetype=castvalue.Wilson" json:"CastMapValueMessage" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
CastMapValueMessageNullable map[int32]*MyWilson `protobuf:"bytes,2,rep,name=CastMapValueMessageNullable,json=castMapValueMessageNullable,castvalue=MyWilson,castvaluetype=castvalue.Wilson" json:"CastMapValueMessageNullable,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Castaway) Reset() { *m = Castaway{} }
func (*Castaway) ProtoMessage() {}
func (*Castaway) Descriptor() ([]byte, []int) { return fileDescriptorCastvalue, []int{0} }
type Wilson struct {
Int64 *int64 `protobuf:"varint,1,opt,name=Int64,json=int64" json:"Int64,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Wilson) Reset() { *m = Wilson{} }
func (*Wilson) ProtoMessage() {}
func (*Wilson) Descriptor() ([]byte, []int) { return fileDescriptorCastvalue, []int{1} }
func init() {
proto.RegisterType((*Castaway)(nil), "castvalue.Castaway")
proto.RegisterType((*Wilson)(nil), "castvalue.Wilson")
}
func (this *Castaway) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return CastvalueDescription()
}
func (this *Wilson) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return CastvalueDescription()
}
func CastvalueDescription() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
d := &github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet{}
var gzipped = []byte{
// 3470 bytes of a gzipped FileDescriptorSet
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xcc, 0x5a, 0x6b, 0x6c, 0x23, 0x57,
0xf5, 0x5f, 0xc7, 0x76, 0x62, 0x1f, 0x3b, 0x8e, 0x33, 0x49, 0x77, 0xbd, 0xd9, 0x76, 0xb3, 0xeb,
0x3e, 0x76, 0xbb, 0x6d, 0x93, 0xfe, 0xf7, 0xdf, 0xc7, 0xd6, 0xfd, 0xff, 0x5b, 0xe5, 0xe1, 0x4d,
0xbd, 0xca, 0x8b, 0x49, 0xd2, 0xee, 0x96, 0x0f, 0xa3, 0xc9, 0xf8, 0xc6, 0xf1, 0xee, 0x78, 0xc6,
0x78, 0xc6, 0xbb, 0x9b, 0x7e, 0x2a, 0x6a, 0x01, 0x15, 0x44, 0x79, 0x4a, 0xf4, 0x0d, 0xad, 0x04,
0x2d, 0xe5, 0xd5, 0xf2, 0x12, 0xe2, 0x53, 0x11, 0x2a, 0xf4, 0x13, 0x2a, 0x7c, 0xe2, 0x03, 0x02,
0x5a, 0x2a, 0x51, 0xa0, 0x40, 0x91, 0x56, 0xa2, 0x52, 0xbf, 0x70, 0xee, 0x6b, 0x3c, 0x63, 0x3b,
0x19, 0xa7, 0xa8, 0x94, 0x48, 0xa3, 0xcc, 0x9c, 0x7b, 0x7e, 0xbf, 0xb9, 0xf7, 0xdc, 0x73, 0xcf,
0x39, 0xf7, 0x8e, 0xe1, 0xa7, 0xff, 0x03, 0x87, 0x2a, 0xb6, 0x5d, 0x31, 0xc9, 0x64, 0xbd, 0x61,
0xbb, 0xf6, 0x7a, 0x73, 0x63, 0xb2, 0x4c, 0x1c, 0xa3, 0x51, 0xad, 0xbb, 0x76, 0x63, 0x82, 0xc9,
0x94, 0x21, 0xae, 0x31, 0x21, 0x35, 0xf2, 0x0b, 0x30, 0x7c, 0xb2, 0x6a, 0x92, 0x59, 0x4f, 0x71,
0x85, 0xb8, 0xca, 0x09, 0x88, 0x6d, 0xa0, 0x30, 0x17, 0x39, 0x14, 0x3d, 0x9a, 0x3a, 0x7e, 0xd5,
0x44, 0x1b, 0x68, 0x22, 0x88, 0x58, 0xa6, 0x62, 0x95, 0x21, 0xf2, 0x6f, 0xc4, 0x60, 0xa4, 0x4b,
0xab, 0xa2, 0x40, 0xcc, 0xd2, 0x6b, 0x94, 0x31, 0x72, 0x34, 0xa9, 0xb2, 0x7b, 0x25, 0x07, 0x03,
0x75, 0xdd, 0x38, 0xa7, 0x57, 0x48, 0xae, 0x8f, 0x89, 0xe5, 0xa3, 0x72, 0x10, 0xa0, 0x4c, 0xea,
0xc4, 0x2a, 0x13, 0xcb, 0xd8, 0xca, 0x45, 0xb1, 0x17, 0x49, 0xd5, 0x27, 0x51, 0xae, 0x83, 0xe1,
0x7a, 0x73, 0xdd, 0xac, 0x1a, 0x9a, 0x4f, 0x0d, 0x50, 0x2d, 0xae, 0x66, 0x79, 0xc3, 0x6c, 0x4b,
0xf9, 0x08, 0x0c, 0x5d, 0x20, 0xfa, 0x39, 0xbf, 0x6a, 0x8a, 0xa9, 0x66, 0xa8, 0xd8, 0xa7, 0x38,
0x03, 0xe9, 0x1a, 0x71, 0x1c, 0xec, 0x80, 0xe6, 0x6e, 0xd5, 0x49, 0x2e, 0xc6, 0x46, 0x7f, 0xa8,
0x63, 0xf4, 0xed, 0x23, 0x4f, 0x09, 0xd4, 0x2a, 0x82, 0x94, 0x29, 0x48, 0x12, 0xab, 0x59, 0xe3,
0x0c, 0xf1, 0x6d, 0xec, 0x57, 0x44, 0x8d, 0x76, 0x96, 0x04, 0x85, 0x09, 0x8a, 0x01, 0x87, 0x34,
0xce, 0x57, 0x0d, 0x92, 0xeb, 0x67, 0x04, 0x47, 0x3a, 0x08, 0x56, 0x78, 0x7b, 0x3b, 0x87, 0xc4,
0xe1, 0x50, 0x92, 0xe4, 0xa2, 0x4b, 0x2c, 0xa7, 0x6a, 0x5b, 0xb9, 0x01, 0x46, 0x72, 0x75, 0x97,
0x59, 0x24, 0x66, 0xb9, 0x9d, 0xa2, 0x85, 0x53, 0x6e, 0x81, 0x01, 0xbb, 0xee, 0xe2, 0x9d, 0x93,
0x4b, 0xe0, 0xfc, 0xa4, 0x8e, 0x5f, 0xde, 0xd5, 0x11, 0x96, 0xb8, 0x8e, 0x2a, 0x95, 0x95, 0x12,
0x64, 0x1d, 0xbb, 0xd9, 0x30, 0x88, 0x66, 0xd8, 0x65, 0xa2, 0x55, 0xad, 0x0d, 0x3b, 0x97, 0x64,
0x04, 0xe3, 0x9d, 0x03, 0x61, 0x8a, 0x33, 0xa8, 0x57, 0x42, 0x35, 0x35, 0xe3, 0x04, 0x9e, 0x95,
0xbd, 0xd0, 0xef, 0x6c, 0x59, 0xae, 0x7e, 0x31, 0x97, 0x66, 0x1e, 0x22, 0x9e, 0xf2, 0xff, 0x8c,
0xc3, 0x50, 0x2f, 0x2e, 0x76, 0x3b, 0xc4, 0x37, 0xe8, 0x28, 0xd1, 0xc1, 0x76, 0x61, 0x03, 0x8e,
0x09, 0x1a, 0xb1, 0xff, 0x3d, 0x1a, 0x71, 0x0a, 0x52, 0x16, 0x71, 0x5c, 0x52, 0xe6, 0x1e, 0x11,
0xed, 0xd1, 0xa7, 0x80, 0x83, 0x3a, 0x5d, 0x2a, 0xf6, 0x9e, 0x5c, 0xea, 0x34, 0x0c, 0x79, 0x5d,
0xd2, 0x1a, 0xba, 0x55, 0x91, 0xbe, 0x39, 0x19, 0xd6, 0x93, 0x89, 0xa2, 0xc4, 0xa9, 0x14, 0xa6,
0x66, 0x48, 0xe0, 0x59, 0x99, 0x05, 0xb0, 0x2d, 0x62, 0x6f, 0xe0, 0xf2, 0x32, 0x4c, 0xf4, 0x93,
0xee, 0x56, 0x5a, 0xa2, 0x2a, 0x1d, 0x56, 0xb2, 0xb9, 0xd4, 0x30, 0x95, 0xdb, 0x5a, 0xae, 0x36,
0xb0, 0x8d, 0xa7, 0x2c, 0xf0, 0x45, 0xd6, 0xe1, 0x6d, 0x6b, 0x90, 0x69, 0x10, 0xea, 0xf7, 0x68,
0x62, 0x3e, 0xb2, 0x24, 0xeb, 0xc4, 0x44, 0xe8, 0xc8, 0x54, 0x01, 0xe3, 0x03, 0x1b, 0x6c, 0xf8,
0x1f, 0x95, 0x2b, 0xc1, 0x13, 0x68, 0xcc, 0xad, 0x80, 0x45, 0xa1, 0xb4, 0x14, 0x2e, 0xa2, 0x6c,
0xec, 0x04, 0x64, 0x82, 0xe6, 0x51, 0x46, 0x21, 0xee, 0xb8, 0x7a, 0xc3, 0x65, 0x5e, 0x18, 0x57,
0xf9, 0x83, 0x92, 0x85, 0x28, 0x06, 0x19, 0x16, 0xe5, 0xe2, 0x2a, 0xbd, 0x1d, 0xbb, 0x15, 0x06,
0x03, 0xaf, 0xef, 0x15, 0x98, 0x7f, 0xa4, 0x1f, 0x46, 0xbb, 0xf9, 0x5c, 0x57, 0xf7, 0xc7, 0xe5,
0x83, 0x1e, 0xb0, 0x4e, 0x1a, 0xe8, 0x77, 0x94, 0x41, 0x3c, 0xa1, 0x47, 0xc5, 0x4d, 0x7d, 0x9d,
0x98, 0xe8, 0x4d, 0x91, 0xa3, 0x99, 0xe3, 0xd7, 0xf5, 0xe4, 0xd5, 0x13, 0xf3, 0x14, 0xa2, 0x72,
0xa4, 0x72, 0x07, 0xc4, 0x44, 0x88, 0xa3, 0x0c, 0xc7, 0x7a, 0x63, 0xa0, 0xbe, 0xa8, 0x32, 0x9c,
0x72, 0x00, 0x92, 0xf4, 0x3f, 0xb7, 0x6d, 0x3f, 0xeb, 0x73, 0x82, 0x0a, 0xa8, 0x5d, 0x95, 0x31,
0x48, 0x30, 0x37, 0x2b, 0x13, 0x99, 0x1a, 0xbc, 0x67, 0x3a, 0x31, 0x65, 0xb2, 0xa1, 0x37, 0x4d,
0x57, 0x3b, 0xaf, 0x9b, 0x4d, 0xc2, 0x1c, 0x06, 0x27, 0x46, 0x08, 0xef, 0xa6, 0x32, 0x65, 0x1c,
0x52, 0xdc, 0x2b, 0xab, 0x88, 0xb9, 0xc8, 0xa2, 0x4f, 0x5c, 0xe5, 0x8e, 0x5a, 0xa2, 0x12, 0xfa,
0xfa, 0xb3, 0x0e, 0xae, 0x05, 0x31, 0xb5, 0xec, 0x15, 0x54, 0xc0, 0x5e, 0x7f, 0x6b, 0x7b, 0xe0,
0xbb, 0xa2, 0xfb, 0xf0, 0xda, 0x7d, 0x31, 0xff, 0xc3, 0x3e, 0x88, 0xb1, 0xf5, 0x36, 0x04, 0xa9,
0xd5, 0x33, 0xcb, 0x45, 0x6d, 0x76, 0x69, 0x6d, 0x7a, 0xbe, 0x98, 0x8d, 0x28, 0x19, 0x00, 0x26,
0x38, 0x39, 0xbf, 0x34, 0xb5, 0x9a, 0xed, 0xf3, 0x9e, 0x4b, 0x8b, 0xab, 0xb7, 0xdc, 0x94, 0x8d,
0x7a, 0x80, 0x35, 0x2e, 0x88, 0xf9, 0x15, 0xfe, 0xf7, 0x78, 0x36, 0x8e, 0x9e, 0x90, 0xe6, 0x04,
0xa5, 0xd3, 0xc5, 0x59, 0xd4, 0xe8, 0x0f, 0x4a, 0x50, 0x67, 0x40, 0x19, 0x84, 0x24, 0x93, 0x4c,
0x2f, 0x2d, 0xcd, 0x67, 0x13, 0x1e, 0xe7, 0xca, 0xaa, 0x5a, 0x5a, 0x9c, 0xcb, 0x26, 0x3d, 0xce,
0x39, 0x75, 0x69, 0x6d, 0x39, 0x0b, 0x1e, 0xc3, 0x42, 0x71, 0x65, 0x65, 0x6a, 0xae, 0x98, 0x4d,
0x79, 0x1a, 0xd3, 0x67, 0x56, 0x8b, 0x2b, 0xd9, 0x74, 0xa0, 0x5b, 0xf8, 0x8a, 0x41, 0xef, 0x15,
0xc5, 0xc5, 0xb5, 0x85, 0x6c, 0x46, 0x19, 0x86, 0x41, 0xfe, 0x0a, 0xd9, 0x89, 0xa1, 0x36, 0x11,
0xf6, 0x34, 0xdb, 0xea, 0x08, 0x67, 0x19, 0x0e, 0x08, 0x50, 0x43, 0xc9, 0xcf, 0x40, 0x9c, 0x79,
0x17, 0x7a, 0x71, 0x66, 0x7e, 0x6a, 0xba, 0x38, 0xaf, 0x2d, 0x2d, 0xaf, 0x96, 0x96, 0x16, 0xa7,
0xe6, 0xd1, 0x76, 0x9e, 0x4c, 0x2d, 0x7e, 0x68, 0xad, 0xa4, 0x16, 0x67, 0xd1, 0x7e, 0x3e, 0xd9,
0x72, 0x71, 0x6a, 0x15, 0x65, 0xd1, 0xfc, 0x31, 0x18, 0xed, 0x16, 0x67, 0xba, 0xad, 0x8c, 0xfc,
0x33, 0x11, 0x18, 0xe9, 0x12, 0x32, 0xbb, 0xae, 0xa2, 0x3b, 0x21, 0xce, 0x3d, 0x8d, 0x27, 0x91,
0x6b, 0xbb, 0xc6, 0x5e, 0xe6, 0x77, 0x1d, 0x89, 0x84, 0xe1, 0xfc, 0x89, 0x34, 0xba, 0x4d, 0x22,
0xa5, 0x14, 0x1d, 0xee, 0xf4, 0x40, 0x04, 0x72, 0xdb, 0x71, 0x87, 0xac, 0xf7, 0xbe, 0xc0, 0x7a,
0xbf, 0xbd, 0xbd, 0x03, 0x87, 0xb7, 0x1f, 0x43, 0x47, 0x2f, 0x9e, 0x8d, 0xc0, 0xde, 0xee, 0xf5,
0x46, 0xd7, 0x3e, 0xdc, 0x01, 0xfd, 0x35, 0xe2, 0x6e, 0xda, 0x32, 0xe7, 0x5e, 0xd3, 0x25, 0x92,
0xd3, 0xe6, 0x76, 0x5b, 0x09, 0x94, 0x3f, 0x15, 0x44, 0xb7, 0x2b, 0x1a, 0x78, 0x6f, 0x3a, 0x7a,
0xfa, 0x50, 0x1f, 0x5c, 0xd6, 0x95, 0xbc, 0x6b, 0x47, 0xaf, 0x00, 0xa8, 0x5a, 0xf5, 0xa6, 0xcb,
0xf3, 0x2a, 0x0f, 0x33, 0x49, 0x26, 0x61, 0x4b, 0x98, 0x86, 0x90, 0xa6, 0xeb, 0xb5, 0x47, 0x59,
0x3b, 0x70, 0x11, 0x53, 0x38, 0xd1, 0xea, 0x68, 0x8c, 0x75, 0xf4, 0xe0, 0x36, 0x23, 0xed, 0x48,
0x59, 0x37, 0x42, 0xd6, 0x30, 0xab, 0xc4, 0x72, 0x35, 0xc7, 0x6d, 0x10, 0xbd, 0x56, 0xb5, 0x2a,
0x2c, 0x8e, 0x26, 0x0a, 0xf1, 0x0d, 0xdd, 0x74, 0x88, 0x3a, 0xc4, 0x9b, 0x57, 0x64, 0x2b, 0x45,
0xb0, 0x64, 0xd1, 0xf0, 0x21, 0xfa, 0x03, 0x08, 0xde, 0xec, 0x21, 0xf2, 0xbf, 0x1a, 0x80, 0x94,
0xaf, 0x3a, 0x53, 0x0e, 0x43, 0xfa, 0xac, 0x7e, 0x5e, 0xd7, 0x64, 0xc5, 0xcd, 0x2d, 0x91, 0xa2,
0xb2, 0x65, 0x51, 0x75, 0xdf, 0x08, 0xa3, 0x4c, 0x05, 0xc7, 0x88, 0x2f, 0x32, 0x4c, 0xdd, 0x71,
0x98, 0xd1, 0x12, 0x4c, 0x55, 0xa1, 0x6d, 0x4b, 0xb4, 0x69, 0x46, 0xb6, 0x28, 0x37, 0xc3, 0x08,
0x43, 0xd4, 0x30, 0xf0, 0x56, 0xeb, 0x26, 0xd1, 0xe8, 0x1e, 0xc0, 0x61, 0xf1, 0xd4, 0xeb, 0xd9,
0x30, 0xd5, 0x58, 0x10, 0x0a, 0xb4, 0x47, 0x8e, 0x32, 0x07, 0x57, 0x30, 0x58, 0x85, 0x58, 0xa4,
0xa1, 0xbb, 0x44, 0x23, 0x1f, 0x69, 0xa2, 0xae, 0xa6, 0x5b, 0x65, 0x6d, 0x53, 0x77, 0x36, 0x73,
0xa3, 0x7e, 0x82, 0xfd, 0x54, 0x77, 0x4e, 0xa8, 0x16, 0x99, 0xe6, 0x94, 0x55, 0xbe, 0x0b, 0xf5,
0x94, 0x02, 0xec, 0x65, 0x44, 0x68, 0x14, 0x1c, 0xb3, 0x66, 0x6c, 0x12, 0xe3, 0x9c, 0xd6, 0x74,
0x37, 0x4e, 0xe4, 0x0e, 0xf8, 0x19, 0x58, 0x27, 0x57, 0x98, 0xce, 0x0c, 0x55, 0x59, 0x43, 0x0d,
0x65, 0x05, 0xd2, 0x74, 0x3e, 0x6a, 0xd5, 0xfb, 0xb0, 0xdb, 0x76, 0x83, 0xe5, 0x88, 0x4c, 0x97,
0xc5, 0xed, 0x33, 0xe2, 0xc4, 0x92, 0x00, 0x2c, 0x60, 0x7d, 0x5a, 0x88, 0xaf, 0x2c, 0x17, 0x8b,
0xb3, 0x6a, 0x4a, 0xb2, 0x9c, 0xb4, 0x1b, 0xd4, 0xa7, 0x2a, 0xb6, 0x67, 0xe3, 0x14, 0xf7, 0xa9,
0x8a, 0x2d, 0x2d, 0x8c, 0xf6, 0x32, 0x0c, 0x3e, 0x6c, 0xdc, 0xbb, 0x88, 0x62, 0xdd, 0xc9, 0x65,
0x03, 0xf6, 0x32, 0x8c, 0x39, 0xae, 0x20, 0xdc, 0xdc, 0xc1, 0x25, 0x71, 0x59, 0xcb, 0x5e, 0x7e,
0xe0, 0x70, 0xc7, 0x28, 0xdb, 0xa1, 0xf8, 0xc6, 0xfa, 0x56, 0x27, 0x50, 0x09, 0xbc, 0xb1, 0xbe,
0xd5, 0x0e, 0xbb, 0x9a, 0x6d, 0xc0, 0x1a, 0xc4, 0x40, 0x93, 0x97, 0x73, 0xfb, 0xfc, 0xda, 0xbe,
0x06, 0x65, 0x12, 0x1d, 0xd9, 0xd0, 0x88, 0xa5, 0xaf, 0xe3, 0xdc, 0xeb, 0x0d, 0xbc, 0x71, 0x72,
0xe3, 0x7e, 0xe5, 0x8c, 0x61, 0x14, 0x59, 0xeb, 0x14, 0x6b, 0x54, 0x8e, 0xc1, 0xb0, 0xbd, 0x7e,
0xd6, 0xe0, 0xce, 0xa5, 0x21, 0xcf, 0x46, 0xf5, 0x62, 0xee, 0x2a, 0x66, 0xa6, 0x21, 0xda, 0xc0,
0x5c, 0x6b, 0x99, 0x89, 0x95, 0x6b, 0x91, 0xdc, 0xd9, 0xd4, 0x1b, 0x75, 0x96, 0xa4, 0x1d, 0x34,
0x2a, 0xc9, 0x5d, 0xcd, 0x55, 0xb9, 0x7c, 0x51, 0x8a, 0x95, 0x22, 0x8c, 0xd3, 0xc1, 0x5b, 0xba,
0x65, 0x6b, 0x4d, 0x87, 0x68, 0xad, 0x2e, 0x7a, 0x73, 0x71, 0x0d, 0xed, 0x96, 0x7a, 0xb9, 0x54,
0x5b, 0x73, 0x30, 0x98, 0x49, 0x25, 0x39, 0x3d, 0xa7, 0x61, 0xb4, 0x69, 0x55, 0x2d, 0x74, 0x71,
0x6c, 0xa1, 0x60, 0xbe, 0x60, 0x73, 0x7f, 0x1c, 0xd8, 0xa6, 0xe8, 0x5e, 0xf3, 0x6b, 0x73, 0x27,
0x51, 0x47, 0x9a, 0x9d, 0xc2, 0x7c, 0x01, 0xd2, 0x7e, 0xdf, 0x51, 0x92, 0xc0, 0xbd, 0x07, 0xb3,
0x1b, 0x66, 0xd4, 0x99, 0xa5, 0x59, 0x9a, 0x0b, 0xef, 0x2d, 0x62, 0x62, 0xc3, 0x9c, 0x3c, 0x5f,
0x5a, 0x2d, 0x6a, 0xea, 0xda, 0xe2, 0x6a, 0x69, 0xa1, 0x98, 0x8d, 0x1e, 0x4b, 0x26, 0xde, 0x1c,
0xc8, 0xde, 0x8f, 0x7f, 0x7d, 0xf9, 0x97, 0xfb, 0x20, 0x13, 0xac, 0x83, 0x95, 0xff, 0x83, 0x7d,
0x72, 0xd3, 0xea, 0x10, 0x57, 0xbb, 0x50, 0x6d, 0x30, 0x77, 0xae, 0xe9, 0xbc, 0x92, 0xf4, 0x66,
0x62, 0x54, 0x68, 0xe1, 0xf6, 0xfe, 0x1e, 0xd4, 0x39, 0xc9, 0x54, 0x94, 0x79, 0x18, 0x47, 0x93,
0x61, 0xad, 0x69, 0x95, 0xf5, 0x46, 0x59, 0x6b, 0x1d, 0x17, 0x68, 0xba, 0x81, 0x7e, 0xe0, 0xd8,
0x3c, 0x93, 0x78, 0x2c, 0x97, 0x5b, 0xf6, 0x8a, 0x50, 0x6e, 0x85, 0xd8, 0x29, 0xa1, 0xda, 0xe6,
0x35, 0xd1, 0xed, 0xbc, 0x06, 0x6b, 0xaf, 0x9a, 0x5e, 0x47, 0xb7, 0x71, 0x1b, 0x5b, 0xac, 0x7a,
0x4b, 0xa8, 0x09, 0x14, 0x14, 0xe9, 0xf3, 0xfb, 0x37, 0x07, 0x7e, 0x3b, 0xfe, 0x26, 0x0a, 0x69,
0x7f, 0x05, 0x47, 0x0b, 0x62, 0x83, 0x85, 0xf9, 0x08, 0x8b, 0x02, 0x57, 0xee, 0x58, 0xef, 0x4d,
0xcc, 0xd0, 0xf8, 0x5f, 0xe8, 0xe7, 0x75, 0x95, 0xca, 0x91, 0x34, 0xf7, 0x52, 0x5f, 0x23, 0xbc,
0x5a, 0x4f, 0xa8, 0xe2, 0x09, 0x83, 0x5d, 0xff, 0x59, 0x87, 0x71, 0xf7, 0x33, 0xee, 0xab, 0x76,
0xe6, 0x3e, 0xb5, 0xc2, 0xc8, 0x93, 0xa7, 0x56, 0xb4, 0xc5, 0x25, 0x75, 0x61, 0x6a, 0x5e, 0x15,
0x70, 0x65, 0x3f, 0xc4, 0x4c, 0xfd, 0xbe, 0xad, 0x60, 0xa6, 0x60, 0xa2, 0x5e, 0x0d, 0x8f, 0x0c,
0xf4, 0xc8, 0x23, 0x18, 0x9f, 0x99, 0xe8, 0x7d, 0x74, 0xfd, 0x49, 0x88, 0x33, 0x7b, 0x29, 0x00,
0xc2, 0x62, 0xd9, 0x3d, 0x4a, 0x02, 0x62, 0x33, 0x4b, 0x2a, 0x75, 0x7f, 0xf4, 0x77, 0x2e, 0xd5,
0x96, 0x4b, 0xc5, 0x19, 0x5c, 0x01, 0xf9, 0x9b, 0xa1, 0x9f, 0x1b, 0x81, 0x2e, 0x0d, 0xcf, 0x0c,
0x08, 0xe2, 0x8f, 0x82, 0x23, 0x22, 0x5b, 0xd7, 0x16, 0xa6, 0x8b, 0x6a, 0xb6, 0xcf, 0x3f, 0xbd,
0x3f, 0x8e, 0x40, 0xca, 0x57, 0x50, 0xd1, 0x54, 0xae, 0x9b, 0xa6, 0x7d, 0x41, 0xd3, 0xcd, 0x2a,
0x46, 0x28, 0x3e, 0x3f, 0xc0, 0x44, 0x53, 0x54, 0xd2, 0xab, 0xfd, 0xfe, 0x23, 0xbe, 0xf9, 0x54,
0x04, 0xb2, 0xed, 0xc5, 0x58, 0x5b, 0x07, 0x23, 0x1f, 0x68, 0x07, 0x9f, 0x88, 0x40, 0x26, 0x58,
0x81, 0xb5, 0x75, 0xef, 0xf0, 0x07, 0xda, 0xbd, 0xc7, 0x23, 0x30, 0x18, 0xa8, 0xbb, 0xfe, 0xab,
0x7a, 0xf7, 0x58, 0x14, 0x46, 0xba, 0xe0, 0x30, 0x00, 0xf1, 0x02, 0x95, 0xd7, 0xcc, 0x37, 0xf4,
0xf2, 0xae, 0x09, 0x9a, 0xff, 0x96, 0xf5, 0x86, 0x2b, 0xea, 0x59, 0xcc, 0x97, 0xd5, 0x32, 0x06,
0xd5, 0xea, 0x46, 0x15, 0xcb, 0x37, 0xbe, 0x63, 0xe1, 0x55, 0xeb, 0x50, 0x4b, 0xce, 0xb7, 0xc7,
0xd7, 0x83, 0x52, 0xb7, 0x9d, 0xaa, 0x5b, 0x3d, 0x4f, 0x8f, 0xe7, 0xe4, 0x46, 0x9a, 0x56, 0xb1,
0x31, 0x35, 0x2b, 0x5b, 0x4a, 0x96, 0xeb, 0x69, 0x5b, 0xa4, 0xa2, 0xb7, 0x69, 0xd3, 0x30, 0x14,
0x55, 0xb3, 0xb2, 0xc5, 0xd3, 0xc6, 0x42, 0xb3, 0x6c, 0x37, 0x69, 0x41, 0xc0, 0xf5, 0x68, 0xd4,
0x8b, 0xa8, 0x29, 0x2e, 0xf3, 0x54, 0x44, 0xc5, 0xd6, 0xda, 0xc1, 0xa7, 0xd5, 0x14, 0x97, 0x71,
0x95, 0x23, 0x30, 0xa4, 0x57, 0x2a, 0x0d, 0x4a, 0x2e, 0x89, 0x78, 0x19, 0x9a, 0xf1, 0xc4, 0x4c,
0x71, 0xec, 0x14, 0x24, 0xa4, 0x1d, 0x68, 0x62, 0xa1, 0x96, 0xc0, 0x9c, 0xcf, 0xce, 0x51, 0xfa,
0xe8, 0xa6, 0xde, 0x92, 0x8d, 0xf8, 0xd2, 0xaa, 0xa3, 0xb5, 0x0e, 0xf4, 0xfa, 0xb0, 0x3d, 0xa1,
0xa6, 0xaa, 0x8e, 0x77, 0x82, 0x93, 0x7f, 0x16, 0xd3, 0x6b, 0xf0, 0x40, 0x52, 0x99, 0x85, 0x84,
0x69, 0xa3, 0x7f, 0x50, 0x04, 0x3f, 0x0d, 0x3f, 0x1a, 0x72, 0x86, 0x39, 0x31, 0x2f, 0xf4, 0x55,
0x0f, 0x39, 0xf6, 0x8b, 0x08, 0x24, 0xa4, 0x18, 0x13, 0x45, 0xac, 0xae, 0xbb, 0x9b, 0x8c, 0x2e,
0x3e, 0xdd, 0x97, 0x8d, 0xa8, 0xec, 0x99, 0xca, 0xb1, 0x9a, 0xb1, 0x98, 0x0b, 0x08, 0x39, 0x7d,
0xa6, 0xf3, 0x6a, 0x12, 0xbd, 0xcc, 0x0a, 0x5c, 0xbb, 0x56, 0xc3, 0x99, 0x74, 0xe4, 0xbc, 0x0a,
0xf9, 0x8c, 0x10, 0xd3, 0x73, 0x71, 0xb7, 0xa1, 0x57, 0xcd, 0x80, 0x6e, 0x8c, 0xe9, 0x66, 0x65,
0x83, 0xa7, 0x5c, 0x80, 0xfd, 0x92, 0xb7, 0x4c, 0x5c, 0x1d, 0x8b, 0xe7, 0x72, 0x0b, 0xd4, 0xcf,
0x4e, 0xbb, 0xf6, 0x09, 0x85, 0x59, 0xd1, 0x2e, 0xb1, 0xd3, 0xa7, 0xb1, 0x90, 0xb5, 0x6b, 0xed,
0x96, 0x98, 0xce, 0xb6, 0xed, 0xbb, 0x9c, 0xbb, 0x22, 0xf7, 0x42, 0xab, 0xa8, 0x78, 0xa6, 0x2f,
0x3a, 0xb7, 0x3c, 0xfd, 0x7c, 0xdf, 0xd8, 0x1c, 0xc7, 0x2d, 0x4b, 0x0b, 0xaa, 0x64, 0xc3, 0x24,
0x06, 0xb5, 0x0e, 0x3c, 0x7d, 0x25, 0xdc, 0x50, 0xa9, 0xba, 0x9b, 0xcd, 0xf5, 0x09, 0x7c, 0xc3,
0x64, 0xc5, 0xae, 0xd8, 0xad, 0xcf, 0x19, 0xf4, 0x89, 0x3d, 0xb0, 0x3b, 0xf1, 0x49, 0x23, 0xe9,
0x49, 0xc7, 0x42, 0xbf, 0x7f, 0x14, 0x16, 0x61, 0x44, 0x28, 0x6b, 0xec, 0x4c, 0x95, 0x97, 0xa0,
0xca, 0x8e, 0x1b, 0xf2, 0xdc, 0x8b, 0x6f, 0xb0, 0x94, 0xa0, 0x0e, 0x0b, 0x28, 0x6d, 0xe3, 0x45,
0x6a, 0x41, 0x85, 0xcb, 0x02, 0x7c, 0xdc, 0x87, 0x71, 0xcb, 0xbd, 0x33, 0xe3, 0xcb, 0x82, 0x71,
0xc4, 0xc7, 0xb8, 0x22, 0xa0, 0x85, 0x19, 0x18, 0xdc, 0x0d, 0xd7, 0xcf, 0x04, 0x57, 0x9a, 0xf8,
0x49, 0xe6, 0x60, 0x88, 0x91, 0x18, 0x4d, 0xc7, 0xb5, 0x6b, 0x2c, 0x40, 0xec, 0x4c, 0xf3, 0xf3,
0x37, 0xb8, 0x53, 0x65, 0x28, 0x6c, 0xc6, 0x43, 0x15, 0xee, 0x86, 0x51, 0x2a, 0x61, 0x6b, 0xd0,
0xcf, 0x16, 0x7e, 0x84, 0x90, 0xfb, 0xe5, 0x03, 0xdc, 0xf7, 0x46, 0x3c, 0x02, 0x1f, 0xaf, 0x6f,
0x26, 0x2a, 0xc4, 0xc5, 0xd8, 0x86, 0xfb, 0x3f, 0xd3, 0x54, 0x76, 0xfc, 0xc6, 0x90, 0x7b, 0xf4,
0xad, 0xe0, 0x4c, 0xcc, 0x71, 0xe4, 0x94, 0x69, 0x16, 0xd6, 0x60, 0x5f, 0x97, 0x99, 0xed, 0x81,
0xf3, 0x31, 0xc1, 0x39, 0xda, 0x31, 0xbb, 0x94, 0x76, 0x19, 0xa4, 0xdc, 0x9b, 0x8f, 0x1e, 0x38,
0x1f, 0x17, 0x9c, 0x8a, 0xc0, 0xca, 0x69, 0xa1, 0x8c, 0xa7, 0x60, 0x18, 0x77, 0xea, 0xeb, 0xb6,
0x23, 0xf6, 0xbd, 0x3d, 0xd0, 0x3d, 0x21, 0xe8, 0x86, 0x04, 0x90, 0xed, 0x82, 0x29, 0xd7, 0x6d,
0x90, 0xd8, 0xc0, 0x0d, 0x50, 0x0f, 0x14, 0x4f, 0x0a, 0x8a, 0x01, 0xaa, 0x4f, 0xa1, 0x53, 0x90,
0xae, 0xd8, 0x22, 0x0c, 0x87, 0xc3, 0x9f, 0x12, 0xf0, 0x94, 0xc4, 0x08, 0x8a, 0xba, 0x5d, 0x6f,
0x9a, 0x34, 0x46, 0x87, 0x53, 0x7c, 0x59, 0x52, 0x48, 0x8c, 0xa0, 0xd8, 0x85, 0x59, 0xbf, 0x22,
0x29, 0x1c, 0x9f, 0x3d, 0xef, 0xa4, 0x67, 0xbd, 0xe6, 0x96, 0x6d, 0xf5, 0xd2, 0x89, 0xa7, 0x05,
0x03, 0x08, 0x08, 0x25, 0xb8, 0x1d, 0x92, 0xbd, 0x4e, 0xc4, 0x57, 0x05, 0x3c, 0x41, 0xe4, 0x0c,
0xe0, 0x3a, 0x93, 0x41, 0x86, 0x7e, 0x5b, 0x09, 0xa7, 0xf8, 0x9a, 0xa0, 0xc8, 0xf8, 0x60, 0x62,
0x18, 0x2e, 0x71, 0x5c, 0xdc, 0xaa, 0xf7, 0x40, 0xf2, 0xac, 0x1c, 0x86, 0x80, 0x08, 0x53, 0xae,
0x13, 0xcb, 0xd8, 0xec, 0x8d, 0xe1, 0x39, 0x69, 0x4a, 0x89, 0xa1, 0x14, 0x18, 0x79, 0x6a, 0x7a,
0x03, 0x37, 0xd7, 0x66, 0x4f, 0xd3, 0xf1, 0x75, 0xc1, 0x91, 0xf6, 0x40, 0xc2, 0x22, 0x4d, 0x6b,
0x37, 0x34, 0xcf, 0x4b, 0x8b, 0xf8, 0x60, 0x62, 0xe9, 0xe1, 0xce, 0x94, 0x56, 0x12, 0xbb, 0x61,
0xfb, 0x86, 0x5c, 0x7a, 0x1c, 0xbb, 0xe0, 0x67, 0xc4, 0x99, 0x76, 0x70, 0x0b, 0xde, 0x0b, 0xcd,
0x37, 0xe5, 0x4c, 0x33, 0x00, 0x05, 0x9f, 0x81, 0xfd, 0x5d, 0x43, 0x7d, 0x0f, 0x64, 0xdf, 0x12,
0x64, 0x7b, 0xbb, 0x84, 0x7b, 0x11, 0x12, 0x76, 0x4b, 0xf9, 0x6d, 0x19, 0x12, 0x48, 0x1b, 0xd7,
0x32, 0x2d, 0x63, 0x1d, 0x7d, 0x63, 0x77, 0x56, 0xfb, 0x8e, 0xb4, 0x1a, 0xc7, 0x06, 0xac, 0xb6,
0x0a, 0x7b, 0x05, 0xe3, 0xee, 0xe6, 0xf5, 0x05, 0x19, 0x58, 0x39, 0x7a, 0x2d, 0x38, 0xbb, 0x1f,
0x86, 0x31, 0xcf, 0x9c, 0xb2, 0x02, 0x73, 0x34, 0x7a, 0x30, 0x10, 0xce, 0xfc, 0xa2, 0x60, 0x96,
0x11, 0xdf, 0x2b, 0xe1, 0x9c, 0x05, 0xbd, 0x4e, 0xc9, 0x4f, 0x43, 0x4e, 0x92, 0x37, 0x2d, 0x2c,
0xf0, 0xed, 0x8a, 0x85, 0xd3, 0x58, 0xee, 0x81, 0xfa, 0xbb, 0x6d, 0x53, 0xb5, 0xe6, 0x83, 0x53,
0xe6, 0x12, 0x64, 0xbd, 0x7a, 0x43, 0xab, 0xd6, 0xea, 0x36, 0x96, 0x96, 0x3b, 0x33, 0x7e, 0x4f,
0xce, 0x94, 0x87, 0x2b, 0x31, 0x58, 0xa1, 0x08, 0x19, 0xf6, 0xd8, 0xab, 0x4b, 0x7e, 0x5f, 0x10,
0x0d, 0xb6, 0x50, 0x22, 0x70, 0x60, 0xa5, 0x84, 0x35, 0x6f, 0x2f, 0xf1, 0xef, 0x07, 0x32, 0x70,
0x08, 0x08, 0xf7, 0xbe, 0xa1, 0xb6, 0x4c, 0xac, 0x84, 0x7d, 0x7e, 0xcd, 0x7d, 0xf4, 0x92, 0x58,
0xb3, 0xc1, 0x44, 0x5c, 0x98, 0xa7, 0xe6, 0x09, 0xa6, 0xcb, 0x70, 0xb2, 0x07, 0x2e, 0x79, 0x16,
0x0a, 0x64, 0xcb, 0xc2, 0x49, 0x18, 0x0c, 0xa4, 0xca, 0x70, 0xaa, 0x07, 0x05, 0x55, 0xda, 0x9f,
0x29, 0x0b, 0x37, 0x43, 0x8c, 0xa6, 0xbd, 0x70, 0xf8, 0xc7, 0x04, 0x9c, 0xa9, 0x17, 0xfe, 0x1f,
0x12, 0x32, 0xdd, 0x85, 0x43, 0x3f, 0x2e, 0xa0, 0x1e, 0x84, 0xc2, 0x65, 0xaa, 0x0b, 0x87, 0x7f,
0x42, 0xc2, 0x25, 0x84, 0xc2, 0x7b, 0x37, 0xe1, 0x4b, 0x9f, 0x8a, 0x89, 0x70, 0x25, 0x6d, 0x47,
0xbf, 0xf9, 0xf0, 0x1c, 0x17, 0x8e, 0x7e, 0x48, 0xbc, 0x5c, 0x22, 0x0a, 0xb7, 0x42, 0xbc, 0x47,
0x83, 0x7f, 0x5a, 0x40, 0xb9, 0x3e, 0x66, 0x90, 0x94, 0x2f, 0xaf, 0x85, 0xc3, 0x1f, 0x16, 0x70,
0x3f, 0x8a, 0x76, 0x5d, 0xe4, 0xb5, 0x70, 0x82, 0xcf, 0xc8, 0xae, 0x0b, 0x04, 0x35, 0x9b, 0x4c,
0x69, 0xe1, 0xe8, 0xcf, 0x4a, 0xab, 0x4b, 0x08, 0xae, 0xa6, 0xa4, 0x17, 0xa6, 0xc2, 0xf1, 0x9f,
0x13, 0xf8, 0x16, 0x86, 0x5a, 0xc0, 0x17, 0x26, 0xc3, 0x29, 0x3e, 0x2f, 0x2d, 0xe0, 0x43, 0xd1,
0x65, 0xd4, 0x9e, 0xfa, 0xc2, 0x99, 0xbe, 0x20, 0x97, 0x51, 0x5b, 0xe6, 0xa3, 0xb3, 0xc9, 0xa2,
0x45, 0x38, 0xc5, 0x17, 0xe5, 0x6c, 0x32, 0x7d, 0xda, 0x8d, 0xf6, 0x5c, 0x12, 0xce, 0xf1, 0x25,
0xd9, 0x8d, 0xb6, 0x54, 0x82, 0x99, 0x49, 0xe9, 0xcc, 0x23, 0xe1, 0x7c, 0x8f, 0x08, 0xbe, 0xe1,
0x8e, 0x34, 0x52, 0xb8, 0x07, 0xf6, 0x76, 0xcf, 0x21, 0xe1, 0xac, 0x8f, 0x5e, 0x6a, 0xab, 0xfa,
0xfd, 0x29, 0x04, 0x53, 0xde, 0x68, 0xb7, 0xfc, 0x11, 0x4e, 0xfb, 0xd8, 0xa5, 0xe0, 0xc6, 0xce,
0x9f, 0x3e, 0xb0, 0x42, 0x83, 0x56, 0xe8, 0x0e, 0xe7, 0x7a, 0x42, 0x70, 0xf9, 0x40, 0x74, 0x69,
0x88, 0xc8, 0x1d, 0x8e, 0x7f, 0x52, 0x2e, 0x0d, 0x81, 0x40, 0x70, 0xc2, 0x6a, 0x9a, 0x26, 0x75,
0x0e, 0x65, 0xe7, 0x9f, 0x34, 0xe4, 0xfe, 0xf4, 0xae, 0x58, 0x18, 0x12, 0x80, 0x31, 0x34, 0x4e,
0x6a, 0xeb, 0x68, 0x83, 0x10, 0xe4, 0x9f, 0xdf, 0x95, 0x01, 0x81, 0x6a, 0xe3, 0x7a, 0x02, 0xbe,
0x69, 0x64, 0x67, 0xd8, 0x21, 0xd8, 0xbf, 0xbc, 0x2b, 0x3e, 0xb3, 0xb6, 0x20, 0x2d, 0x02, 0xfe,
0xd1, 0x76, 0x67, 0x82, 0xb7, 0x82, 0x04, 0x6c, 0xa3, 0x79, 0x1b, 0x0c, 0xd0, 0x5f, 0x76, 0xb8,
0x7a, 0x25, 0x0c, 0xfd, 0x57, 0x81, 0x96, 0xfa, 0xd4, 0x60, 0x35, 0xbb, 0x41, 0xf0, 0xd6, 0x09,
0xc3, 0xfe, 0x4d, 0x60, 0x3d, 0x00, 0x05, 0x1b, 0xba, 0xe3, 0xf6, 0x32, 0xee, 0xbf, 0x4b, 0xb0,
0x04, 0xd0, 0x4e, 0xd3, 0xfb, 0x73, 0x64, 0x2b, 0x0c, 0xfb, 0xb6, 0xec, 0xb4, 0xd0, 0xc7, 0x00,
0x98, 0xa4, 0xb7, 0xfc, 0xa7, 0x07, 0x21, 0xe0, 0x7f, 0x08, 0x70, 0x0b, 0x31, 0x7d, 0xb8, 0xfb,
0xd1, 0x0e, 0xcc, 0xd9, 0x73, 0x36, 0x3f, 0xd4, 0x81, 0x87, 0xe3, 0x70, 0x08, 0x75, 0x30, 0xbf,
0x4e, 0x7a, 0x6b, 0x71, 0xd2, 0x63, 0x90, 0xc7, 0x32, 0x9e, 0x60, 0x6c, 0x77, 0x07, 0x3a, 0xf9,
0x9f, 0x44, 0x21, 0x31, 0x83, 0x60, 0xfd, 0x82, 0xbe, 0xa5, 0xd4, 0x61, 0x84, 0xde, 0xe3, 0xa2,
0x64, 0x47, 0x0b, 0xc2, 0xc5, 0xc5, 0x59, 0xdc, 0xf5, 0x13, 0xad, 0xb7, 0x4a, 0xc4, 0x44, 0x17,
0x75, 0xf6, 0x69, 0x69, 0x3a, 0xfb, 0xca, 0x6f, 0xc7, 0xf7, 0x7c, 0xf2, 0x77, 0xe3, 0x89, 0x85,
0xad, 0x7b, 0xaa, 0xa6, 0x43, 0x4f, 0x6b, 0x8d, 0x4e, 0x5d, 0xe5, 0xc1, 0x08, 0x1c, 0xe8, 0xc2,
0xb1, 0x28, 0x16, 0x82, 0x38, 0xa2, 0xbd, 0xa9, 0xc7, 0x57, 0x4b, 0x18, 0xef, 0x42, 0x3a, 0xf0,
0xfa, 0x03, 0xc6, 0xf6, 0xfa, 0x63, 0x67, 0x20, 0xb7, 0xdd, 0x48, 0xe8, 0xcf, 0xc2, 0x70, 0xa6,
0xc5, 0x4f, 0xc5, 0xe8, 0xad, 0x72, 0xa4, 0xf5, 0x1b, 0x15, 0xfa, 0x53, 0x84, 0x61, 0x5f, 0xef,
0xc4, 0xcb, 0x78, 0x7b, 0xa1, 0xef, 0x44, 0x64, 0x4c, 0x87, 0x43, 0x61, 0x3d, 0xfd, 0x37, 0x5f,
0x91, 0x3f, 0x08, 0xfd, 0x5c, 0x48, 0x7f, 0xd8, 0x56, 0xb2, 0xdc, 0x5b, 0x6e, 0x62, 0x54, 0x51,
0x35, 0x5e, 0xa5, 0x0f, 0xd3, 0xf3, 0xaf, 0xbc, 0x76, 0x70, 0xcf, 0xab, 0x78, 0xfd, 0x1a, 0xaf,
0xdf, 0xbf, 0x76, 0x30, 0xf2, 0x26, 0x5e, 0x6f, 0xe3, 0xf5, 0x0e, 0x5e, 0xf7, 0xbf, 0x7e, 0x30,
0xf2, 0x1c, 0x5e, 0x2f, 0xe0, 0xf5, 0x23, 0xbc, 0x5e, 0xc2, 0xeb, 0x15, 0xbc, 0x5e, 0x7d, 0x1d,
0x75, 0xf1, 0xff, 0x9b, 0xf8, 0xff, 0x6d, 0xfc, 0xff, 0x0e, 0xfe, 0xbf, 0xff, 0x0f, 0x07, 0xf7,
0xfc, 0x2b, 0x00, 0x00, 0xff, 0xff, 0xda, 0x83, 0xc0, 0xc0, 0xfb, 0x2c, 0x00, 0x00,
}
r := bytes.NewReader(gzipped)
gzipr, err := compress_gzip.NewReader(r)
if err != nil {
panic(err)
}
ungzipped, err := io_ioutil.ReadAll(gzipr)
if err != nil {
panic(err)
}
if err := github_com_gogo_protobuf_proto.Unmarshal(ungzipped, d); err != nil {
panic(err)
}
return d
}
func (this *Castaway) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*Castaway)
if !ok {
that2, ok := that.(Castaway)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *Castaway")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *Castaway but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *Castaway but is not nil && this == nil")
}
if len(this.CastMapValueMessage) != len(that1.CastMapValueMessage) {
return fmt.Errorf("CastMapValueMessage this(%v) Not Equal that(%v)", len(this.CastMapValueMessage), len(that1.CastMapValueMessage))
}
for i := range this.CastMapValueMessage {
a := (Wilson)(this.CastMapValueMessage[i])
b := (Wilson)(that1.CastMapValueMessage[i])
if !(&a).Equal(&b) {
return fmt.Errorf("CastMapValueMessage this[%v](%v) Not Equal that[%v](%v)", i, this.CastMapValueMessage[i], i, that1.CastMapValueMessage[i])
}
}
if len(this.CastMapValueMessageNullable) != len(that1.CastMapValueMessageNullable) {
return fmt.Errorf("CastMapValueMessageNullable this(%v) Not Equal that(%v)", len(this.CastMapValueMessageNullable), len(that1.CastMapValueMessageNullable))
}
for i := range this.CastMapValueMessageNullable {
a := (*Wilson)(this.CastMapValueMessageNullable[i])
b := (*Wilson)(that1.CastMapValueMessageNullable[i])
if !a.Equal(b) {
return fmt.Errorf("CastMapValueMessageNullable this[%v](%v) Not Equal that[%v](%v)", i, this.CastMapValueMessageNullable[i], i, that1.CastMapValueMessageNullable[i])
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *Castaway) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Castaway)
if !ok {
that2, ok := that.(Castaway)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if len(this.CastMapValueMessage) != len(that1.CastMapValueMessage) {
return false
}
for i := range this.CastMapValueMessage {
a := (Wilson)(this.CastMapValueMessage[i])
b := (Wilson)(that1.CastMapValueMessage[i])
if !(&a).Equal(&b) {
return false
}
}
if len(this.CastMapValueMessageNullable) != len(that1.CastMapValueMessageNullable) {
return false
}
for i := range this.CastMapValueMessageNullable {
a := (*Wilson)(this.CastMapValueMessageNullable[i])
b := (*Wilson)(that1.CastMapValueMessageNullable[i])
if !a.Equal(b) {
return false
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (this *Wilson) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*Wilson)
if !ok {
that2, ok := that.(Wilson)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *Wilson")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *Wilson but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *Wilson but is not nil && this == nil")
}
if this.Int64 != nil && that1.Int64 != nil {
if *this.Int64 != *that1.Int64 {
return fmt.Errorf("Int64 this(%v) Not Equal that(%v)", *this.Int64, *that1.Int64)
}
} else if this.Int64 != nil {
return fmt.Errorf("this.Int64 == nil && that.Int64 != nil")
} else if that1.Int64 != nil {
return fmt.Errorf("Int64 this(%v) Not Equal that(%v)", this.Int64, that1.Int64)
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *Wilson) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Wilson)
if !ok {
that2, ok := that.(Wilson)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Int64 != nil && that1.Int64 != nil {
if *this.Int64 != *that1.Int64 {
return false
}
} else if this.Int64 != nil {
return false
} else if that1.Int64 != nil {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
type CastawayFace interface {
Proto() github_com_gogo_protobuf_proto.Message
GetCastMapValueMessage() map[int32]MyWilson
GetCastMapValueMessageNullable() map[int32]*MyWilson
}
func (this *Castaway) Proto() github_com_gogo_protobuf_proto.Message {
return this
}
func (this *Castaway) TestProto() github_com_gogo_protobuf_proto.Message {
return NewCastawayFromFace(this)
}
func (this *Castaway) GetCastMapValueMessage() map[int32]MyWilson {
return this.CastMapValueMessage
}
func (this *Castaway) GetCastMapValueMessageNullable() map[int32]*MyWilson {
return this.CastMapValueMessageNullable
}
func NewCastawayFromFace(that CastawayFace) *Castaway {
this := &Castaway{}
this.CastMapValueMessage = that.GetCastMapValueMessage()
this.CastMapValueMessageNullable = that.GetCastMapValueMessageNullable()
return this
}
type WilsonFace interface {
Proto() github_com_gogo_protobuf_proto.Message
GetInt64() *int64
}
func (this *Wilson) Proto() github_com_gogo_protobuf_proto.Message {
return this
}
func (this *Wilson) TestProto() github_com_gogo_protobuf_proto.Message {
return NewWilsonFromFace(this)
}
func (this *Wilson) GetInt64() *int64 {
return this.Int64
}
func NewWilsonFromFace(that WilsonFace) *Wilson {
this := &Wilson{}
this.Int64 = that.GetInt64()
return this
}
func (this *Castaway) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 6)
s = append(s, "&castvalue.Castaway{")
keysForCastMapValueMessage := make([]int32, 0, len(this.CastMapValueMessage))
for k := range this.CastMapValueMessage {
keysForCastMapValueMessage = append(keysForCastMapValueMessage, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessage)
mapStringForCastMapValueMessage := "map[int32]MyWilson{"
for _, k := range keysForCastMapValueMessage {
mapStringForCastMapValueMessage += fmt.Sprintf("%#v: %#v,", k, this.CastMapValueMessage[k])
}
mapStringForCastMapValueMessage += "}"
if this.CastMapValueMessage != nil {
s = append(s, "CastMapValueMessage: "+mapStringForCastMapValueMessage+",\n")
}
keysForCastMapValueMessageNullable := make([]int32, 0, len(this.CastMapValueMessageNullable))
for k := range this.CastMapValueMessageNullable {
keysForCastMapValueMessageNullable = append(keysForCastMapValueMessageNullable, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessageNullable)
mapStringForCastMapValueMessageNullable := "map[int32]*MyWilson{"
for _, k := range keysForCastMapValueMessageNullable {
mapStringForCastMapValueMessageNullable += fmt.Sprintf("%#v: %#v,", k, this.CastMapValueMessageNullable[k])
}
mapStringForCastMapValueMessageNullable += "}"
if this.CastMapValueMessageNullable != nil {
s = append(s, "CastMapValueMessageNullable: "+mapStringForCastMapValueMessageNullable+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func (this *Wilson) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 5)
s = append(s, "&castvalue.Wilson{")
if this.Int64 != nil {
s = append(s, "Int64: "+valueToGoStringCastvalue(this.Int64, "int64")+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func valueToGoStringCastvalue(v interface{}, typ string) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
return "nil"
}
pv := reflect.Indirect(rv).Interface()
return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv)
}
func extensionToGoStringCastvalue(e map[int32]github_com_gogo_protobuf_proto.Extension) string {
if e == nil {
return "nil"
}
s := "map[int32]proto.Extension{"
keys := make([]int, 0, len(e))
for k := range e {
keys = append(keys, int(k))
}
sort.Ints(keys)
ss := []string{}
for _, k := range keys {
ss = append(ss, strconv.Itoa(k)+": "+e[int32(k)].GoString())
}
s += strings.Join(ss, ",") + "}"
return s
}
func (m *Castaway) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *Castaway) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if len(m.CastMapValueMessage) > 0 {
for k := range m.CastMapValueMessage {
data[i] = 0xa
i++
v := m.CastMapValueMessage[k]
msgSize := ((*Wilson)(&v)).Size()
mapSize := 1 + sovCastvalue(uint64(k)) + 1 + msgSize + sovCastvalue(uint64(msgSize))
i = encodeVarintCastvalue(data, i, uint64(mapSize))
data[i] = 0x8
i++
i = encodeVarintCastvalue(data, i, uint64(k))
data[i] = 0x12
i++
i = encodeVarintCastvalue(data, i, uint64(((*Wilson)(&v)).Size()))
n1, err := ((*Wilson)(&v)).MarshalTo(data[i:])
if err != nil {
return 0, err
}
i += n1
}
}
if len(m.CastMapValueMessageNullable) > 0 {
for k := range m.CastMapValueMessageNullable {
data[i] = 0x12
i++
v := m.CastMapValueMessageNullable[k]
if v == nil {
return 0, errors.New("proto: map has nil element")
}
msgSize := ((*Wilson)(v)).Size()
mapSize := 1 + sovCastvalue(uint64(k)) + 1 + msgSize + sovCastvalue(uint64(msgSize))
i = encodeVarintCastvalue(data, i, uint64(mapSize))
data[i] = 0x8
i++
i = encodeVarintCastvalue(data, i, uint64(k))
data[i] = 0x12
i++
i = encodeVarintCastvalue(data, i, uint64(((*Wilson)(v)).Size()))
n2, err := ((*Wilson)(v)).MarshalTo(data[i:])
if err != nil {
return 0, err
}
i += n2
}
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func (m *Wilson) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *Wilson) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if m.Int64 != nil {
data[i] = 0x8
i++
i = encodeVarintCastvalue(data, i, uint64(*m.Int64))
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func encodeFixed64Castvalue(data []byte, offset int, v uint64) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
data[offset+4] = uint8(v >> 32)
data[offset+5] = uint8(v >> 40)
data[offset+6] = uint8(v >> 48)
data[offset+7] = uint8(v >> 56)
return offset + 8
}
func encodeFixed32Castvalue(data []byte, offset int, v uint32) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
return offset + 4
}
func encodeVarintCastvalue(data []byte, offset int, v uint64) int {
for v >= 1<<7 {
data[offset] = uint8(v&0x7f | 0x80)
v >>= 7
offset++
}
data[offset] = uint8(v)
return offset + 1
}
func NewPopulatedCastaway(r randyCastvalue, easy bool) *Castaway {
this := &Castaway{}
if r.Intn(10) != 0 {
v1 := r.Intn(10)
this.CastMapValueMessage = make(map[int32]MyWilson)
for i := 0; i < v1; i++ {
this.CastMapValueMessage[int32(r.Int31())] = (MyWilson)(*NewPopulatedWilson(r, easy))
}
}
if r.Intn(10) != 0 {
v2 := r.Intn(10)
this.CastMapValueMessageNullable = make(map[int32]*MyWilson)
for i := 0; i < v2; i++ {
this.CastMapValueMessageNullable[int32(r.Int31())] = (*MyWilson)(NewPopulatedWilson(r, easy))
}
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedCastvalue(r, 3)
}
return this
}
func NewPopulatedWilson(r randyCastvalue, easy bool) *Wilson {
this := &Wilson{}
if r.Intn(10) != 0 {
v3 := int64(r.Int63())
if r.Intn(2) == 0 {
v3 *= -1
}
this.Int64 = &v3
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedCastvalue(r, 2)
}
return this
}
type randyCastvalue interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneCastvalue(r randyCastvalue) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringCastvalue(r randyCastvalue) string {
v4 := r.Intn(100)
tmps := make([]rune, v4)
for i := 0; i < v4; i++ {
tmps[i] = randUTF8RuneCastvalue(r)
}
return string(tmps)
}
func randUnrecognizedCastvalue(r randyCastvalue, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldCastvalue(data, r, fieldNumber, wire)
}
return data
}
func randFieldCastvalue(data []byte, r randyCastvalue, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateCastvalue(data, uint64(key))
v5 := r.Int63()
if r.Intn(2) == 0 {
v5 *= -1
}
data = encodeVarintPopulateCastvalue(data, uint64(v5))
case 1:
data = encodeVarintPopulateCastvalue(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateCastvalue(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateCastvalue(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateCastvalue(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateCastvalue(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
func (m *Castaway) Size() (n int) {
var l int
_ = l
if len(m.CastMapValueMessage) > 0 {
for k, v := range m.CastMapValueMessage {
_ = k
_ = v
l = ((*Wilson)(&v)).Size()
mapEntrySize := 1 + sovCastvalue(uint64(k)) + 1 + l + sovCastvalue(uint64(l))
n += mapEntrySize + 1 + sovCastvalue(uint64(mapEntrySize))
}
}
if len(m.CastMapValueMessageNullable) > 0 {
for k, v := range m.CastMapValueMessageNullable {
_ = k
_ = v
l = 0
if v != nil {
l = ((*Wilson)(v)).Size()
}
mapEntrySize := 1 + sovCastvalue(uint64(k)) + 1 + l + sovCastvalue(uint64(l))
n += mapEntrySize + 1 + sovCastvalue(uint64(mapEntrySize))
}
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func (m *Wilson) Size() (n int) {
var l int
_ = l
if m.Int64 != nil {
n += 1 + sovCastvalue(uint64(*m.Int64))
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func sovCastvalue(x uint64) (n int) {
for {
n++
x >>= 7
if x == 0 {
break
}
}
return n
}
func sozCastvalue(x uint64) (n int) {
return sovCastvalue(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (this *Castaway) String() string {
if this == nil {
return "nil"
}
keysForCastMapValueMessage := make([]int32, 0, len(this.CastMapValueMessage))
for k := range this.CastMapValueMessage {
keysForCastMapValueMessage = append(keysForCastMapValueMessage, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessage)
mapStringForCastMapValueMessage := "map[int32]MyWilson{"
for _, k := range keysForCastMapValueMessage {
mapStringForCastMapValueMessage += fmt.Sprintf("%v: %v,", k, this.CastMapValueMessage[k])
}
mapStringForCastMapValueMessage += "}"
keysForCastMapValueMessageNullable := make([]int32, 0, len(this.CastMapValueMessageNullable))
for k := range this.CastMapValueMessageNullable {
keysForCastMapValueMessageNullable = append(keysForCastMapValueMessageNullable, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessageNullable)
mapStringForCastMapValueMessageNullable := "map[int32]*MyWilson{"
for _, k := range keysForCastMapValueMessageNullable {
mapStringForCastMapValueMessageNullable += fmt.Sprintf("%v: %v,", k, this.CastMapValueMessageNullable[k])
}
mapStringForCastMapValueMessageNullable += "}"
s := strings.Join([]string{`&Castaway{`,
`CastMapValueMessage:` + mapStringForCastMapValueMessage + `,`,
`CastMapValueMessageNullable:` + mapStringForCastMapValueMessageNullable + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func (this *Wilson) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&Wilson{`,
`Int64:` + valueToStringCastvalue(this.Int64) + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func valueToStringCastvalue(v interface{}) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
return "nil"
}
pv := reflect.Indirect(rv).Interface()
return fmt.Sprintf("*%v", pv)
}
var fileDescriptorCastvalue = []byte{
// 337 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0x52, 0x48, 0xce, 0xcf, 0x4d,
0xca, 0x2f, 0xd6, 0xcf, 0x4d, 0x2c, 0x2a, 0xce, 0x48, 0xcc, 0x49, 0x2d, 0xd2, 0x4f, 0x4e, 0x2c,
0x2e, 0x29, 0x4b, 0xcc, 0x29, 0x4d, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x84, 0x0b,
0x48, 0xe9, 0xa6, 0x67, 0x96, 0x64, 0x94, 0x26, 0xe9, 0x01, 0xf5, 0xe8, 0xa7, 0xe7, 0xa7, 0xe7,
0xeb, 0x83, 0x55, 0x24, 0x95, 0xa6, 0x81, 0x79, 0x60, 0x0e, 0x98, 0x05, 0xd1, 0xa9, 0x74, 0x90,
0x99, 0x8b, 0xc3, 0x19, 0xa8, 0x39, 0xb1, 0x3c, 0xb1, 0x52, 0xa8, 0x80, 0x4b, 0x18, 0xc4, 0xf6,
0x4d, 0x2c, 0x08, 0x03, 0x99, 0xe5, 0x9b, 0x5a, 0x5c, 0x9c, 0x98, 0x9e, 0x2a, 0xc1, 0xa8, 0xc0,
0xac, 0xc1, 0x6d, 0xa4, 0xa3, 0x87, 0xb0, 0x15, 0xa6, 0x43, 0x0f, 0x8b, 0x72, 0xd7, 0xbc, 0x92,
0xa2, 0x4a, 0x27, 0x81, 0x13, 0xf7, 0xe4, 0x19, 0xba, 0xee, 0xcb, 0x73, 0xf8, 0x56, 0x86, 0x67,
0xe6, 0x14, 0xe7, 0xe7, 0x05, 0x09, 0x27, 0x63, 0xaa, 0x15, 0x6a, 0x61, 0xe4, 0x92, 0xc6, 0x62,
0x86, 0x5f, 0x69, 0x4e, 0x4e, 0x62, 0x52, 0x4e, 0xaa, 0x04, 0x13, 0xd8, 0x6a, 0x13, 0x22, 0xad,
0x86, 0x69, 0x83, 0x38, 0x81, 0x07, 0xc5, 0x7a, 0xe9, 0x64, 0xdc, 0xea, 0xa5, 0x22, 0xb9, 0x24,
0x70, 0xf9, 0x44, 0x48, 0x80, 0x8b, 0x39, 0x3b, 0xb5, 0x12, 0x18, 0x08, 0x8c, 0x1a, 0xac, 0x41,
0x20, 0xa6, 0x90, 0x3a, 0x17, 0x2b, 0xd8, 0x2d, 0x40, 0xd7, 0x31, 0x02, 0x5d, 0x27, 0x88, 0xe4,
0x3a, 0xa8, 0x65, 0x10, 0x79, 0x2b, 0x26, 0x0b, 0x46, 0xa9, 0x44, 0x2e, 0x05, 0x42, 0x2e, 0xa5,
0xd0, 0x0a, 0x25, 0x39, 0x2e, 0x36, 0x88, 0xa0, 0x90, 0x08, 0x17, 0xab, 0x67, 0x5e, 0x89, 0x99,
0x09, 0xd8, 0x28, 0xe6, 0x20, 0xd6, 0x4c, 0x10, 0xc7, 0xc9, 0xe7, 0xc4, 0x43, 0x39, 0x86, 0x0b,
0x40, 0x7c, 0x03, 0x88, 0x1f, 0x3c, 0x94, 0x63, 0x7c, 0x01, 0xc4, 0x1f, 0x80, 0xf8, 0x07, 0x10,
0x37, 0x3c, 0x92, 0x63, 0x5c, 0x01, 0xc4, 0x1b, 0x80, 0x78, 0x07, 0x10, 0x1f, 0x00, 0xe2, 0x13,
0x40, 0x7c, 0xe1, 0x11, 0x50, 0x2d, 0x90, 0x7e, 0x01, 0xa4, 0x3f, 0x00, 0xe9, 0x1f, 0x40, 0xba,
0xe1, 0xb1, 0x1c, 0x03, 0x20, 0x00, 0x00, 0xff, 0xff, 0x15, 0xb6, 0x94, 0x56, 0x8e, 0x02, 0x00,
0x00,
}
@@ -0,0 +1,31 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package castvalue
type MyWilson Wilson
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,31 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package castvalue
type MyWilson Wilson
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,31 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package castvalue
type MyWilson Wilson
@@ -0,0 +1,978 @@
// Code generated by protoc-gen-gogo.
// source: combos/unsafemarshaler/castvalue.proto
// DO NOT EDIT!
/*
Package castvalue is a generated protocol buffer package.
It is generated from these files:
combos/unsafemarshaler/castvalue.proto
It has these top-level messages:
Castaway
Wilson
*/
package castvalue
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import github_com_gogo_protobuf_protoc_gen_gogo_descriptor "github.com/gogo/protobuf/protoc-gen-gogo/descriptor"
import github_com_gogo_protobuf_proto "github.com/gogo/protobuf/proto"
import compress_gzip "compress/gzip"
import bytes "bytes"
import io_ioutil "io/ioutil"
import strings "strings"
import sort "sort"
import strconv "strconv"
import reflect "reflect"
import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys"
import errors "errors"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type Castaway struct {
CastMapValueMessage map[int32]MyWilson `protobuf:"bytes,1,rep,name=CastMapValueMessage,json=castMapValueMessage,castvalue=MyWilson,castvaluetype=castvalue.Wilson" json:"CastMapValueMessage" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
CastMapValueMessageNullable map[int32]*MyWilson `protobuf:"bytes,2,rep,name=CastMapValueMessageNullable,json=castMapValueMessageNullable,castvalue=MyWilson,castvaluetype=castvalue.Wilson" json:"CastMapValueMessageNullable,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Castaway) Reset() { *m = Castaway{} }
func (*Castaway) ProtoMessage() {}
func (*Castaway) Descriptor() ([]byte, []int) { return fileDescriptorCastvalue, []int{0} }
type Wilson struct {
Int64 *int64 `protobuf:"varint,1,opt,name=Int64,json=int64" json:"Int64,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Wilson) Reset() { *m = Wilson{} }
func (*Wilson) ProtoMessage() {}
func (*Wilson) Descriptor() ([]byte, []int) { return fileDescriptorCastvalue, []int{1} }
func init() {
proto.RegisterType((*Castaway)(nil), "castvalue.Castaway")
proto.RegisterType((*Wilson)(nil), "castvalue.Wilson")
}
func (this *Castaway) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return CastvalueDescription()
}
func (this *Wilson) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return CastvalueDescription()
}
func CastvalueDescription() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
d := &github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet{}
var gzipped = []byte{
// 3472 bytes of a gzipped FileDescriptorSet
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xcc, 0x5a, 0x6b, 0x6c, 0x23, 0xd5,
0xf5, 0x5f, 0xc7, 0x76, 0x62, 0x1f, 0x3b, 0x8e, 0x33, 0x09, 0xbb, 0xde, 0x2c, 0x6c, 0x76, 0xcd,
0x63, 0x97, 0x05, 0x12, 0xfe, 0xfb, 0xe7, 0xb1, 0x98, 0xff, 0x1f, 0x94, 0x87, 0x37, 0x78, 0x95,
0x57, 0x27, 0x09, 0xec, 0xd2, 0x0f, 0xa3, 0xc9, 0xf8, 0xc6, 0xf1, 0xee, 0x78, 0xc6, 0xf5, 0x8c,
0x77, 0x37, 0x7c, 0xa2, 0x82, 0xb6, 0xa2, 0x55, 0xdf, 0x48, 0xe5, 0xdd, 0x82, 0xd4, 0x42, 0xe9,
0x0b, 0xfa, 0x52, 0xd5, 0x4f, 0x54, 0x15, 0x2d, 0x9f, 0xaa, 0xb6, 0x9f, 0xfa, 0xa1, 0x6a, 0x81,
0x22, 0x95, 0xb6, 0xb4, 0xa5, 0xd2, 0x4a, 0x45, 0xe2, 0x4b, 0xcf, 0x7d, 0x8d, 0x67, 0x6c, 0x27,
0xe3, 0x50, 0x51, 0x1a, 0x69, 0x94, 0x99, 0x73, 0xcf, 0xef, 0x37, 0xf7, 0x9e, 0x7b, 0xee, 0x39,
0xe7, 0xde, 0x31, 0xfc, 0xf4, 0x7f, 0xe0, 0x50, 0xc5, 0xb6, 0x2b, 0x26, 0x99, 0xac, 0x37, 0x6c,
0xd7, 0x5e, 0x6f, 0x6e, 0x4c, 0x96, 0x89, 0x63, 0x34, 0xaa, 0x75, 0xd7, 0x6e, 0x4c, 0x30, 0x99,
0x32, 0xc4, 0x35, 0x26, 0xa4, 0x46, 0x7e, 0x01, 0x86, 0x4f, 0x56, 0x4d, 0x32, 0xeb, 0x29, 0xae,
0x10, 0x57, 0x39, 0x01, 0xb1, 0x0d, 0x14, 0xe6, 0x22, 0x87, 0xa2, 0x47, 0x53, 0xc7, 0xaf, 0x9a,
0x68, 0x03, 0x4d, 0x04, 0x11, 0xcb, 0x54, 0xac, 0x32, 0x44, 0xfe, 0x8d, 0x18, 0x8c, 0x74, 0x69,
0x55, 0x14, 0x88, 0x59, 0x7a, 0x8d, 0x32, 0x46, 0x8e, 0x26, 0x55, 0x76, 0xaf, 0xe4, 0x60, 0xa0,
0xae, 0x1b, 0xe7, 0xf4, 0x0a, 0xc9, 0xf5, 0x31, 0xb1, 0x7c, 0x54, 0x0e, 0x02, 0x94, 0x49, 0x9d,
0x58, 0x65, 0x62, 0x19, 0x5b, 0xb9, 0x28, 0xf6, 0x22, 0xa9, 0xfa, 0x24, 0xca, 0x75, 0x30, 0x5c,
0x6f, 0xae, 0x9b, 0x55, 0x43, 0xf3, 0xa9, 0x01, 0xaa, 0xc5, 0xd5, 0x2c, 0x6f, 0x98, 0x6d, 0x29,
0x1f, 0x81, 0xa1, 0x0b, 0x44, 0x3f, 0xe7, 0x57, 0x4d, 0x31, 0xd5, 0x0c, 0x15, 0xfb, 0x14, 0x67,
0x20, 0x5d, 0x23, 0x8e, 0x83, 0x1d, 0xd0, 0xdc, 0xad, 0x3a, 0xc9, 0xc5, 0xd8, 0xe8, 0x0f, 0x75,
0x8c, 0xbe, 0x7d, 0xe4, 0x29, 0x81, 0x5a, 0x45, 0x90, 0x32, 0x05, 0x49, 0x62, 0x35, 0x6b, 0x9c,
0x21, 0xbe, 0x8d, 0xfd, 0x8a, 0xa8, 0xd1, 0xce, 0x92, 0xa0, 0x30, 0x41, 0x31, 0xe0, 0x90, 0xc6,
0xf9, 0xaa, 0x41, 0x72, 0xfd, 0x8c, 0xe0, 0x48, 0x07, 0xc1, 0x0a, 0x6f, 0x6f, 0xe7, 0x90, 0x38,
0x1c, 0x4a, 0x92, 0x5c, 0x74, 0x89, 0xe5, 0x54, 0x6d, 0x2b, 0x37, 0xc0, 0x48, 0xae, 0xee, 0x32,
0x8b, 0xc4, 0x2c, 0xb7, 0x53, 0xb4, 0x70, 0xca, 0x2d, 0x30, 0x60, 0xd7, 0x5d, 0xbc, 0x73, 0x72,
0x09, 0x9c, 0x9f, 0xd4, 0xf1, 0xcb, 0xbb, 0x3a, 0xc2, 0x12, 0xd7, 0x51, 0xa5, 0xb2, 0x52, 0x82,
0xac, 0x63, 0x37, 0x1b, 0x06, 0xd1, 0x0c, 0xbb, 0x4c, 0xb4, 0xaa, 0xb5, 0x61, 0xe7, 0x92, 0x8c,
0x60, 0xbc, 0x73, 0x20, 0x4c, 0x71, 0x06, 0xf5, 0x4a, 0xa8, 0xa6, 0x66, 0x9c, 0xc0, 0xb3, 0xb2,
0x17, 0xfa, 0x9d, 0x2d, 0xcb, 0xd5, 0x2f, 0xe6, 0xd2, 0xcc, 0x43, 0xc4, 0x53, 0xfe, 0x9f, 0x71,
0x18, 0xea, 0xc5, 0xc5, 0x6e, 0x87, 0xf8, 0x06, 0x1d, 0x25, 0x3a, 0xd8, 0x2e, 0x6c, 0xc0, 0x31,
0x41, 0x23, 0xf6, 0xbf, 0x47, 0x23, 0x4e, 0x41, 0xca, 0x22, 0x8e, 0x4b, 0xca, 0xdc, 0x23, 0xa2,
0x3d, 0xfa, 0x14, 0x70, 0x50, 0xa7, 0x4b, 0xc5, 0xde, 0x93, 0x4b, 0x9d, 0x86, 0x21, 0xaf, 0x4b,
0x5a, 0x43, 0xb7, 0x2a, 0xd2, 0x37, 0x27, 0xc3, 0x7a, 0x32, 0x51, 0x94, 0x38, 0x95, 0xc2, 0xd4,
0x0c, 0x09, 0x3c, 0x2b, 0xb3, 0x00, 0xb6, 0x45, 0xec, 0x0d, 0x5c, 0x5e, 0x86, 0x89, 0x7e, 0xd2,
0xdd, 0x4a, 0x4b, 0x54, 0xa5, 0xc3, 0x4a, 0x36, 0x97, 0x1a, 0xa6, 0x72, 0x5b, 0xcb, 0xd5, 0x06,
0xb6, 0xf1, 0x94, 0x05, 0xbe, 0xc8, 0x3a, 0xbc, 0x6d, 0x0d, 0x32, 0x0d, 0x42, 0xfd, 0x1e, 0x4d,
0xcc, 0x47, 0x96, 0x64, 0x9d, 0x98, 0x08, 0x1d, 0x99, 0x2a, 0x60, 0x7c, 0x60, 0x83, 0x0d, 0xff,
0xa3, 0x72, 0x25, 0x78, 0x02, 0x8d, 0xb9, 0x15, 0xb0, 0x28, 0x94, 0x96, 0xc2, 0x45, 0x94, 0x8d,
0x9d, 0x80, 0x4c, 0xd0, 0x3c, 0xca, 0x28, 0xc4, 0x1d, 0x57, 0x6f, 0xb8, 0xcc, 0x0b, 0xe3, 0x2a,
0x7f, 0x50, 0xb2, 0x10, 0xc5, 0x20, 0xc3, 0xa2, 0x5c, 0x5c, 0xa5, 0xb7, 0x63, 0xb7, 0xc2, 0x60,
0xe0, 0xf5, 0xbd, 0x02, 0xf3, 0x8f, 0xf4, 0xc3, 0x68, 0x37, 0x9f, 0xeb, 0xea, 0xfe, 0xb8, 0x7c,
0xd0, 0x03, 0xd6, 0x49, 0x03, 0xfd, 0x8e, 0x32, 0x88, 0x27, 0xf4, 0xa8, 0xb8, 0xa9, 0xaf, 0x13,
0x13, 0xbd, 0x29, 0x72, 0x34, 0x73, 0xfc, 0xba, 0x9e, 0xbc, 0x7a, 0x62, 0x9e, 0x42, 0x54, 0x8e,
0x54, 0xee, 0x80, 0x98, 0x08, 0x71, 0x94, 0xe1, 0x58, 0x6f, 0x0c, 0xd4, 0x17, 0x55, 0x86, 0x53,
0x0e, 0x40, 0x92, 0xfe, 0xe7, 0xb6, 0xed, 0x67, 0x7d, 0x4e, 0x50, 0x01, 0xb5, 0xab, 0x32, 0x06,
0x09, 0xe6, 0x66, 0x65, 0x22, 0x53, 0x83, 0xf7, 0x4c, 0x27, 0xa6, 0x4c, 0x36, 0xf4, 0xa6, 0xe9,
0x6a, 0xe7, 0x75, 0xb3, 0x49, 0x98, 0xc3, 0xe0, 0xc4, 0x08, 0xe1, 0xdd, 0x54, 0xa6, 0x8c, 0x43,
0x8a, 0x7b, 0x65, 0x15, 0x31, 0x17, 0x59, 0xf4, 0x89, 0xab, 0xdc, 0x51, 0x4b, 0x54, 0x42, 0x5f,
0x7f, 0xd6, 0xc1, 0xb5, 0x20, 0xa6, 0x96, 0xbd, 0x82, 0x0a, 0xd8, 0xeb, 0x6f, 0x6d, 0x0f, 0x7c,
0x57, 0x74, 0x1f, 0x5e, 0xbb, 0x2f, 0xe6, 0x7f, 0xd8, 0x07, 0x31, 0xb6, 0xde, 0x86, 0x20, 0xb5,
0x7a, 0x66, 0xb9, 0xa8, 0xcd, 0x2e, 0xad, 0x4d, 0xcf, 0x17, 0xb3, 0x11, 0x25, 0x03, 0xc0, 0x04,
0x27, 0xe7, 0x97, 0xa6, 0x56, 0xb3, 0x7d, 0xde, 0x73, 0x69, 0x71, 0xf5, 0x96, 0x9b, 0xb2, 0x51,
0x0f, 0xb0, 0xc6, 0x05, 0x31, 0xbf, 0xc2, 0xff, 0x1e, 0xcf, 0xc6, 0xd1, 0x13, 0xd2, 0x9c, 0xa0,
0x74, 0xba, 0x38, 0x8b, 0x1a, 0xfd, 0x41, 0x09, 0xea, 0x0c, 0x28, 0x83, 0x90, 0x64, 0x92, 0xe9,
0xa5, 0xa5, 0xf9, 0x6c, 0xc2, 0xe3, 0x5c, 0x59, 0x55, 0x4b, 0x8b, 0x73, 0xd9, 0xa4, 0xc7, 0x39,
0xa7, 0x2e, 0xad, 0x2d, 0x67, 0xc1, 0x63, 0x58, 0x28, 0xae, 0xac, 0x4c, 0xcd, 0x15, 0xb3, 0x29,
0x4f, 0x63, 0xfa, 0xcc, 0x6a, 0x71, 0x25, 0x9b, 0x0e, 0x74, 0x0b, 0x5f, 0x31, 0xe8, 0xbd, 0xa2,
0xb8, 0xb8, 0xb6, 0x90, 0xcd, 0x28, 0xc3, 0x30, 0xc8, 0x5f, 0x21, 0x3b, 0x31, 0xd4, 0x26, 0xc2,
0x9e, 0x66, 0x5b, 0x1d, 0xe1, 0x2c, 0xc3, 0x01, 0x01, 0x6a, 0x28, 0xf9, 0x19, 0x88, 0x33, 0xef,
0x42, 0x2f, 0xce, 0xcc, 0x4f, 0x4d, 0x17, 0xe7, 0xb5, 0xa5, 0xe5, 0xd5, 0xd2, 0xd2, 0xe2, 0xd4,
0x3c, 0xda, 0xce, 0x93, 0xa9, 0xc5, 0x0f, 0xad, 0x95, 0xd4, 0xe2, 0x2c, 0xda, 0xcf, 0x27, 0x5b,
0x2e, 0x4e, 0xad, 0xa2, 0x2c, 0x9a, 0x3f, 0x06, 0xa3, 0xdd, 0xe2, 0x4c, 0xb7, 0x95, 0x91, 0x7f,
0x26, 0x02, 0x23, 0x5d, 0x42, 0x66, 0xd7, 0x55, 0x74, 0x27, 0xc4, 0xb9, 0xa7, 0xf1, 0x24, 0x72,
0x6d, 0xd7, 0xd8, 0xcb, 0xfc, 0xae, 0x23, 0x91, 0x30, 0x9c, 0x3f, 0x91, 0x46, 0xb7, 0x49, 0xa4,
0x94, 0xa2, 0xc3, 0x9d, 0x1e, 0x88, 0x40, 0x6e, 0x3b, 0xee, 0x90, 0xf5, 0xde, 0x17, 0x58, 0xef,
0xb7, 0xb7, 0x77, 0xe0, 0xf0, 0xf6, 0x63, 0xe8, 0xe8, 0xc5, 0xb3, 0x11, 0xd8, 0xdb, 0xbd, 0xde,
0xe8, 0xda, 0x87, 0x3b, 0xa0, 0xbf, 0x46, 0xdc, 0x4d, 0x5b, 0xe6, 0xdc, 0x6b, 0xba, 0x44, 0x72,
0xda, 0xdc, 0x6e, 0x2b, 0x81, 0xf2, 0xa7, 0x82, 0xe8, 0x76, 0x45, 0x03, 0xef, 0x4d, 0x47, 0x4f,
0x1f, 0xea, 0x83, 0xcb, 0xba, 0x92, 0x77, 0xed, 0xe8, 0x15, 0x00, 0x55, 0xab, 0xde, 0x74, 0x79,
0x5e, 0xe5, 0x61, 0x26, 0xc9, 0x24, 0x6c, 0x09, 0xd3, 0x10, 0xd2, 0x74, 0xbd, 0xf6, 0x28, 0x6b,
0x07, 0x2e, 0x62, 0x0a, 0x27, 0x5a, 0x1d, 0x8d, 0xb1, 0x8e, 0x1e, 0xdc, 0x66, 0xa4, 0x1d, 0x29,
0xeb, 0x46, 0xc8, 0x1a, 0x66, 0x95, 0x58, 0xae, 0xe6, 0xb8, 0x0d, 0xa2, 0xd7, 0xaa, 0x56, 0x85,
0xc5, 0xd1, 0x44, 0x21, 0xbe, 0xa1, 0x9b, 0x0e, 0x51, 0x87, 0x78, 0xf3, 0x8a, 0x6c, 0xa5, 0x08,
0x96, 0x2c, 0x1a, 0x3e, 0x44, 0x7f, 0x00, 0xc1, 0x9b, 0x3d, 0x44, 0xfe, 0xd7, 0x03, 0x90, 0xf2,
0x55, 0x67, 0xca, 0x61, 0x48, 0x9f, 0xd5, 0xcf, 0xeb, 0x9a, 0xac, 0xb8, 0xb9, 0x25, 0x52, 0x54,
0xb6, 0x2c, 0xaa, 0xee, 0x1b, 0x61, 0x94, 0xa9, 0xe0, 0x18, 0xf1, 0x45, 0x86, 0xa9, 0x3b, 0x0e,
0x33, 0x5a, 0x82, 0xa9, 0x2a, 0xb4, 0x6d, 0x89, 0x36, 0xcd, 0xc8, 0x16, 0xe5, 0x66, 0x18, 0x61,
0x88, 0x1a, 0x06, 0xde, 0x6a, 0xdd, 0x24, 0x1a, 0xdd, 0x03, 0x38, 0x2c, 0x9e, 0x7a, 0x3d, 0x1b,
0xa6, 0x1a, 0x0b, 0x42, 0x81, 0xf6, 0xc8, 0x51, 0xe6, 0xe0, 0x0a, 0x06, 0xab, 0x10, 0x8b, 0x34,
0x74, 0x97, 0x68, 0xe4, 0x23, 0x4d, 0xd4, 0xd5, 0x74, 0xab, 0xac, 0x6d, 0xea, 0xce, 0x66, 0x6e,
0xd4, 0x4f, 0xb0, 0x9f, 0xea, 0xce, 0x09, 0xd5, 0x22, 0xd3, 0x9c, 0xb2, 0xca, 0x77, 0xa1, 0x9e,
0x52, 0x80, 0xbd, 0x8c, 0x08, 0x8d, 0x82, 0x63, 0xd6, 0x8c, 0x4d, 0x62, 0x9c, 0xd3, 0x9a, 0xee,
0xc6, 0x89, 0xdc, 0x01, 0x3f, 0x03, 0xeb, 0xe4, 0x0a, 0xd3, 0x99, 0xa1, 0x2a, 0x6b, 0xa8, 0xa1,
0xac, 0x40, 0x9a, 0xce, 0x47, 0xad, 0x7a, 0x1f, 0x76, 0xdb, 0x6e, 0xb0, 0x1c, 0x91, 0xe9, 0xb2,
0xb8, 0x7d, 0x46, 0x9c, 0x58, 0x12, 0x80, 0x05, 0xac, 0x4f, 0x0b, 0xf1, 0x95, 0xe5, 0x62, 0x71,
0x56, 0x4d, 0x49, 0x96, 0x93, 0x76, 0x83, 0xfa, 0x54, 0xc5, 0xf6, 0x6c, 0x9c, 0xe2, 0x3e, 0x55,
0xb1, 0xa5, 0x85, 0xd1, 0x5e, 0x86, 0xc1, 0x87, 0x8d, 0x7b, 0x17, 0x51, 0xac, 0x3b, 0xb9, 0x6c,
0xc0, 0x5e, 0x86, 0x31, 0xc7, 0x15, 0x84, 0x9b, 0x3b, 0xb8, 0x24, 0x2e, 0x6b, 0xd9, 0xcb, 0x0f,
0x1c, 0xee, 0x18, 0x65, 0x3b, 0x14, 0xdf, 0x58, 0xdf, 0xea, 0x04, 0x2a, 0x81, 0x37, 0xd6, 0xb7,
0xda, 0x61, 0x57, 0xb3, 0x0d, 0x58, 0x83, 0x18, 0x68, 0xf2, 0x72, 0x6e, 0x9f, 0x5f, 0xdb, 0xd7,
0xa0, 0x4c, 0xa2, 0x23, 0x1b, 0x1a, 0xb1, 0xf4, 0x75, 0x9c, 0x7b, 0xbd, 0x81, 0x37, 0x4e, 0x6e,
0xdc, 0xaf, 0x9c, 0x31, 0x8c, 0x22, 0x6b, 0x9d, 0x62, 0x8d, 0xca, 0x31, 0x18, 0xb6, 0xd7, 0xcf,
0x1a, 0xdc, 0xb9, 0x34, 0xe4, 0xd9, 0xa8, 0x5e, 0xcc, 0x5d, 0xc5, 0xcc, 0x34, 0x44, 0x1b, 0x98,
0x6b, 0x2d, 0x33, 0xb1, 0x72, 0x2d, 0x92, 0x3b, 0x9b, 0x7a, 0xa3, 0xce, 0x92, 0xb4, 0x83, 0x46,
0x25, 0xb9, 0xab, 0xb9, 0x2a, 0x97, 0x2f, 0x4a, 0xb1, 0x52, 0x84, 0x71, 0x3a, 0x78, 0x4b, 0xb7,
0x6c, 0xad, 0xe9, 0x10, 0xad, 0xd5, 0x45, 0x6f, 0x2e, 0xae, 0xa1, 0xdd, 0x52, 0x2f, 0x97, 0x6a,
0x6b, 0x0e, 0x06, 0x33, 0xa9, 0x24, 0xa7, 0xe7, 0x34, 0x8c, 0x36, 0xad, 0xaa, 0x85, 0x2e, 0x8e,
0x2d, 0x14, 0xcc, 0x17, 0x6c, 0xee, 0x8f, 0x03, 0xdb, 0x14, 0xdd, 0x6b, 0x7e, 0x6d, 0xee, 0x24,
0xea, 0x48, 0xb3, 0x53, 0x98, 0x2f, 0x40, 0xda, 0xef, 0x3b, 0x4a, 0x12, 0xb8, 0xf7, 0x60, 0x76,
0xc3, 0x8c, 0x3a, 0xb3, 0x34, 0x4b, 0x73, 0xe1, 0xbd, 0x45, 0x4c, 0x6c, 0x98, 0x93, 0xe7, 0x4b,
0xab, 0x45, 0x4d, 0x5d, 0x5b, 0x5c, 0x2d, 0x2d, 0x14, 0xb3, 0xd1, 0x63, 0xc9, 0xc4, 0x9b, 0x03,
0xd9, 0xfb, 0xf1, 0xaf, 0x2f, 0xff, 0x72, 0x1f, 0x64, 0x82, 0x75, 0xb0, 0xf2, 0x7f, 0xb0, 0x4f,
0x6e, 0x5a, 0x1d, 0xe2, 0x6a, 0x17, 0xaa, 0x0d, 0xe6, 0xce, 0x35, 0x9d, 0x57, 0x92, 0xde, 0x4c,
0x8c, 0x0a, 0x2d, 0xdc, 0xde, 0xdf, 0x83, 0x3a, 0x27, 0x99, 0x8a, 0x32, 0x0f, 0xe3, 0x68, 0x32,
0xac, 0x35, 0xad, 0xb2, 0xde, 0x28, 0x6b, 0xad, 0xe3, 0x02, 0x4d, 0x37, 0xd0, 0x0f, 0x1c, 0x9b,
0x67, 0x12, 0x8f, 0xe5, 0x72, 0xcb, 0x5e, 0x11, 0xca, 0xad, 0x10, 0x3b, 0x25, 0x54, 0xdb, 0xbc,
0x26, 0xba, 0x9d, 0xd7, 0x60, 0xed, 0x55, 0xd3, 0xeb, 0xe8, 0x36, 0x6e, 0x63, 0x8b, 0x55, 0x6f,
0x09, 0x35, 0x81, 0x82, 0x22, 0x7d, 0x7e, 0xff, 0xe6, 0xc0, 0x6f, 0xc7, 0xdf, 0x46, 0x21, 0xed,
0xaf, 0xe0, 0x68, 0x41, 0x6c, 0xb0, 0x30, 0x1f, 0x61, 0x51, 0xe0, 0xca, 0x1d, 0xeb, 0xbd, 0x89,
0x19, 0x1a, 0xff, 0x0b, 0xfd, 0xbc, 0xae, 0x52, 0x39, 0x92, 0xe6, 0x5e, 0xea, 0x6b, 0x84, 0x57,
0xeb, 0x09, 0x55, 0x3c, 0x61, 0xb0, 0xeb, 0x3f, 0xeb, 0x30, 0xee, 0x7e, 0xc6, 0x7d, 0xd5, 0xce,
0xdc, 0xa7, 0x56, 0x18, 0x79, 0xf2, 0xd4, 0x8a, 0xb6, 0xb8, 0xa4, 0x2e, 0x4c, 0xcd, 0xab, 0x02,
0xae, 0xec, 0x87, 0x98, 0xa9, 0xdf, 0xb7, 0x15, 0xcc, 0x14, 0x4c, 0xd4, 0xab, 0xe1, 0x91, 0x81,
0x1e, 0x79, 0x04, 0xe3, 0x33, 0x13, 0xbd, 0x8f, 0xae, 0x3f, 0x09, 0x71, 0x66, 0x2f, 0x05, 0x40,
0x58, 0x2c, 0xbb, 0x47, 0x49, 0x40, 0x6c, 0x66, 0x49, 0xa5, 0xee, 0x8f, 0xfe, 0xce, 0xa5, 0xda,
0x72, 0xa9, 0x38, 0x83, 0x2b, 0x20, 0x7f, 0x33, 0xf4, 0x73, 0x23, 0xd0, 0xa5, 0xe1, 0x99, 0x01,
0x41, 0xfc, 0x51, 0x70, 0x44, 0x64, 0xeb, 0xda, 0xc2, 0x74, 0x51, 0xcd, 0xf6, 0xf9, 0xa7, 0xf7,
0xc7, 0x11, 0x48, 0xf9, 0x0a, 0x2a, 0x9a, 0xca, 0x75, 0xd3, 0xb4, 0x2f, 0x68, 0xba, 0x59, 0xc5,
0x08, 0xc5, 0xe7, 0x07, 0x98, 0x68, 0x8a, 0x4a, 0x7a, 0xb5, 0xdf, 0x7f, 0xc4, 0x37, 0x9f, 0x8a,
0x40, 0xb6, 0xbd, 0x18, 0x6b, 0xeb, 0x60, 0xe4, 0x03, 0xed, 0xe0, 0x13, 0x11, 0xc8, 0x04, 0x2b,
0xb0, 0xb6, 0xee, 0x1d, 0xfe, 0x40, 0xbb, 0xf7, 0x78, 0x04, 0x06, 0x03, 0x75, 0xd7, 0x7f, 0x55,
0xef, 0x1e, 0x8b, 0xc2, 0x48, 0x17, 0x1c, 0x06, 0x20, 0x5e, 0xa0, 0xf2, 0x9a, 0xf9, 0x86, 0x5e,
0xde, 0x35, 0x41, 0xf3, 0xdf, 0xb2, 0xde, 0x70, 0x45, 0x3d, 0x8b, 0xf9, 0xb2, 0x5a, 0xc6, 0xa0,
0x5a, 0xdd, 0xa8, 0x62, 0xf9, 0xc6, 0x77, 0x2c, 0xbc, 0x6a, 0x1d, 0x6a, 0xc9, 0xf9, 0xf6, 0xf8,
0x7a, 0x50, 0xea, 0xb6, 0x53, 0x75, 0xab, 0xe7, 0xe9, 0xf1, 0x9c, 0xdc, 0x48, 0xd3, 0x2a, 0x36,
0xa6, 0x66, 0x65, 0x4b, 0xc9, 0x72, 0x3d, 0x6d, 0x8b, 0x54, 0xf4, 0x36, 0x6d, 0x1a, 0x86, 0xa2,
0x6a, 0x56, 0xb6, 0x78, 0xda, 0x58, 0x68, 0x96, 0xed, 0x26, 0x2d, 0x08, 0xb8, 0x1e, 0x8d, 0x7a,
0x11, 0x35, 0xc5, 0x65, 0x9e, 0x8a, 0xa8, 0xd8, 0x5a, 0x3b, 0xf8, 0xb4, 0x9a, 0xe2, 0x32, 0xae,
0x72, 0x04, 0x86, 0xf4, 0x4a, 0xa5, 0x41, 0xc9, 0x25, 0x11, 0x2f, 0x43, 0x33, 0x9e, 0x98, 0x29,
0x8e, 0x9d, 0x82, 0x84, 0xb4, 0x03, 0x4d, 0x2c, 0xd4, 0x12, 0x98, 0xf3, 0xd9, 0x39, 0x4a, 0x1f,
0xdd, 0xd4, 0x5b, 0xb2, 0x11, 0x5f, 0x5a, 0x75, 0xb4, 0xd6, 0x81, 0x5e, 0x1f, 0xb6, 0x27, 0xd4,
0x54, 0xd5, 0xf1, 0x4e, 0x70, 0xf2, 0xcf, 0x62, 0x7a, 0x0d, 0x1e, 0x48, 0x2a, 0xb3, 0x90, 0x30,
0x6d, 0xf4, 0x0f, 0x8a, 0xe0, 0xa7, 0xe1, 0x47, 0x43, 0xce, 0x30, 0x27, 0xe6, 0x85, 0xbe, 0xea,
0x21, 0xc7, 0x7e, 0x11, 0x81, 0x84, 0x14, 0x63, 0xa2, 0x88, 0xd5, 0x75, 0x77, 0x93, 0xd1, 0xc5,
0xa7, 0xfb, 0xb2, 0x11, 0x95, 0x3d, 0x53, 0x39, 0x56, 0x33, 0x16, 0x73, 0x01, 0x21, 0xa7, 0xcf,
0x74, 0x5e, 0x4d, 0xa2, 0x97, 0x59, 0x81, 0x6b, 0xd7, 0x6a, 0x38, 0x93, 0x8e, 0x9c, 0x57, 0x21,
0x9f, 0x11, 0x62, 0x7a, 0x2e, 0xee, 0x36, 0xf4, 0xaa, 0x19, 0xd0, 0x8d, 0x31, 0xdd, 0xac, 0x6c,
0xf0, 0x94, 0x0b, 0xb0, 0x5f, 0xf2, 0x96, 0x89, 0xab, 0x63, 0xf1, 0x5c, 0x6e, 0x81, 0xfa, 0xd9,
0x69, 0xd7, 0x3e, 0xa1, 0x30, 0x2b, 0xda, 0x25, 0x76, 0xfa, 0x34, 0x16, 0xb2, 0x76, 0xad, 0xdd,
0x12, 0xd3, 0xd9, 0xb6, 0x7d, 0x97, 0x73, 0x57, 0xe4, 0x5e, 0x68, 0x15, 0x15, 0xcf, 0xf4, 0x45,
0xe7, 0x96, 0xa7, 0x9f, 0xef, 0x1b, 0x9b, 0xe3, 0xb8, 0x65, 0x69, 0x41, 0x95, 0x6c, 0x98, 0xc4,
0xa0, 0xd6, 0x81, 0xa7, 0xaf, 0x84, 0x1b, 0x2a, 0x55, 0x77, 0xb3, 0xb9, 0x3e, 0x81, 0x6f, 0x98,
0xac, 0xd8, 0x15, 0xbb, 0xf5, 0x39, 0x83, 0x3e, 0xb1, 0x07, 0x76, 0x27, 0x3e, 0x69, 0x24, 0x3d,
0xe9, 0x58, 0xe8, 0xf7, 0x8f, 0xc2, 0x22, 0x8c, 0x08, 0x65, 0x8d, 0x9d, 0xa9, 0xf2, 0x12, 0x54,
0xd9, 0x71, 0x43, 0x9e, 0x7b, 0xf1, 0x0d, 0x96, 0x12, 0xd4, 0x61, 0x01, 0xa5, 0x6d, 0xbc, 0x48,
0x2d, 0xa8, 0x70, 0x59, 0x80, 0x8f, 0xfb, 0x30, 0x6e, 0xb9, 0x77, 0x66, 0x7c, 0x59, 0x30, 0x8e,
0xf8, 0x18, 0x57, 0x04, 0xb4, 0x30, 0x03, 0x83, 0xbb, 0xe1, 0xfa, 0x99, 0xe0, 0x4a, 0x13, 0x3f,
0xc9, 0x1c, 0x0c, 0x31, 0x12, 0xa3, 0xe9, 0xb8, 0x76, 0x8d, 0x05, 0x88, 0x9d, 0x69, 0x7e, 0xfe,
0x06, 0x77, 0xaa, 0x0c, 0x85, 0xcd, 0x78, 0xa8, 0xc2, 0xdd, 0x30, 0x4a, 0x25, 0x6c, 0x0d, 0xfa,
0xd9, 0xc2, 0x8f, 0x10, 0x72, 0xbf, 0x7a, 0x80, 0xfb, 0xde, 0x88, 0x47, 0xe0, 0xe3, 0xf5, 0xcd,
0x44, 0x85, 0xb8, 0x18, 0xdb, 0x70, 0xff, 0x67, 0x9a, 0xca, 0x8e, 0xdf, 0x18, 0x72, 0x8f, 0xbe,
0x15, 0x9c, 0x89, 0x39, 0x8e, 0x9c, 0x32, 0xcd, 0xc2, 0x1a, 0xec, 0xeb, 0x32, 0xb3, 0x3d, 0x70,
0x3e, 0x26, 0x38, 0x47, 0x3b, 0x66, 0x97, 0xd2, 0x2e, 0x83, 0x94, 0x7b, 0xf3, 0xd1, 0x03, 0xe7,
0xe3, 0x82, 0x53, 0x11, 0x58, 0x39, 0x2d, 0x94, 0xf1, 0x14, 0x0c, 0xe3, 0x4e, 0x7d, 0xdd, 0x76,
0xc4, 0xbe, 0xb7, 0x07, 0xba, 0x27, 0x04, 0xdd, 0x90, 0x00, 0xb2, 0x5d, 0x30, 0xe5, 0xba, 0x0d,
0x12, 0x1b, 0xb8, 0x01, 0xea, 0x81, 0xe2, 0x49, 0x41, 0x31, 0x40, 0xf5, 0x29, 0x74, 0x0a, 0xd2,
0x15, 0x5b, 0x84, 0xe1, 0x70, 0xf8, 0x53, 0x02, 0x9e, 0x92, 0x18, 0x41, 0x51, 0xb7, 0xeb, 0x4d,
0x93, 0xc6, 0xe8, 0x70, 0x8a, 0x2f, 0x4b, 0x0a, 0x89, 0x11, 0x14, 0xbb, 0x30, 0xeb, 0x57, 0x24,
0x85, 0xe3, 0xb3, 0xe7, 0x9d, 0xf4, 0xac, 0xd7, 0xdc, 0xb2, 0xad, 0x5e, 0x3a, 0xf1, 0xb4, 0x60,
0x00, 0x01, 0xa1, 0x04, 0xb7, 0x43, 0xb2, 0xd7, 0x89, 0xf8, 0xaa, 0x80, 0x27, 0x88, 0x9c, 0x01,
0x5c, 0x67, 0x32, 0xc8, 0xd0, 0x6f, 0x2b, 0xe1, 0x14, 0x5f, 0x13, 0x14, 0x19, 0x1f, 0x4c, 0x0c,
0xc3, 0x25, 0x8e, 0x8b, 0x5b, 0xf5, 0x1e, 0x48, 0x9e, 0x95, 0xc3, 0x10, 0x10, 0x61, 0xca, 0x75,
0x62, 0x19, 0x9b, 0xbd, 0x31, 0x3c, 0x27, 0x4d, 0x29, 0x31, 0x94, 0x02, 0x23, 0x4f, 0x4d, 0x6f,
0xe0, 0xe6, 0xda, 0xec, 0x69, 0x3a, 0xbe, 0x2e, 0x38, 0xd2, 0x1e, 0x48, 0x58, 0xa4, 0x69, 0xed,
0x86, 0xe6, 0x79, 0x69, 0x11, 0x1f, 0x4c, 0x2c, 0x3d, 0xdc, 0x99, 0xd2, 0x4a, 0x62, 0x37, 0x6c,
0xdf, 0x90, 0x4b, 0x8f, 0x63, 0x17, 0xfc, 0x8c, 0x38, 0xd3, 0x0e, 0x6e, 0xc1, 0x7b, 0xa1, 0xf9,
0xa6, 0x9c, 0x69, 0x06, 0xa0, 0xe0, 0x33, 0xb0, 0xbf, 0x6b, 0xa8, 0xef, 0x81, 0xec, 0x5b, 0x82,
0x6c, 0x6f, 0x97, 0x70, 0x2f, 0x42, 0xc2, 0x6e, 0x29, 0xbf, 0x2d, 0x43, 0x02, 0x69, 0xe3, 0x5a,
0xa6, 0x65, 0xac, 0xa3, 0x6f, 0xec, 0xce, 0x6a, 0xdf, 0x91, 0x56, 0xe3, 0xd8, 0x80, 0xd5, 0x56,
0x61, 0xaf, 0x60, 0xdc, 0xdd, 0xbc, 0xbe, 0x20, 0x03, 0x2b, 0x47, 0xaf, 0x05, 0x67, 0xf7, 0xc3,
0x30, 0xe6, 0x99, 0x53, 0x56, 0x60, 0x8e, 0x46, 0x0f, 0x06, 0xc2, 0x99, 0x5f, 0x14, 0xcc, 0x32,
0xe2, 0x7b, 0x25, 0x9c, 0xb3, 0xa0, 0xd7, 0x29, 0xf9, 0x69, 0xc8, 0x49, 0xf2, 0xa6, 0x85, 0x05,
0xbe, 0x5d, 0xb1, 0x70, 0x1a, 0xcb, 0x3d, 0x50, 0x7f, 0xb7, 0x6d, 0xaa, 0xd6, 0x7c, 0x70, 0xca,
0x5c, 0x82, 0xac, 0x57, 0x6f, 0x68, 0xd5, 0x5a, 0xdd, 0xc6, 0xd2, 0x72, 0x67, 0xc6, 0xef, 0xc9,
0x99, 0xf2, 0x70, 0x25, 0x06, 0x2b, 0x14, 0x21, 0xc3, 0x1e, 0x7b, 0x75, 0xc9, 0xef, 0x0b, 0xa2,
0xc1, 0x16, 0x4a, 0x04, 0x0e, 0xac, 0x94, 0xb0, 0xe6, 0xed, 0x25, 0xfe, 0xfd, 0x40, 0x06, 0x0e,
0x01, 0xe1, 0xde, 0x37, 0xd4, 0x96, 0x89, 0x95, 0xb0, 0xcf, 0xaf, 0xb9, 0x8f, 0x5e, 0x12, 0x6b,
0x36, 0x98, 0x88, 0x0b, 0xf3, 0xd4, 0x3c, 0xc1, 0x74, 0x19, 0x4e, 0xf6, 0xc0, 0x25, 0xcf, 0x42,
0x81, 0x6c, 0x59, 0x38, 0x09, 0x83, 0x81, 0x54, 0x19, 0x4e, 0xf5, 0xa0, 0xa0, 0x4a, 0xfb, 0x33,
0x65, 0xe1, 0x66, 0x88, 0xd1, 0xb4, 0x17, 0x0e, 0xff, 0x98, 0x80, 0x33, 0xf5, 0xc2, 0xff, 0x43,
0x42, 0xa6, 0xbb, 0x70, 0xe8, 0xc7, 0x05, 0xd4, 0x83, 0x50, 0xb8, 0x4c, 0x75, 0xe1, 0xf0, 0x4f,
0x48, 0xb8, 0x84, 0x50, 0x78, 0xef, 0x26, 0x7c, 0xe9, 0x53, 0x31, 0x11, 0xae, 0xa4, 0xed, 0xe8,
0x37, 0x1f, 0x9e, 0xe3, 0xc2, 0xd1, 0x0f, 0x89, 0x97, 0x4b, 0x44, 0xe1, 0x56, 0x88, 0xf7, 0x68,
0xf0, 0x4f, 0x0b, 0x28, 0xd7, 0xc7, 0x0c, 0x92, 0xf2, 0xe5, 0xb5, 0x70, 0xf8, 0x67, 0x04, 0xdc,
0x8f, 0xa2, 0x5d, 0x17, 0x79, 0x2d, 0x9c, 0xe0, 0xb3, 0xb2, 0xeb, 0x02, 0x41, 0xcd, 0x26, 0x53,
0x5a, 0x38, 0xfa, 0x73, 0xd2, 0xea, 0x12, 0x82, 0xab, 0x29, 0xe9, 0x85, 0xa9, 0x70, 0xfc, 0xe7,
0x05, 0xbe, 0x85, 0xa1, 0x16, 0xf0, 0x85, 0xc9, 0x70, 0x8a, 0x2f, 0x48, 0x0b, 0xf8, 0x50, 0x74,
0x19, 0xb5, 0xa7, 0xbe, 0x70, 0xa6, 0x2f, 0xca, 0x65, 0xd4, 0x96, 0xf9, 0xe8, 0x6c, 0xb2, 0x68,
0x11, 0x4e, 0xf1, 0xb0, 0x9c, 0x4d, 0xa6, 0x4f, 0xbb, 0xd1, 0x9e, 0x4b, 0xc2, 0x39, 0xbe, 0x24,
0xbb, 0xd1, 0x96, 0x4a, 0x30, 0x33, 0x29, 0x9d, 0x79, 0x24, 0x9c, 0xef, 0x11, 0xc1, 0x37, 0xdc,
0x91, 0x46, 0x0a, 0xf7, 0xc0, 0xde, 0xee, 0x39, 0x24, 0x9c, 0xf5, 0xd1, 0x4b, 0x6d, 0x55, 0xbf,
0x3f, 0x85, 0x60, 0xca, 0x1b, 0xed, 0x96, 0x3f, 0xc2, 0x69, 0x1f, 0xbb, 0x14, 0xdc, 0xd8, 0xf9,
0xd3, 0x07, 0x56, 0x68, 0xd0, 0x0a, 0xdd, 0xe1, 0x5c, 0x4f, 0x08, 0x2e, 0x1f, 0x88, 0x2e, 0x0d,
0x11, 0xb9, 0xc3, 0xf1, 0x4f, 0xca, 0xa5, 0x21, 0x10, 0x08, 0x4e, 0x58, 0x4d, 0xd3, 0xa4, 0xce,
0xa1, 0xec, 0xfc, 0x93, 0x86, 0xdc, 0x9f, 0xde, 0x15, 0x0b, 0x43, 0x02, 0x30, 0x86, 0xc6, 0x49,
0x6d, 0x1d, 0x6d, 0x10, 0x82, 0xfc, 0xf3, 0xbb, 0x32, 0x20, 0x50, 0x6d, 0x5c, 0x4f, 0xc0, 0x37,
0x8d, 0xec, 0x0c, 0x3b, 0x04, 0xfb, 0x97, 0x77, 0xc5, 0x67, 0xd6, 0x16, 0xa4, 0x45, 0xc0, 0x3f,
0xda, 0xee, 0x4c, 0xf0, 0x56, 0x90, 0x80, 0x6d, 0x34, 0x6f, 0x83, 0x01, 0xfa, 0xcb, 0x0e, 0x57,
0xaf, 0x84, 0xa1, 0xff, 0x2a, 0xd0, 0x52, 0x9f, 0x1a, 0xac, 0x66, 0x37, 0x08, 0xde, 0x3a, 0x61,
0xd8, 0xbf, 0x09, 0xac, 0x07, 0xa0, 0x60, 0x43, 0x77, 0xdc, 0x5e, 0xc6, 0xfd, 0x77, 0x09, 0x96,
0x00, 0xda, 0x69, 0x7a, 0x7f, 0x8e, 0x6c, 0x85, 0x61, 0xdf, 0x96, 0x9d, 0x16, 0xfa, 0x18, 0x00,
0x93, 0xf4, 0x96, 0xff, 0xf4, 0x20, 0x04, 0xfc, 0x0f, 0x01, 0x6e, 0x21, 0xa6, 0x0f, 0x77, 0x3f,
0xda, 0x81, 0x39, 0x7b, 0xce, 0xe6, 0x87, 0x3a, 0xf0, 0x70, 0x1c, 0xae, 0x41, 0x1d, 0xcc, 0xaf,
0x93, 0x7c, 0x4d, 0x7a, 0x2b, 0x72, 0xd2, 0xe3, 0x91, 0x87, 0x33, 0x9e, 0x60, 0x6c, 0x77, 0xc7,
0x3a, 0xf9, 0x9f, 0x44, 0x21, 0x31, 0x83, 0x60, 0xfd, 0x82, 0xbe, 0xa5, 0xd4, 0x61, 0x84, 0xde,
0xe3, 0xd2, 0x64, 0x07, 0x0c, 0xc2, 0xd1, 0xc5, 0x89, 0xdc, 0xf5, 0x13, 0xad, 0xb7, 0x4a, 0xc4,
0x44, 0x17, 0x75, 0xf6, 0x81, 0x69, 0x3a, 0xfb, 0xca, 0xef, 0xc6, 0xf7, 0x7c, 0xf2, 0xf7, 0xe3,
0x89, 0x85, 0xad, 0x7b, 0xaa, 0xa6, 0x43, 0xcf, 0x6c, 0x8d, 0x4e, 0x5d, 0xe5, 0xc1, 0x08, 0x1c,
0xe8, 0xc2, 0xb1, 0x28, 0x96, 0x83, 0x38, 0xa8, 0xbd, 0xa9, 0xc7, 0x57, 0x4b, 0x18, 0xef, 0x42,
0x3a, 0xf0, 0xfa, 0x03, 0xc6, 0xf6, 0xfa, 0x63, 0x67, 0x20, 0xb7, 0xdd, 0x48, 0xe8, 0x8f, 0xc3,
0x70, 0xbe, 0xc5, 0x0f, 0xc6, 0xe8, 0xad, 0x72, 0xa4, 0xf5, 0x4b, 0x15, 0xfa, 0x83, 0x84, 0x61,
0x5f, 0xef, 0xc4, 0xcb, 0x78, 0x7b, 0xa1, 0xef, 0x44, 0x64, 0x4c, 0x87, 0x43, 0x61, 0x3d, 0xfd,
0x37, 0x5f, 0x91, 0x3f, 0x08, 0xfd, 0x5c, 0x48, 0x7f, 0xde, 0x56, 0xb2, 0xdc, 0x5b, 0x6e, 0x62,
0x54, 0x51, 0x35, 0x5e, 0xa5, 0x0f, 0xd3, 0xf3, 0xaf, 0xbc, 0x76, 0x70, 0xcf, 0x2f, 0xf1, 0xfa,
0x0d, 0x5e, 0xaf, 0xbe, 0x76, 0x30, 0xf2, 0x26, 0x5e, 0x6f, 0xe3, 0xf5, 0x0e, 0x5e, 0xf7, 0xbf,
0x7e, 0x30, 0xf2, 0x1c, 0x5e, 0x2f, 0xe0, 0xf5, 0x23, 0xbc, 0x5e, 0xc2, 0xeb, 0x95, 0xd7, 0x51,
0x1f, 0xaf, 0x57, 0xf1, 0xfe, 0x4d, 0xfc, 0xff, 0x36, 0xfe, 0x7f, 0x07, 0xaf, 0xfb, 0xff, 0x70,
0x70, 0xcf, 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, 0x76, 0x38, 0x95, 0x63, 0x01, 0x2d, 0x00, 0x00,
}
r := bytes.NewReader(gzipped)
gzipr, err := compress_gzip.NewReader(r)
if err != nil {
panic(err)
}
ungzipped, err := io_ioutil.ReadAll(gzipr)
if err != nil {
panic(err)
}
if err := github_com_gogo_protobuf_proto.Unmarshal(ungzipped, d); err != nil {
panic(err)
}
return d
}
func (this *Castaway) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*Castaway)
if !ok {
that2, ok := that.(Castaway)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *Castaway")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *Castaway but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *Castaway but is not nil && this == nil")
}
if len(this.CastMapValueMessage) != len(that1.CastMapValueMessage) {
return fmt.Errorf("CastMapValueMessage this(%v) Not Equal that(%v)", len(this.CastMapValueMessage), len(that1.CastMapValueMessage))
}
for i := range this.CastMapValueMessage {
a := (Wilson)(this.CastMapValueMessage[i])
b := (Wilson)(that1.CastMapValueMessage[i])
if !(&a).Equal(&b) {
return fmt.Errorf("CastMapValueMessage this[%v](%v) Not Equal that[%v](%v)", i, this.CastMapValueMessage[i], i, that1.CastMapValueMessage[i])
}
}
if len(this.CastMapValueMessageNullable) != len(that1.CastMapValueMessageNullable) {
return fmt.Errorf("CastMapValueMessageNullable this(%v) Not Equal that(%v)", len(this.CastMapValueMessageNullable), len(that1.CastMapValueMessageNullable))
}
for i := range this.CastMapValueMessageNullable {
a := (*Wilson)(this.CastMapValueMessageNullable[i])
b := (*Wilson)(that1.CastMapValueMessageNullable[i])
if !a.Equal(b) {
return fmt.Errorf("CastMapValueMessageNullable this[%v](%v) Not Equal that[%v](%v)", i, this.CastMapValueMessageNullable[i], i, that1.CastMapValueMessageNullable[i])
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *Castaway) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Castaway)
if !ok {
that2, ok := that.(Castaway)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if len(this.CastMapValueMessage) != len(that1.CastMapValueMessage) {
return false
}
for i := range this.CastMapValueMessage {
a := (Wilson)(this.CastMapValueMessage[i])
b := (Wilson)(that1.CastMapValueMessage[i])
if !(&a).Equal(&b) {
return false
}
}
if len(this.CastMapValueMessageNullable) != len(that1.CastMapValueMessageNullable) {
return false
}
for i := range this.CastMapValueMessageNullable {
a := (*Wilson)(this.CastMapValueMessageNullable[i])
b := (*Wilson)(that1.CastMapValueMessageNullable[i])
if !a.Equal(b) {
return false
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (this *Wilson) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*Wilson)
if !ok {
that2, ok := that.(Wilson)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *Wilson")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *Wilson but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *Wilson but is not nil && this == nil")
}
if this.Int64 != nil && that1.Int64 != nil {
if *this.Int64 != *that1.Int64 {
return fmt.Errorf("Int64 this(%v) Not Equal that(%v)", *this.Int64, *that1.Int64)
}
} else if this.Int64 != nil {
return fmt.Errorf("this.Int64 == nil && that.Int64 != nil")
} else if that1.Int64 != nil {
return fmt.Errorf("Int64 this(%v) Not Equal that(%v)", this.Int64, that1.Int64)
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *Wilson) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Wilson)
if !ok {
that2, ok := that.(Wilson)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Int64 != nil && that1.Int64 != nil {
if *this.Int64 != *that1.Int64 {
return false
}
} else if this.Int64 != nil {
return false
} else if that1.Int64 != nil {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
type CastawayFace interface {
Proto() github_com_gogo_protobuf_proto.Message
GetCastMapValueMessage() map[int32]MyWilson
GetCastMapValueMessageNullable() map[int32]*MyWilson
}
func (this *Castaway) Proto() github_com_gogo_protobuf_proto.Message {
return this
}
func (this *Castaway) TestProto() github_com_gogo_protobuf_proto.Message {
return NewCastawayFromFace(this)
}
func (this *Castaway) GetCastMapValueMessage() map[int32]MyWilson {
return this.CastMapValueMessage
}
func (this *Castaway) GetCastMapValueMessageNullable() map[int32]*MyWilson {
return this.CastMapValueMessageNullable
}
func NewCastawayFromFace(that CastawayFace) *Castaway {
this := &Castaway{}
this.CastMapValueMessage = that.GetCastMapValueMessage()
this.CastMapValueMessageNullable = that.GetCastMapValueMessageNullable()
return this
}
type WilsonFace interface {
Proto() github_com_gogo_protobuf_proto.Message
GetInt64() *int64
}
func (this *Wilson) Proto() github_com_gogo_protobuf_proto.Message {
return this
}
func (this *Wilson) TestProto() github_com_gogo_protobuf_proto.Message {
return NewWilsonFromFace(this)
}
func (this *Wilson) GetInt64() *int64 {
return this.Int64
}
func NewWilsonFromFace(that WilsonFace) *Wilson {
this := &Wilson{}
this.Int64 = that.GetInt64()
return this
}
func (this *Castaway) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 6)
s = append(s, "&castvalue.Castaway{")
keysForCastMapValueMessage := make([]int32, 0, len(this.CastMapValueMessage))
for k := range this.CastMapValueMessage {
keysForCastMapValueMessage = append(keysForCastMapValueMessage, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessage)
mapStringForCastMapValueMessage := "map[int32]MyWilson{"
for _, k := range keysForCastMapValueMessage {
mapStringForCastMapValueMessage += fmt.Sprintf("%#v: %#v,", k, this.CastMapValueMessage[k])
}
mapStringForCastMapValueMessage += "}"
if this.CastMapValueMessage != nil {
s = append(s, "CastMapValueMessage: "+mapStringForCastMapValueMessage+",\n")
}
keysForCastMapValueMessageNullable := make([]int32, 0, len(this.CastMapValueMessageNullable))
for k := range this.CastMapValueMessageNullable {
keysForCastMapValueMessageNullable = append(keysForCastMapValueMessageNullable, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessageNullable)
mapStringForCastMapValueMessageNullable := "map[int32]*MyWilson{"
for _, k := range keysForCastMapValueMessageNullable {
mapStringForCastMapValueMessageNullable += fmt.Sprintf("%#v: %#v,", k, this.CastMapValueMessageNullable[k])
}
mapStringForCastMapValueMessageNullable += "}"
if this.CastMapValueMessageNullable != nil {
s = append(s, "CastMapValueMessageNullable: "+mapStringForCastMapValueMessageNullable+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func (this *Wilson) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 5)
s = append(s, "&castvalue.Wilson{")
if this.Int64 != nil {
s = append(s, "Int64: "+valueToGoStringCastvalue(this.Int64, "int64")+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func valueToGoStringCastvalue(v interface{}, typ string) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
return "nil"
}
pv := reflect.Indirect(rv).Interface()
return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv)
}
func extensionToGoStringCastvalue(e map[int32]github_com_gogo_protobuf_proto.Extension) string {
if e == nil {
return "nil"
}
s := "map[int32]proto.Extension{"
keys := make([]int, 0, len(e))
for k := range e {
keys = append(keys, int(k))
}
sort.Ints(keys)
ss := []string{}
for _, k := range keys {
ss = append(ss, strconv.Itoa(k)+": "+e[int32(k)].GoString())
}
s += strings.Join(ss, ",") + "}"
return s
}
func NewPopulatedCastaway(r randyCastvalue, easy bool) *Castaway {
this := &Castaway{}
if r.Intn(10) != 0 {
v1 := r.Intn(10)
this.CastMapValueMessage = make(map[int32]MyWilson)
for i := 0; i < v1; i++ {
this.CastMapValueMessage[int32(r.Int31())] = (MyWilson)(*NewPopulatedWilson(r, easy))
}
}
if r.Intn(10) != 0 {
v2 := r.Intn(10)
this.CastMapValueMessageNullable = make(map[int32]*MyWilson)
for i := 0; i < v2; i++ {
this.CastMapValueMessageNullable[int32(r.Int31())] = (*MyWilson)(NewPopulatedWilson(r, easy))
}
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedCastvalue(r, 3)
}
return this
}
func NewPopulatedWilson(r randyCastvalue, easy bool) *Wilson {
this := &Wilson{}
if r.Intn(10) != 0 {
v3 := int64(r.Int63())
if r.Intn(2) == 0 {
v3 *= -1
}
this.Int64 = &v3
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedCastvalue(r, 2)
}
return this
}
type randyCastvalue interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneCastvalue(r randyCastvalue) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringCastvalue(r randyCastvalue) string {
v4 := r.Intn(100)
tmps := make([]rune, v4)
for i := 0; i < v4; i++ {
tmps[i] = randUTF8RuneCastvalue(r)
}
return string(tmps)
}
func randUnrecognizedCastvalue(r randyCastvalue, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldCastvalue(data, r, fieldNumber, wire)
}
return data
}
func randFieldCastvalue(data []byte, r randyCastvalue, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateCastvalue(data, uint64(key))
v5 := r.Int63()
if r.Intn(2) == 0 {
v5 *= -1
}
data = encodeVarintPopulateCastvalue(data, uint64(v5))
case 1:
data = encodeVarintPopulateCastvalue(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateCastvalue(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateCastvalue(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateCastvalue(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateCastvalue(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
func (m *Castaway) Size() (n int) {
var l int
_ = l
if len(m.CastMapValueMessage) > 0 {
for k, v := range m.CastMapValueMessage {
_ = k
_ = v
l = ((*Wilson)(&v)).Size()
mapEntrySize := 1 + sovCastvalue(uint64(k)) + 1 + l + sovCastvalue(uint64(l))
n += mapEntrySize + 1 + sovCastvalue(uint64(mapEntrySize))
}
}
if len(m.CastMapValueMessageNullable) > 0 {
for k, v := range m.CastMapValueMessageNullable {
_ = k
_ = v
l = 0
if v != nil {
l = ((*Wilson)(v)).Size()
}
mapEntrySize := 1 + sovCastvalue(uint64(k)) + 1 + l + sovCastvalue(uint64(l))
n += mapEntrySize + 1 + sovCastvalue(uint64(mapEntrySize))
}
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func (m *Wilson) Size() (n int) {
var l int
_ = l
if m.Int64 != nil {
n += 1 + sovCastvalue(uint64(*m.Int64))
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func sovCastvalue(x uint64) (n int) {
for {
n++
x >>= 7
if x == 0 {
break
}
}
return n
}
func sozCastvalue(x uint64) (n int) {
return sovCastvalue(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (this *Castaway) String() string {
if this == nil {
return "nil"
}
keysForCastMapValueMessage := make([]int32, 0, len(this.CastMapValueMessage))
for k := range this.CastMapValueMessage {
keysForCastMapValueMessage = append(keysForCastMapValueMessage, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessage)
mapStringForCastMapValueMessage := "map[int32]MyWilson{"
for _, k := range keysForCastMapValueMessage {
mapStringForCastMapValueMessage += fmt.Sprintf("%v: %v,", k, this.CastMapValueMessage[k])
}
mapStringForCastMapValueMessage += "}"
keysForCastMapValueMessageNullable := make([]int32, 0, len(this.CastMapValueMessageNullable))
for k := range this.CastMapValueMessageNullable {
keysForCastMapValueMessageNullable = append(keysForCastMapValueMessageNullable, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessageNullable)
mapStringForCastMapValueMessageNullable := "map[int32]*MyWilson{"
for _, k := range keysForCastMapValueMessageNullable {
mapStringForCastMapValueMessageNullable += fmt.Sprintf("%v: %v,", k, this.CastMapValueMessageNullable[k])
}
mapStringForCastMapValueMessageNullable += "}"
s := strings.Join([]string{`&Castaway{`,
`CastMapValueMessage:` + mapStringForCastMapValueMessage + `,`,
`CastMapValueMessageNullable:` + mapStringForCastMapValueMessageNullable + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func (this *Wilson) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&Wilson{`,
`Int64:` + valueToStringCastvalue(this.Int64) + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func valueToStringCastvalue(v interface{}) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
return "nil"
}
pv := reflect.Indirect(rv).Interface()
return fmt.Sprintf("*%v", pv)
}
func (m *Castaway) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *Castaway) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if len(m.CastMapValueMessage) > 0 {
for k := range m.CastMapValueMessage {
data[i] = 0xa
i++
v := m.CastMapValueMessage[k]
msgSize := ((*Wilson)(&v)).Size()
mapSize := 1 + sovCastvalue(uint64(k)) + 1 + msgSize + sovCastvalue(uint64(msgSize))
i = encodeVarintCastvalue(data, i, uint64(mapSize))
data[i] = 0x8
i++
i = encodeVarintCastvalue(data, i, uint64(k))
data[i] = 0x12
i++
i = encodeVarintCastvalue(data, i, uint64(((*Wilson)(&v)).Size()))
n1, err := ((*Wilson)(&v)).MarshalTo(data[i:])
if err != nil {
return 0, err
}
i += n1
}
}
if len(m.CastMapValueMessageNullable) > 0 {
for k := range m.CastMapValueMessageNullable {
data[i] = 0x12
i++
v := m.CastMapValueMessageNullable[k]
if v == nil {
return 0, errors.New("proto: map has nil element")
}
msgSize := ((*Wilson)(v)).Size()
mapSize := 1 + sovCastvalue(uint64(k)) + 1 + msgSize + sovCastvalue(uint64(msgSize))
i = encodeVarintCastvalue(data, i, uint64(mapSize))
data[i] = 0x8
i++
i = encodeVarintCastvalue(data, i, uint64(k))
data[i] = 0x12
i++
i = encodeVarintCastvalue(data, i, uint64(((*Wilson)(v)).Size()))
n2, err := ((*Wilson)(v)).MarshalTo(data[i:])
if err != nil {
return 0, err
}
i += n2
}
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func (m *Wilson) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *Wilson) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if m.Int64 != nil {
data[i] = 0x8
i++
i = encodeVarintCastvalue(data, i, uint64(*m.Int64))
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func encodeFixed64Castvalue(data []byte, offset int, v uint64) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
data[offset+4] = uint8(v >> 32)
data[offset+5] = uint8(v >> 40)
data[offset+6] = uint8(v >> 48)
data[offset+7] = uint8(v >> 56)
return offset + 8
}
func encodeFixed32Castvalue(data []byte, offset int, v uint32) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
return offset + 4
}
func encodeVarintCastvalue(data []byte, offset int, v uint64) int {
for v >= 1<<7 {
data[offset] = uint8(v&0x7f | 0x80)
v >>= 7
offset++
}
data[offset] = uint8(v)
return offset + 1
}
var fileDescriptorCastvalue = []byte{
// 343 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0x52, 0x4b, 0xce, 0xcf, 0x4d,
0xca, 0x2f, 0xd6, 0x2f, 0xcd, 0x2b, 0x4e, 0x4c, 0x4b, 0xcd, 0x4d, 0x2c, 0x2a, 0xce, 0x48, 0xcc,
0x49, 0x2d, 0xd2, 0x4f, 0x4e, 0x2c, 0x2e, 0x29, 0x4b, 0xcc, 0x29, 0x4d, 0xd5, 0x2b, 0x28, 0xca,
0x2f, 0xc9, 0x17, 0xe2, 0x84, 0x0b, 0x48, 0xe9, 0xa6, 0x67, 0x96, 0x64, 0x94, 0x26, 0xe9, 0x01,
0x75, 0xea, 0xa7, 0xe7, 0xa7, 0xe7, 0xeb, 0x83, 0x55, 0x24, 0x95, 0xa6, 0x81, 0x79, 0x60, 0x0e,
0x98, 0x05, 0xd1, 0xa9, 0x74, 0x90, 0x99, 0x8b, 0xc3, 0x19, 0xa8, 0x39, 0xb1, 0x3c, 0xb1, 0x52,
0xa8, 0x80, 0x4b, 0x18, 0xc4, 0xf6, 0x4d, 0x2c, 0x08, 0x03, 0x99, 0xe5, 0x9b, 0x5a, 0x5c, 0x9c,
0x98, 0x9e, 0x2a, 0xc1, 0xa8, 0xc0, 0xac, 0xc1, 0x6d, 0xa4, 0xa3, 0x87, 0xb0, 0x15, 0xa6, 0x43,
0x0f, 0x8b, 0x72, 0xd7, 0xbc, 0x92, 0xa2, 0x4a, 0x27, 0x81, 0x13, 0xf7, 0xe4, 0x19, 0xba, 0xee,
0xcb, 0x73, 0xf8, 0x56, 0x86, 0x67, 0xe6, 0x14, 0xe7, 0xe7, 0x05, 0x09, 0x27, 0x63, 0xaa, 0x15,
0x6a, 0x61, 0xe4, 0x92, 0xc6, 0x62, 0x86, 0x5f, 0x69, 0x4e, 0x4e, 0x62, 0x52, 0x4e, 0xaa, 0x04,
0x13, 0xd8, 0x6a, 0x13, 0x22, 0xad, 0x86, 0x69, 0x83, 0x38, 0x81, 0x07, 0xc5, 0x7a, 0xe9, 0x64,
0xdc, 0xea, 0xa5, 0x22, 0xb9, 0x24, 0x70, 0xf9, 0x44, 0x48, 0x80, 0x8b, 0x39, 0x3b, 0xb5, 0x12,
0x18, 0x08, 0x8c, 0x1a, 0xac, 0x41, 0x20, 0xa6, 0x90, 0x3a, 0x17, 0x2b, 0xd8, 0x2d, 0x40, 0xd7,
0x31, 0x02, 0x5d, 0x27, 0x88, 0xe4, 0x3a, 0xa8, 0x65, 0x10, 0x79, 0x2b, 0x26, 0x0b, 0x46, 0xa9,
0x44, 0x2e, 0x05, 0x42, 0x2e, 0xa5, 0xd0, 0x0a, 0x25, 0x39, 0x2e, 0x36, 0x88, 0xa0, 0x90, 0x08,
0x17, 0xab, 0x67, 0x5e, 0x89, 0x99, 0x09, 0xd8, 0x28, 0xe6, 0x20, 0xd6, 0x4c, 0x10, 0xc7, 0xc9,
0xe7, 0xc4, 0x43, 0x39, 0x86, 0x0b, 0x40, 0x7c, 0x03, 0x88, 0x1f, 0x3c, 0x94, 0x63, 0x7c, 0x01,
0xc4, 0x1f, 0x80, 0xf8, 0x07, 0x10, 0x37, 0x3c, 0x92, 0x63, 0x5c, 0x01, 0xc4, 0x1b, 0x80, 0x78,
0x07, 0x10, 0x1f, 0x00, 0xe2, 0x13, 0x8f, 0x80, 0xea, 0x81, 0xf8, 0x01, 0x90, 0xfd, 0x02, 0x48,
0x7f, 0x00, 0xd2, 0x3f, 0x80, 0xb8, 0xe1, 0xb1, 0x1c, 0x03, 0x20, 0x00, 0x00, 0xff, 0xff, 0x29,
0x83, 0xc1, 0xb7, 0x94, 0x02, 0x00, 0x00,
}
@@ -0,0 +1,31 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package castvalue
type MyWilson Wilson
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,31 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package castvalue
type MyWilson Wilson
+31
View File
@@ -0,0 +1,31 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package castvalue
type MyWilson Wilson
File diff suppressed because it is too large Load Diff
+126
View File
@@ -0,0 +1,126 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package test
import (
"bytes"
"encoding/json"
)
func PutLittleEndianUint64(b []byte, offset int, v uint64) {
b[offset] = byte(v)
b[offset+1] = byte(v >> 8)
b[offset+2] = byte(v >> 16)
b[offset+3] = byte(v >> 24)
b[offset+4] = byte(v >> 32)
b[offset+5] = byte(v >> 40)
b[offset+6] = byte(v >> 48)
b[offset+7] = byte(v >> 56)
}
type Uuid []byte
func (uuid Uuid) Marshal() ([]byte, error) {
if len(uuid) == 0 {
return nil, nil
}
return []byte(uuid), nil
}
func (uuid Uuid) MarshalTo(data []byte) (n int, err error) {
if len(uuid) == 0 {
return 0, nil
}
copy(data, uuid)
return 16, nil
}
func (uuid *Uuid) Unmarshal(data []byte) error {
if len(data) == 0 {
uuid = nil
return nil
}
id := Uuid(make([]byte, 16))
copy(id, data)
*uuid = id
return nil
}
func (uuid *Uuid) Size() int {
if uuid == nil {
return 0
}
if len(*uuid) == 0 {
return 0
}
return 16
}
func (uuid Uuid) MarshalJSON() ([]byte, error) {
return json.Marshal([]byte(uuid))
}
func (uuid *Uuid) UnmarshalJSON(data []byte) error {
v := new([]byte)
err := json.Unmarshal(data, v)
if err != nil {
return err
}
return uuid.Unmarshal(*v)
}
func (uuid Uuid) Equal(other Uuid) bool {
return bytes.Equal(uuid[0:], other[0:])
}
func (uuid Uuid) Compare(other Uuid) int {
return bytes.Compare(uuid[0:], other[0:])
}
type int63 interface {
Int63() int64
}
func NewPopulatedUuid(r int63) *Uuid {
u := RandV4(r)
return &u
}
func RandV4(r int63) Uuid {
uuid := make(Uuid, 16)
uuid.RandV4(r)
return uuid
}
func (uuid Uuid) RandV4(r int63) {
PutLittleEndianUint64(uuid, 0, uint64(r.Int63()))
PutLittleEndianUint64(uuid, 8, uint64(r.Int63()))
uuid[6] = (uuid[6] & 0xf) | 0x40
uuid[8] = (uuid[8] & 0x3f) | 0x80
}
File diff suppressed because it is too large Load Diff
+126
View File
@@ -0,0 +1,126 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package test
import (
"bytes"
"encoding/json"
)
func PutLittleEndianUint64(b []byte, offset int, v uint64) {
b[offset] = byte(v)
b[offset+1] = byte(v >> 8)
b[offset+2] = byte(v >> 16)
b[offset+3] = byte(v >> 24)
b[offset+4] = byte(v >> 32)
b[offset+5] = byte(v >> 40)
b[offset+6] = byte(v >> 48)
b[offset+7] = byte(v >> 56)
}
type Uuid []byte
func (uuid Uuid) Marshal() ([]byte, error) {
if len(uuid) == 0 {
return nil, nil
}
return []byte(uuid), nil
}
func (uuid Uuid) MarshalTo(data []byte) (n int, err error) {
if len(uuid) == 0 {
return 0, nil
}
copy(data, uuid)
return 16, nil
}
func (uuid *Uuid) Unmarshal(data []byte) error {
if len(data) == 0 {
uuid = nil
return nil
}
id := Uuid(make([]byte, 16))
copy(id, data)
*uuid = id
return nil
}
func (uuid *Uuid) Size() int {
if uuid == nil {
return 0
}
if len(*uuid) == 0 {
return 0
}
return 16
}
func (uuid Uuid) MarshalJSON() ([]byte, error) {
return json.Marshal([]byte(uuid))
}
func (uuid *Uuid) UnmarshalJSON(data []byte) error {
v := new([]byte)
err := json.Unmarshal(data, v)
if err != nil {
return err
}
return uuid.Unmarshal(*v)
}
func (uuid Uuid) Equal(other Uuid) bool {
return bytes.Equal(uuid[0:], other[0:])
}
func (uuid Uuid) Compare(other Uuid) int {
return bytes.Compare(uuid[0:], other[0:])
}
type int63 interface {
Int63() int64
}
func NewPopulatedUuid(r int63) *Uuid {
u := RandV4(r)
return &u
}
func RandV4(r int63) Uuid {
uuid := make(Uuid, 16)
uuid.RandV4(r)
return uuid
}
func (uuid Uuid) RandV4(r int63) {
PutLittleEndianUint64(uuid, 0, uint64(r.Int63()))
PutLittleEndianUint64(uuid, 8, uint64(r.Int63()))
uuid[6] = (uuid[6] & 0xf) | 0x40
uuid[8] = (uuid[8] & 0x3f) | 0x80
}
File diff suppressed because it is too large Load Diff
+126
View File
@@ -0,0 +1,126 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package test
import (
"bytes"
"encoding/json"
)
func PutLittleEndianUint64(b []byte, offset int, v uint64) {
b[offset] = byte(v)
b[offset+1] = byte(v >> 8)
b[offset+2] = byte(v >> 16)
b[offset+3] = byte(v >> 24)
b[offset+4] = byte(v >> 32)
b[offset+5] = byte(v >> 40)
b[offset+6] = byte(v >> 48)
b[offset+7] = byte(v >> 56)
}
type Uuid []byte
func (uuid Uuid) Marshal() ([]byte, error) {
if len(uuid) == 0 {
return nil, nil
}
return []byte(uuid), nil
}
func (uuid Uuid) MarshalTo(data []byte) (n int, err error) {
if len(uuid) == 0 {
return 0, nil
}
copy(data, uuid)
return 16, nil
}
func (uuid *Uuid) Unmarshal(data []byte) error {
if len(data) == 0 {
uuid = nil
return nil
}
id := Uuid(make([]byte, 16))
copy(id, data)
*uuid = id
return nil
}
func (uuid *Uuid) Size() int {
if uuid == nil {
return 0
}
if len(*uuid) == 0 {
return 0
}
return 16
}
func (uuid Uuid) MarshalJSON() ([]byte, error) {
return json.Marshal([]byte(uuid))
}
func (uuid *Uuid) UnmarshalJSON(data []byte) error {
v := new([]byte)
err := json.Unmarshal(data, v)
if err != nil {
return err
}
return uuid.Unmarshal(*v)
}
func (uuid Uuid) Equal(other Uuid) bool {
return bytes.Equal(uuid[0:], other[0:])
}
func (uuid Uuid) Compare(other Uuid) int {
return bytes.Compare(uuid[0:], other[0:])
}
type int63 interface {
Int63() int64
}
func NewPopulatedUuid(r int63) *Uuid {
u := RandV4(r)
return &u
}
func RandV4(r int63) Uuid {
uuid := make(Uuid, 16)
uuid.RandV4(r)
return uuid
}
func (uuid Uuid) RandV4(r int63) {
PutLittleEndianUint64(uuid, 0, uint64(r.Int63()))
PutLittleEndianUint64(uuid, 8, uint64(r.Int63()))
uuid[6] = (uuid[6] & 0xf) | 0x40
uuid[8] = (uuid[8] & 0x3f) | 0x80
}
File diff suppressed because it is too large Load Diff
+126
View File
@@ -0,0 +1,126 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package test
import (
"bytes"
"encoding/json"
)
func PutLittleEndianUint64(b []byte, offset int, v uint64) {
b[offset] = byte(v)
b[offset+1] = byte(v >> 8)
b[offset+2] = byte(v >> 16)
b[offset+3] = byte(v >> 24)
b[offset+4] = byte(v >> 32)
b[offset+5] = byte(v >> 40)
b[offset+6] = byte(v >> 48)
b[offset+7] = byte(v >> 56)
}
type Uuid []byte
func (uuid Uuid) Marshal() ([]byte, error) {
if len(uuid) == 0 {
return nil, nil
}
return []byte(uuid), nil
}
func (uuid Uuid) MarshalTo(data []byte) (n int, err error) {
if len(uuid) == 0 {
return 0, nil
}
copy(data, uuid)
return 16, nil
}
func (uuid *Uuid) Unmarshal(data []byte) error {
if len(data) == 0 {
uuid = nil
return nil
}
id := Uuid(make([]byte, 16))
copy(id, data)
*uuid = id
return nil
}
func (uuid *Uuid) Size() int {
if uuid == nil {
return 0
}
if len(*uuid) == 0 {
return 0
}
return 16
}
func (uuid Uuid) MarshalJSON() ([]byte, error) {
return json.Marshal([]byte(uuid))
}
func (uuid *Uuid) UnmarshalJSON(data []byte) error {
v := new([]byte)
err := json.Unmarshal(data, v)
if err != nil {
return err
}
return uuid.Unmarshal(*v)
}
func (uuid Uuid) Equal(other Uuid) bool {
return bytes.Equal(uuid[0:], other[0:])
}
func (uuid Uuid) Compare(other Uuid) int {
return bytes.Compare(uuid[0:], other[0:])
}
type int63 interface {
Int63() int64
}
func NewPopulatedUuid(r int63) *Uuid {
u := RandV4(r)
return &u
}
func RandV4(r int63) Uuid {
uuid := make(Uuid, 16)
uuid.RandV4(r)
return uuid
}
func (uuid Uuid) RandV4(r int63) {
PutLittleEndianUint64(uuid, 0, uint64(r.Int63()))
PutLittleEndianUint64(uuid, 8, uint64(r.Int63()))
uuid[6] = (uuid[6] & 0xf) | 0x40
uuid[8] = (uuid[8] & 0x3f) | 0x80
}
File diff suppressed because it is too large Load Diff
+126
View File
@@ -0,0 +1,126 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package test
import (
"bytes"
"encoding/json"
)
func PutLittleEndianUint64(b []byte, offset int, v uint64) {
b[offset] = byte(v)
b[offset+1] = byte(v >> 8)
b[offset+2] = byte(v >> 16)
b[offset+3] = byte(v >> 24)
b[offset+4] = byte(v >> 32)
b[offset+5] = byte(v >> 40)
b[offset+6] = byte(v >> 48)
b[offset+7] = byte(v >> 56)
}
type Uuid []byte
func (uuid Uuid) Marshal() ([]byte, error) {
if len(uuid) == 0 {
return nil, nil
}
return []byte(uuid), nil
}
func (uuid Uuid) MarshalTo(data []byte) (n int, err error) {
if len(uuid) == 0 {
return 0, nil
}
copy(data, uuid)
return 16, nil
}
func (uuid *Uuid) Unmarshal(data []byte) error {
if len(data) == 0 {
uuid = nil
return nil
}
id := Uuid(make([]byte, 16))
copy(id, data)
*uuid = id
return nil
}
func (uuid *Uuid) Size() int {
if uuid == nil {
return 0
}
if len(*uuid) == 0 {
return 0
}
return 16
}
func (uuid Uuid) MarshalJSON() ([]byte, error) {
return json.Marshal([]byte(uuid))
}
func (uuid *Uuid) UnmarshalJSON(data []byte) error {
v := new([]byte)
err := json.Unmarshal(data, v)
if err != nil {
return err
}
return uuid.Unmarshal(*v)
}
func (uuid Uuid) Equal(other Uuid) bool {
return bytes.Equal(uuid[0:], other[0:])
}
func (uuid Uuid) Compare(other Uuid) int {
return bytes.Compare(uuid[0:], other[0:])
}
type int63 interface {
Int63() int64
}
func NewPopulatedUuid(r int63) *Uuid {
u := RandV4(r)
return &u
}
func RandV4(r int63) Uuid {
uuid := make(Uuid, 16)
uuid.RandV4(r)
return uuid
}
func (uuid Uuid) RandV4(r int63) {
PutLittleEndianUint64(uuid, 0, uint64(r.Int63()))
PutLittleEndianUint64(uuid, 8, uint64(r.Int63()))
uuid[6] = (uuid[6] & 0xf) | 0x40
uuid[8] = (uuid[8] & 0x3f) | 0x80
}
File diff suppressed because it is too large Load Diff
+126
View File
@@ -0,0 +1,126 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package test
import (
"bytes"
"encoding/json"
)
func PutLittleEndianUint64(b []byte, offset int, v uint64) {
b[offset] = byte(v)
b[offset+1] = byte(v >> 8)
b[offset+2] = byte(v >> 16)
b[offset+3] = byte(v >> 24)
b[offset+4] = byte(v >> 32)
b[offset+5] = byte(v >> 40)
b[offset+6] = byte(v >> 48)
b[offset+7] = byte(v >> 56)
}
type Uuid []byte
func (uuid Uuid) Marshal() ([]byte, error) {
if len(uuid) == 0 {
return nil, nil
}
return []byte(uuid), nil
}
func (uuid Uuid) MarshalTo(data []byte) (n int, err error) {
if len(uuid) == 0 {
return 0, nil
}
copy(data, uuid)
return 16, nil
}
func (uuid *Uuid) Unmarshal(data []byte) error {
if len(data) == 0 {
uuid = nil
return nil
}
id := Uuid(make([]byte, 16))
copy(id, data)
*uuid = id
return nil
}
func (uuid *Uuid) Size() int {
if uuid == nil {
return 0
}
if len(*uuid) == 0 {
return 0
}
return 16
}
func (uuid Uuid) MarshalJSON() ([]byte, error) {
return json.Marshal([]byte(uuid))
}
func (uuid *Uuid) UnmarshalJSON(data []byte) error {
v := new([]byte)
err := json.Unmarshal(data, v)
if err != nil {
return err
}
return uuid.Unmarshal(*v)
}
func (uuid Uuid) Equal(other Uuid) bool {
return bytes.Equal(uuid[0:], other[0:])
}
func (uuid Uuid) Compare(other Uuid) int {
return bytes.Compare(uuid[0:], other[0:])
}
type int63 interface {
Int63() int64
}
func NewPopulatedUuid(r int63) *Uuid {
u := RandV4(r)
return &u
}
func RandV4(r int63) Uuid {
uuid := make(Uuid, 16)
uuid.RandV4(r)
return uuid
}
func (uuid Uuid) RandV4(r int63) {
PutLittleEndianUint64(uuid, 0, uint64(r.Int63()))
PutLittleEndianUint64(uuid, 8, uint64(r.Int63()))
uuid[6] = (uuid[6] & 0xf) | 0x40
uuid[8] = (uuid[8] & 0x3f) | 0x80
}
+102
View File
@@ -0,0 +1,102 @@
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
/*
Package custom contains custom types for test and example purposes.
These types are used by the test structures generated by gogoprotobuf.
*/
package custom
import (
"bytes"
"encoding/json"
)
type Bytes []byte
func (b Bytes) Marshal() ([]byte, error) {
buffer := make([]byte, len(b))
_, err := b.MarshalTo(buffer)
return buffer, err
}
func (b Bytes) MarshalTo(data []byte) (n int, err error) {
copy(data, b)
return len(b), nil
}
func (b *Bytes) Unmarshal(data []byte) error {
if data == nil {
b = nil
return nil
}
pb := make([]byte, len(data))
copy(pb, data)
*b = pb
return nil
}
func (b Bytes) MarshalJSON() ([]byte, error) {
data, err := b.Marshal()
if err != nil {
return nil, err
}
return json.Marshal(data)
}
func (b *Bytes) Size() int {
return len(*b)
}
func (b *Bytes) UnmarshalJSON(data []byte) error {
v := new([]byte)
err := json.Unmarshal(data, v)
if err != nil {
return err
}
return b.Unmarshal(*v)
}
func (this Bytes) Equal(that Bytes) bool {
return bytes.Equal(this, that)
}
func (this Bytes) Compare(that Bytes) int {
return bytes.Compare(this, that)
}
type randy interface {
Intn(n int) int
}
func NewPopulatedBytes(r randy) *Bytes {
l := r.Intn(100)
data := Bytes(make([]byte, l))
for i := 0; i < l; i++ {
data[i] = byte(r.Intn(255))
}
return &data
}
+145
View File
@@ -0,0 +1,145 @@
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
/*
Package custom contains custom types for test and example purposes.
These types are used by the test structures generated by gogoprotobuf.
*/
package custom
import (
"bytes"
"encoding/json"
"errors"
"unsafe"
)
type Uint128 [2]uint64
func (u Uint128) Marshal() ([]byte, error) {
buffer := make([]byte, 16)
_, err := u.MarshalTo(buffer)
return buffer, err
}
func (u Uint128) MarshalTo(data []byte) (n int, err error) {
PutLittleEndianUint128(data, 0, u)
return 16, nil
}
func GetLittleEndianUint64(b []byte, offset int) uint64 {
return *(*uint64)(unsafe.Pointer(&b[offset]))
}
func PutLittleEndianUint64(b []byte, offset int, v uint64) {
b[offset] = byte(v)
b[offset+1] = byte(v >> 8)
b[offset+2] = byte(v >> 16)
b[offset+3] = byte(v >> 24)
b[offset+4] = byte(v >> 32)
b[offset+5] = byte(v >> 40)
b[offset+6] = byte(v >> 48)
b[offset+7] = byte(v >> 56)
}
func PutLittleEndianUint128(buffer []byte, offset int, v [2]uint64) {
PutLittleEndianUint64(buffer, offset, v[0])
PutLittleEndianUint64(buffer, offset+8, v[1])
}
func GetLittleEndianUint128(buffer []byte, offset int) (value [2]uint64) {
value[0] = GetLittleEndianUint64(buffer, offset)
value[1] = GetLittleEndianUint64(buffer, offset+8)
return
}
func (u *Uint128) Unmarshal(data []byte) error {
if data == nil {
u = nil
return nil
}
if len(data) == 0 {
pu := Uint128{}
*u = pu
return nil
}
if len(data) != 16 {
return errors.New("Uint128: invalid length")
}
pu := Uint128(GetLittleEndianUint128(data, 0))
*u = pu
return nil
}
func (u Uint128) MarshalJSON() ([]byte, error) {
data, err := u.Marshal()
if err != nil {
return nil, err
}
return json.Marshal(data)
}
func (u Uint128) Size() int {
return 16
}
func (u *Uint128) UnmarshalJSON(data []byte) error {
v := new([]byte)
err := json.Unmarshal(data, v)
if err != nil {
return err
}
return u.Unmarshal(*v)
}
func (this Uint128) Equal(that Uint128) bool {
return this == that
}
func (this Uint128) Compare(that Uint128) int {
thisdata, err := this.Marshal()
if err != nil {
panic(err)
}
thatdata, err := that.Marshal()
if err != nil {
panic(err)
}
return bytes.Compare(thisdata, thatdata)
}
type randy interface {
Intn(n int) int
}
func NewPopulatedUint128(r randy) *Uint128 {
data := make([]byte, 16)
for i := 0; i < 16; i++ {
data[i] = byte(r.Intn(255))
}
u := Uint128(GetLittleEndianUint128(data, 0))
return &u
}
@@ -0,0 +1,8 @@
package custombytesnonstruct
type CustomType int
func (c *CustomType) Unmarshal(data []byte) error {
data[0] = 42
return nil
}
+278
View File
@@ -0,0 +1,278 @@
// Code generated by protoc-gen-gogo.
// source: proto.proto
// DO NOT EDIT!
/*
Package custombytesnonstruct is a generated protocol buffer package.
It is generated from these files:
proto.proto
It has these top-level messages:
Object
*/
package custombytesnonstruct
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import io "io"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type Object struct {
CustomField1 *CustomType `protobuf:"bytes,1,opt,name=CustomField1,json=customField1,customtype=CustomType" json:"CustomField1,omitempty"`
CustomField2 []CustomType `protobuf:"bytes,2,rep,name=CustomField2,json=customField2,customtype=CustomType" json:"CustomField2,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Object) Reset() { *m = Object{} }
func (m *Object) String() string { return proto.CompactTextString(m) }
func (*Object) ProtoMessage() {}
func (*Object) Descriptor() ([]byte, []int) { return fileDescriptorProto, []int{0} }
func init() {
proto.RegisterType((*Object)(nil), "custombytesnonstruct.Object")
}
func (m *Object) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowProto
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: Object: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: Object: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field CustomField1", wireType)
}
var byteLen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowProto
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
byteLen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if byteLen < 0 {
return ErrInvalidLengthProto
}
postIndex := iNdEx + byteLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
var v CustomType
m.CustomField1 = &v
if err := m.CustomField1.Unmarshal(data[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field CustomField2", wireType)
}
var byteLen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowProto
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
byteLen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if byteLen < 0 {
return ErrInvalidLengthProto
}
postIndex := iNdEx + byteLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
var v CustomType
m.CustomField2 = append(m.CustomField2, v)
if err := m.CustomField2[len(m.CustomField2)-1].Unmarshal(data[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipProto(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthProto
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
m.XXX_unrecognized = append(m.XXX_unrecognized, data[iNdEx:iNdEx+skippy]...)
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipProto(data []byte) (n int, err error) {
l := len(data)
iNdEx := 0
for iNdEx < l {
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProto
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
wireType := int(wire & 0x7)
switch wireType {
case 0:
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProto
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
iNdEx++
if data[iNdEx-1] < 0x80 {
break
}
}
return iNdEx, nil
case 1:
iNdEx += 8
return iNdEx, nil
case 2:
var length int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProto
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
length |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
iNdEx += length
if length < 0 {
return 0, ErrInvalidLengthProto
}
return iNdEx, nil
case 3:
for {
var innerWire uint64
var start int = iNdEx
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProto
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
innerWire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
innerWireType := int(innerWire & 0x7)
if innerWireType == 4 {
break
}
next, err := skipProto(data[start:])
if err != nil {
return 0, err
}
iNdEx = start + next
}
return iNdEx, nil
case 4:
return iNdEx, nil
case 5:
iNdEx += 4
return iNdEx, nil
default:
return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
}
}
panic("unreachable")
}
var (
ErrInvalidLengthProto = fmt.Errorf("proto: negative length found during unmarshaling")
ErrIntOverflowProto = fmt.Errorf("proto: integer overflow")
)
var fileDescriptorProto = []byte{
// 149 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0x2e, 0x28, 0xca, 0x2f,
0xc9, 0xd7, 0x03, 0x93, 0x42, 0x22, 0xc9, 0xa5, 0xc5, 0x25, 0xf9, 0xb9, 0x49, 0x95, 0x25, 0xa9,
0xc5, 0x79, 0xf9, 0x79, 0xc5, 0x25, 0x45, 0xa5, 0xc9, 0x25, 0x52, 0xba, 0xe9, 0x99, 0x25, 0x19,
0xa5, 0x49, 0x7a, 0xc9, 0xf9, 0xb9, 0xfa, 0xe9, 0xf9, 0xe9, 0xf9, 0xfa, 0x60, 0xc5, 0x49, 0xa5,
0x69, 0x60, 0x1e, 0x98, 0x03, 0x66, 0x41, 0x0c, 0x51, 0x2a, 0xe0, 0x62, 0xf3, 0x4f, 0xca, 0x4a,
0x4d, 0x2e, 0x11, 0x32, 0xe2, 0xe2, 0x71, 0x06, 0x1b, 0xe8, 0x96, 0x99, 0x9a, 0x93, 0x62, 0x28,
0xc1, 0xa8, 0xc0, 0xa8, 0xc1, 0xe3, 0xc4, 0x77, 0xeb, 0x9e, 0x3c, 0x17, 0x44, 0x3c, 0xa4, 0xb2,
0x20, 0x35, 0x88, 0x27, 0x19, 0x49, 0x0d, 0x9a, 0x1e, 0x23, 0x09, 0x26, 0x05, 0x66, 0x02, 0x7a,
0x8c, 0x9c, 0x58, 0x2e, 0x3c, 0x92, 0x63, 0x04, 0x04, 0x00, 0x00, 0xff, 0xff, 0x42, 0x52, 0xad,
0x49, 0xca, 0x00, 0x00, 0x00,
}
+1
View File
@@ -0,0 +1 @@
package dashfilename
+1
View File
@@ -0,0 +1 @@
package defaultcheck
+1
View File
@@ -0,0 +1 @@
package embedconflict
+208
View File
@@ -0,0 +1,208 @@
// Code generated by protoc-gen-gogo.
// source: empty.proto
// DO NOT EDIT!
/*
Package empty is a generated protocol buffer package.
It is generated from these files:
empty.proto
It has these top-level messages:
TestRequest
*/
package empty
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import io "io"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type TestRequest struct {
XXX_unrecognized []byte `json:"-"`
}
func (m *TestRequest) Reset() { *m = TestRequest{} }
func (m *TestRequest) String() string { return proto.CompactTextString(m) }
func (*TestRequest) ProtoMessage() {}
func (*TestRequest) Descriptor() ([]byte, []int) { return fileDescriptorEmpty, []int{0} }
func init() {
proto.RegisterType((*TestRequest)(nil), "empty.TestRequest")
}
func (m *TestRequest) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowEmpty
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: TestRequest: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: TestRequest: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
default:
iNdEx = preIndex
skippy, err := skipEmpty(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthEmpty
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
m.XXX_unrecognized = append(m.XXX_unrecognized, data[iNdEx:iNdEx+skippy]...)
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipEmpty(data []byte) (n int, err error) {
l := len(data)
iNdEx := 0
for iNdEx < l {
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowEmpty
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
wireType := int(wire & 0x7)
switch wireType {
case 0:
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowEmpty
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
iNdEx++
if data[iNdEx-1] < 0x80 {
break
}
}
return iNdEx, nil
case 1:
iNdEx += 8
return iNdEx, nil
case 2:
var length int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowEmpty
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
length |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
iNdEx += length
if length < 0 {
return 0, ErrInvalidLengthEmpty
}
return iNdEx, nil
case 3:
for {
var innerWire uint64
var start int = iNdEx
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowEmpty
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
innerWire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
innerWireType := int(innerWire & 0x7)
if innerWireType == 4 {
break
}
next, err := skipEmpty(data[start:])
if err != nil {
return 0, err
}
iNdEx = start + next
}
return iNdEx, nil
case 4:
return iNdEx, nil
case 5:
iNdEx += 4
return iNdEx, nil
default:
return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
}
}
panic("unreachable")
}
var (
ErrInvalidLengthEmpty = fmt.Errorf("proto: negative length found during unmarshaling")
ErrIntOverflowEmpty = fmt.Errorf("proto: integer overflow")
)
var fileDescriptorEmpty = []byte{
// 91 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0x4e, 0xcd, 0x2d, 0x28,
0xa9, 0xd4, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x62, 0x05, 0x73, 0xa4, 0x74, 0xd3, 0x33, 0x4b,
0x32, 0x4a, 0x93, 0xf4, 0x92, 0xf3, 0x73, 0xf5, 0xd3, 0xf3, 0xd3, 0xf3, 0xf5, 0xc1, 0xb2, 0x49,
0xa5, 0x69, 0x60, 0x1e, 0x98, 0x03, 0x66, 0x41, 0x74, 0x29, 0xf1, 0x72, 0x71, 0x87, 0xa4, 0x16,
0x97, 0x04, 0xa5, 0x16, 0x96, 0x02, 0x29, 0x27, 0x96, 0x0b, 0x8f, 0xe4, 0x18, 0x01, 0x01, 0x00,
0x00, 0xff, 0xff, 0x0e, 0xe3, 0x23, 0x3d, 0x58, 0x00, 0x00, 0x00,
}
@@ -0,0 +1,309 @@
// Code generated by protoc-gen-gogo.
// source: enumcustomname.proto
// DO NOT EDIT!
/*
Package enumcustomname is a generated protocol buffer package.
Package enumcustomname tests the behavior of enum_customname and
enumvalue_customname extensions.
It is generated from these files:
enumcustomname.proto
It has these top-level messages:
OnlyEnums
*/
package enumcustomname
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import test "github.com/gogo/protobuf/test"
import strconv "strconv"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type MyCustomEnum int32
const (
// The following field will take on the custom name and the prefix, joined
// by an underscore.
MyCustomEnum_MyBetterNameA MyCustomEnum = 0
MyCustomEnum_B MyCustomEnum = 1
)
var MyCustomEnum_name = map[int32]string{
0: "A",
1: "B",
}
var MyCustomEnum_value = map[string]int32{
"A": 0,
"B": 1,
}
func (x MyCustomEnum) Enum() *MyCustomEnum {
p := new(MyCustomEnum)
*p = x
return p
}
func (x MyCustomEnum) String() string {
return proto.EnumName(MyCustomEnum_name, int32(x))
}
func (x *MyCustomEnum) UnmarshalJSON(data []byte) error {
value, err := proto.UnmarshalJSONEnum(MyCustomEnum_value, data, "MyCustomEnum")
if err != nil {
return err
}
*x = MyCustomEnum(value)
return nil
}
func (MyCustomEnum) EnumDescriptor() ([]byte, []int) { return fileDescriptorEnumcustomname, []int{0} }
type MyCustomUnprefixedEnum int32
const (
MyBetterNameUnprefixedA MyCustomUnprefixedEnum = 0
UNPREFIXED_B MyCustomUnprefixedEnum = 1
)
var MyCustomUnprefixedEnum_name = map[int32]string{
0: "UNPREFIXED_A",
1: "UNPREFIXED_B",
}
var MyCustomUnprefixedEnum_value = map[string]int32{
"UNPREFIXED_A": 0,
"UNPREFIXED_B": 1,
}
func (x MyCustomUnprefixedEnum) Enum() *MyCustomUnprefixedEnum {
p := new(MyCustomUnprefixedEnum)
*p = x
return p
}
func (x MyCustomUnprefixedEnum) MarshalJSON() ([]byte, error) {
return proto.MarshalJSONEnum(MyCustomUnprefixedEnum_name, int32(x))
}
func (x *MyCustomUnprefixedEnum) UnmarshalJSON(data []byte) error {
value, err := proto.UnmarshalJSONEnum(MyCustomUnprefixedEnum_value, data, "MyCustomUnprefixedEnum")
if err != nil {
return err
}
*x = MyCustomUnprefixedEnum(value)
return nil
}
func (MyCustomUnprefixedEnum) EnumDescriptor() ([]byte, []int) {
return fileDescriptorEnumcustomname, []int{1}
}
type MyEnumWithEnumStringer int32
const (
MyEnumWithEnumStringer_EnumValueStringerA MyEnumWithEnumStringer = 0
MyEnumWithEnumStringer_STRINGER_B MyEnumWithEnumStringer = 1
)
var MyEnumWithEnumStringer_name = map[int32]string{
0: "STRINGER_A",
1: "STRINGER_B",
}
var MyEnumWithEnumStringer_value = map[string]int32{
"STRINGER_A": 0,
"STRINGER_B": 1,
}
func (x MyEnumWithEnumStringer) Enum() *MyEnumWithEnumStringer {
p := new(MyEnumWithEnumStringer)
*p = x
return p
}
func (x MyEnumWithEnumStringer) MarshalJSON() ([]byte, error) {
return proto.MarshalJSONEnum(MyEnumWithEnumStringer_name, int32(x))
}
func (x *MyEnumWithEnumStringer) UnmarshalJSON(data []byte) error {
value, err := proto.UnmarshalJSONEnum(MyEnumWithEnumStringer_value, data, "MyEnumWithEnumStringer")
if err != nil {
return err
}
*x = MyEnumWithEnumStringer(value)
return nil
}
func (MyEnumWithEnumStringer) EnumDescriptor() ([]byte, []int) {
return fileDescriptorEnumcustomname, []int{2}
}
type OnlyEnums struct {
MyEnum *MyCustomEnum `protobuf:"varint,1,opt,name=my_enum,json=myEnum,enum=enumcustomname.MyCustomEnum" json:"my_enum,omitempty"`
MyEnumDefaultA *MyCustomEnum `protobuf:"varint,2,opt,name=my_enum_default_a,json=myEnumDefaultA,enum=enumcustomname.MyCustomEnum,def=0" json:"my_enum_default_a,omitempty"`
MyEnumDefaultB *MyCustomEnum `protobuf:"varint,3,opt,name=my_enum_default_b,json=myEnumDefaultB,enum=enumcustomname.MyCustomEnum,def=1" json:"my_enum_default_b,omitempty"`
MyUnprefixedEnum *MyCustomUnprefixedEnum `protobuf:"varint,4,opt,name=my_unprefixed_enum,json=myUnprefixedEnum,enum=enumcustomname.MyCustomUnprefixedEnum" json:"my_unprefixed_enum,omitempty"`
MyUnprefixedEnumDefaultA *MyCustomUnprefixedEnum `protobuf:"varint,5,opt,name=my_unprefixed_enum_default_a,json=myUnprefixedEnumDefaultA,enum=enumcustomname.MyCustomUnprefixedEnum,def=0" json:"my_unprefixed_enum_default_a,omitempty"`
MyUnprefixedEnumDefaultB *MyCustomUnprefixedEnum `protobuf:"varint,6,opt,name=my_unprefixed_enum_default_b,json=myUnprefixedEnumDefaultB,enum=enumcustomname.MyCustomUnprefixedEnum,def=1" json:"my_unprefixed_enum_default_b,omitempty"`
YetAnotherTestEnum *test.YetAnotherTestEnum `protobuf:"varint,7,opt,name=yet_another_test_enum,json=yetAnotherTestEnum,enum=test.YetAnotherTestEnum" json:"yet_another_test_enum,omitempty"`
YetAnotherTestEnumDefaultAa *test.YetAnotherTestEnum `protobuf:"varint,8,opt,name=yet_another_test_enum_default_aa,json=yetAnotherTestEnumDefaultAa,enum=test.YetAnotherTestEnum,def=0" json:"yet_another_test_enum_default_aa,omitempty"`
YetAnotherTestEnumDefaultBb *test.YetAnotherTestEnum `protobuf:"varint,9,opt,name=yet_another_test_enum_default_bb,json=yetAnotherTestEnumDefaultBb,enum=test.YetAnotherTestEnum,def=1" json:"yet_another_test_enum_default_bb,omitempty"`
YetYetAnotherTestEnum *test.YetYetAnotherTestEnum `protobuf:"varint,10,opt,name=yet_yet_another_test_enum,json=yetYetAnotherTestEnum,enum=test.YetYetAnotherTestEnum" json:"yet_yet_another_test_enum,omitempty"`
YetYetAnotherTestEnumDefaultCc *test.YetYetAnotherTestEnum `protobuf:"varint,11,opt,name=yet_yet_another_test_enum_default_cc,json=yetYetAnotherTestEnumDefaultCc,enum=test.YetYetAnotherTestEnum,def=0" json:"yet_yet_another_test_enum_default_cc,omitempty"`
YetYetAnotherTestEnumDefaultDd *test.YetYetAnotherTestEnum `protobuf:"varint,12,opt,name=yet_yet_another_test_enum_default_dd,json=yetYetAnotherTestEnumDefaultDd,enum=test.YetYetAnotherTestEnum,def=1" json:"yet_yet_another_test_enum_default_dd,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *OnlyEnums) Reset() { *m = OnlyEnums{} }
func (m *OnlyEnums) String() string { return proto.CompactTextString(m) }
func (*OnlyEnums) ProtoMessage() {}
func (*OnlyEnums) Descriptor() ([]byte, []int) { return fileDescriptorEnumcustomname, []int{0} }
const Default_OnlyEnums_MyEnumDefaultA MyCustomEnum = MyCustomEnum_MyBetterNameA
const Default_OnlyEnums_MyEnumDefaultB MyCustomEnum = MyCustomEnum_B
const Default_OnlyEnums_MyUnprefixedEnumDefaultA MyCustomUnprefixedEnum = MyBetterNameUnprefixedA
const Default_OnlyEnums_MyUnprefixedEnumDefaultB MyCustomUnprefixedEnum = UNPREFIXED_B
const Default_OnlyEnums_YetAnotherTestEnumDefaultAa test.YetAnotherTestEnum = test.AA
const Default_OnlyEnums_YetAnotherTestEnumDefaultBb test.YetAnotherTestEnum = test.BetterYetBB
const Default_OnlyEnums_YetYetAnotherTestEnumDefaultCc test.YetYetAnotherTestEnum = test.YetYetAnotherTestEnum_CC
const Default_OnlyEnums_YetYetAnotherTestEnumDefaultDd test.YetYetAnotherTestEnum = test.YetYetAnotherTestEnum_BetterYetDD
func (m *OnlyEnums) GetMyEnum() MyCustomEnum {
if m != nil && m.MyEnum != nil {
return *m.MyEnum
}
return MyCustomEnum_MyBetterNameA
}
func (m *OnlyEnums) GetMyEnumDefaultA() MyCustomEnum {
if m != nil && m.MyEnumDefaultA != nil {
return *m.MyEnumDefaultA
}
return Default_OnlyEnums_MyEnumDefaultA
}
func (m *OnlyEnums) GetMyEnumDefaultB() MyCustomEnum {
if m != nil && m.MyEnumDefaultB != nil {
return *m.MyEnumDefaultB
}
return Default_OnlyEnums_MyEnumDefaultB
}
func (m *OnlyEnums) GetMyUnprefixedEnum() MyCustomUnprefixedEnum {
if m != nil && m.MyUnprefixedEnum != nil {
return *m.MyUnprefixedEnum
}
return MyBetterNameUnprefixedA
}
func (m *OnlyEnums) GetMyUnprefixedEnumDefaultA() MyCustomUnprefixedEnum {
if m != nil && m.MyUnprefixedEnumDefaultA != nil {
return *m.MyUnprefixedEnumDefaultA
}
return Default_OnlyEnums_MyUnprefixedEnumDefaultA
}
func (m *OnlyEnums) GetMyUnprefixedEnumDefaultB() MyCustomUnprefixedEnum {
if m != nil && m.MyUnprefixedEnumDefaultB != nil {
return *m.MyUnprefixedEnumDefaultB
}
return Default_OnlyEnums_MyUnprefixedEnumDefaultB
}
func (m *OnlyEnums) GetYetAnotherTestEnum() test.YetAnotherTestEnum {
if m != nil && m.YetAnotherTestEnum != nil {
return *m.YetAnotherTestEnum
}
return test.AA
}
func (m *OnlyEnums) GetYetAnotherTestEnumDefaultAa() test.YetAnotherTestEnum {
if m != nil && m.YetAnotherTestEnumDefaultAa != nil {
return *m.YetAnotherTestEnumDefaultAa
}
return Default_OnlyEnums_YetAnotherTestEnumDefaultAa
}
func (m *OnlyEnums) GetYetAnotherTestEnumDefaultBb() test.YetAnotherTestEnum {
if m != nil && m.YetAnotherTestEnumDefaultBb != nil {
return *m.YetAnotherTestEnumDefaultBb
}
return Default_OnlyEnums_YetAnotherTestEnumDefaultBb
}
func (m *OnlyEnums) GetYetYetAnotherTestEnum() test.YetYetAnotherTestEnum {
if m != nil && m.YetYetAnotherTestEnum != nil {
return *m.YetYetAnotherTestEnum
}
return test.YetYetAnotherTestEnum_CC
}
func (m *OnlyEnums) GetYetYetAnotherTestEnumDefaultCc() test.YetYetAnotherTestEnum {
if m != nil && m.YetYetAnotherTestEnumDefaultCc != nil {
return *m.YetYetAnotherTestEnumDefaultCc
}
return Default_OnlyEnums_YetYetAnotherTestEnumDefaultCc
}
func (m *OnlyEnums) GetYetYetAnotherTestEnumDefaultDd() test.YetYetAnotherTestEnum {
if m != nil && m.YetYetAnotherTestEnumDefaultDd != nil {
return *m.YetYetAnotherTestEnumDefaultDd
}
return Default_OnlyEnums_YetYetAnotherTestEnumDefaultDd
}
func init() {
proto.RegisterType((*OnlyEnums)(nil), "enumcustomname.OnlyEnums")
proto.RegisterEnum("enumcustomname.MyCustomEnum", MyCustomEnum_name, MyCustomEnum_value)
proto.RegisterEnum("enumcustomname.MyCustomUnprefixedEnum", MyCustomUnprefixedEnum_name, MyCustomUnprefixedEnum_value)
proto.RegisterEnum("enumcustomname.MyEnumWithEnumStringer", MyEnumWithEnumStringer_name, MyEnumWithEnumStringer_value)
}
func (x MyEnumWithEnumStringer) String() string {
s, ok := MyEnumWithEnumStringer_name[int32(x)]
if ok {
return s
}
return strconv.Itoa(int(x))
}
var fileDescriptorEnumcustomname = []byte{
// 546 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x9c, 0x94, 0x4d, 0x8f, 0xd2, 0x40,
0x18, 0xc7, 0x29, 0xba, 0x2c, 0x3b, 0x22, 0xe9, 0x4e, 0x14, 0x47, 0x30, 0x0d, 0xd9, 0x18, 0x63,
0x30, 0x0b, 0x89, 0x47, 0x3c, 0x4d, 0x29, 0x9a, 0x8d, 0x01, 0x4d, 0x77, 0xf1, 0xed, 0xd2, 0xf4,
0x65, 0x60, 0x49, 0x68, 0xbb, 0x29, 0xd3, 0x68, 0xbf, 0x81, 0xf1, 0x3b, 0x78, 0x92, 0x83, 0x47,
0xcf, 0x9e, 0xfd, 0x60, 0xce, 0x4c, 0x17, 0x16, 0xda, 0x52, 0xc8, 0x9e, 0x86, 0x99, 0xfc, 0x9f,
0xdf, 0x6f, 0xe6, 0xc9, 0x53, 0xc0, 0x03, 0xe2, 0x85, 0xae, 0x1d, 0xce, 0xa9, 0xef, 0x7a, 0xa6,
0x4b, 0xda, 0x57, 0x81, 0x4f, 0x7d, 0x58, 0xdd, 0x3c, 0xad, 0x9f, 0x4e, 0xa6, 0xf4, 0x32, 0xb4,
0xda, 0xb6, 0xef, 0x76, 0x26, 0xfe, 0xc4, 0xef, 0x88, 0x98, 0x15, 0x8e, 0xc5, 0x4e, 0x6c, 0xc4,
0xaf, 0xb8, 0xbc, 0xfe, 0x62, 0x6b, 0x9c, 0x92, 0x39, 0xed, 0xd0, 0x4b, 0xc2, 0xd7, 0x38, 0x7c,
0xf2, 0xaf, 0x0c, 0x8e, 0xde, 0x79, 0xb3, 0xa8, 0xcf, 0x94, 0x73, 0xd8, 0x01, 0x87, 0x6e, 0x64,
0x70, 0x3d, 0x92, 0x9a, 0xd2, 0xf3, 0xea, 0xcb, 0x5a, 0x3b, 0x71, 0xc3, 0x81, 0x48, 0xea, 0x25,
0x57, 0xac, 0x50, 0x03, 0xc7, 0xd7, 0x05, 0x86, 0x43, 0xc6, 0x66, 0x38, 0xa3, 0x86, 0x89, 0x8a,
0x79, 0xa5, 0x5d, 0x09, 0xeb, 0xd5, 0xb8, 0x5a, 0x8b, 0x2b, 0x70, 0x16, 0xc5, 0x42, 0x77, 0xf2,
0x29, 0x6a, 0x82, 0xa2, 0xc2, 0x21, 0x80, 0x8c, 0x12, 0x7a, 0x57, 0x01, 0x19, 0x4f, 0xbf, 0x11,
0x27, 0x7e, 0xc7, 0x5d, 0x81, 0x69, 0xa6, 0x31, 0xa3, 0x55, 0x50, 0xbc, 0x48, 0x76, 0x13, 0x27,
0xd0, 0x03, 0x4f, 0xd2, 0xbc, 0xb5, 0x67, 0x1e, 0xec, 0x47, 0xee, 0x56, 0x46, 0xc3, 0xf7, 0x7a,
0xff, 0xf5, 0xd9, 0xa7, 0xbe, 0x66, 0x60, 0x1d, 0x25, 0x3d, 0xab, 0x2e, 0xe4, 0xfb, 0x2c, 0x54,
0xba, 0x85, 0x4f, 0xdd, 0xea, 0x53, 0xe1, 0x5b, 0xf0, 0x30, 0x22, 0xec, 0x21, 0x9e, 0xcf, 0x46,
0x22, 0x30, 0xf8, 0x50, 0xc4, 0x2d, 0x3b, 0x14, 0x22, 0xd4, 0x16, 0x63, 0xf2, 0x99, 0x50, 0x1c,
0x27, 0x2e, 0xd8, 0x56, 0xb4, 0x0a, 0x46, 0xa9, 0x33, 0x68, 0x83, 0x66, 0x26, 0xec, 0xa6, 0x5f,
0x26, 0x2a, 0xe7, 0x73, 0xbb, 0x45, 0x8c, 0xf5, 0x46, 0x9a, 0xbd, 0x6c, 0x90, 0xb9, 0x5b, 0x62,
0x59, 0xe8, 0x68, 0x97, 0x44, 0x55, 0x73, 0x24, 0xaa, 0x05, 0x47, 0xe0, 0x31, 0x97, 0x64, 0xb7,
0x06, 0x08, 0x7a, 0x63, 0x45, 0xcf, 0xe8, 0x0e, 0x6f, 0x6a, 0xfa, 0x18, 0xba, 0xe0, 0xe9, 0x56,
0xec, 0xea, 0xfe, 0xb6, 0x8d, 0xee, 0xed, 0x34, 0x74, 0x8b, 0xbd, 0x9e, 0xae, 0x64, 0x5a, 0xae,
0x5f, 0xd1, 0xb3, 0xf7, 0xd3, 0x39, 0x0e, 0xaa, 0xec, 0xa1, 0xd3, 0xb4, 0x7c, 0x9d, 0xe6, 0xb4,
0x5e, 0x81, 0x52, 0xfc, 0x61, 0x42, 0x04, 0x24, 0x2c, 0x17, 0xea, 0xc7, 0x3f, 0x7e, 0x36, 0xef,
0x0f, 0x22, 0x95, 0x50, 0x4a, 0x82, 0x21, 0x9b, 0x53, 0x0c, 0x0f, 0x80, 0xa4, 0xca, 0x52, 0x5d,
0xfe, 0xbb, 0x50, 0x2a, 0x83, 0xa8, 0x27, 0x26, 0x98, 0x97, 0xb4, 0xbe, 0x02, 0x39, 0x39, 0xc4,
0xf0, 0x14, 0x6c, 0x7c, 0x36, 0x8c, 0xd8, 0x60, 0xc4, 0x47, 0xeb, 0xc4, 0x9b, 0x0a, 0x0c, 0xe5,
0x8d, 0x38, 0xd7, 0x9c, 0x7c, 0xff, 0xa5, 0x14, 0x7e, 0x2f, 0x94, 0x02, 0xd3, 0xd5, 0x96, 0xba,
0x4d, 0x49, 0xeb, 0x0b, 0xa8, 0xc5, 0xb7, 0xfe, 0xc8, 0xfe, 0x31, 0xf9, 0x7a, 0x4e, 0x83, 0xa9,
0x37, 0x21, 0x01, 0x7c, 0x06, 0xc0, 0xf9, 0x85, 0x7e, 0x36, 0x7c, 0xd3, 0xd7, 0x85, 0xbc, 0xc6,
0xe4, 0x90, 0x27, 0x3e, 0x98, 0xb3, 0x90, 0x2c, 0x63, 0x18, 0x56, 0xd7, 0x72, 0xdc, 0x5a, 0xe6,
0xc6, 0x3f, 0x0b, 0x45, 0xfa, 0x1f, 0x00, 0x00, 0xff, 0xff, 0xbe, 0x65, 0x55, 0xe7, 0xdb, 0x05,
0x00, 0x00,
}
+64
View File
@@ -0,0 +1,64 @@
// Code generated by protoc-gen-gogo.
// source: enumprefix.proto
// DO NOT EDIT!
/*
Package enumprefix is a generated protocol buffer package.
It is generated from these files:
enumprefix.proto
It has these top-level messages:
MyMessage
*/
package enumprefix
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import test "github.com/gogo/protobuf/test"
import _ "github.com/gogo/protobuf/gogoproto"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type MyMessage struct {
TheField test.TheTestEnum `protobuf:"varint,1,opt,name=TheField,json=theField,enum=test.TheTestEnum" json:"TheField"`
XXX_unrecognized []byte `json:"-"`
}
func (m *MyMessage) Reset() { *m = MyMessage{} }
func (m *MyMessage) String() string { return proto.CompactTextString(m) }
func (*MyMessage) ProtoMessage() {}
func (*MyMessage) Descriptor() ([]byte, []int) { return fileDescriptorEnumprefix, []int{0} }
func (m *MyMessage) GetTheField() test.TheTestEnum {
if m != nil {
return m.TheField
}
return test.A
}
func init() {
proto.RegisterType((*MyMessage)(nil), "enumprefix.MyMessage")
}
var fileDescriptorEnumprefix = []byte{
// 148 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0x12, 0x48, 0xcd, 0x2b, 0xcd,
0x2d, 0x28, 0x4a, 0x4d, 0xcb, 0xac, 0xd0, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x42, 0x88,
0x48, 0x69, 0xa7, 0x67, 0x96, 0x64, 0x94, 0x26, 0xe9, 0x25, 0xe7, 0xe7, 0xea, 0xa7, 0xe7, 0xa7,
0xe7, 0xeb, 0x83, 0x95, 0x24, 0x95, 0xa6, 0xe9, 0x97, 0xa4, 0x16, 0x97, 0xe8, 0x97, 0x64, 0xa4,
0x82, 0x68, 0x88, 0x46, 0x29, 0x5d, 0x9c, 0x8a, 0x41, 0x3c, 0x30, 0x07, 0xcc, 0x82, 0x28, 0x57,
0x72, 0xe0, 0xe2, 0xf4, 0xad, 0xf4, 0x4d, 0x2d, 0x2e, 0x4e, 0x4c, 0x4f, 0x15, 0x32, 0xe6, 0xe2,
0x08, 0xc9, 0x48, 0x75, 0xcb, 0x4c, 0xcd, 0x49, 0x91, 0x60, 0x54, 0x60, 0xd4, 0xe0, 0x33, 0x12,
0xd4, 0x03, 0x1b, 0x0d, 0x14, 0x0d, 0x01, 0xd2, 0xae, 0x40, 0x37, 0x39, 0xb1, 0x9c, 0xb8, 0x27,
0xcf, 0x10, 0xc4, 0x51, 0x02, 0x55, 0x08, 0x08, 0x00, 0x00, 0xff, 0xff, 0x8c, 0xb3, 0x4a, 0xfa,
0xbc, 0x00, 0x00, 0x00,
}
+582
View File
@@ -0,0 +1,582 @@
// Code generated by protoc-gen-gogo.
// source: enumstringer.proto
// DO NOT EDIT!
/*
Package enumstringer is a generated protocol buffer package.
It is generated from these files:
enumstringer.proto
It has these top-level messages:
NidOptEnum
NinOptEnum
NidRepEnum
NinRepEnum
*/
package enumstringer
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import bytes "bytes"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type TheTestEnum int32
const (
TheTestEnum_A TheTestEnum = 0
TheTestEnum_B TheTestEnum = 1
TheTestEnum_C TheTestEnum = 2
)
var TheTestEnum_name = map[int32]string{
0: "A",
1: "B",
2: "C",
}
var TheTestEnum_value = map[string]int32{
"A": 0,
"B": 1,
"C": 2,
}
func (x TheTestEnum) Enum() *TheTestEnum {
p := new(TheTestEnum)
*p = x
return p
}
func (x TheTestEnum) MarshalJSON() ([]byte, error) {
return proto.MarshalJSONEnum(TheTestEnum_name, int32(x))
}
func (x *TheTestEnum) UnmarshalJSON(data []byte) error {
value, err := proto.UnmarshalJSONEnum(TheTestEnum_value, data, "TheTestEnum")
if err != nil {
return err
}
*x = TheTestEnum(value)
return nil
}
func (TheTestEnum) EnumDescriptor() ([]byte, []int) { return fileDescriptorEnumstringer, []int{0} }
type NidOptEnum struct {
Field1 TheTestEnum `protobuf:"varint,1,opt,name=Field1,json=field1,enum=enumstringer.TheTestEnum" json:"Field1"`
XXX_unrecognized []byte `json:"-"`
}
func (m *NidOptEnum) Reset() { *m = NidOptEnum{} }
func (m *NidOptEnum) String() string { return proto.CompactTextString(m) }
func (*NidOptEnum) ProtoMessage() {}
func (*NidOptEnum) Descriptor() ([]byte, []int) { return fileDescriptorEnumstringer, []int{0} }
func (m *NidOptEnum) GetField1() TheTestEnum {
if m != nil {
return m.Field1
}
return TheTestEnum_A
}
type NinOptEnum struct {
Field1 *TheTestEnum `protobuf:"varint,1,opt,name=Field1,json=field1,enum=enumstringer.TheTestEnum" json:"Field1,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *NinOptEnum) Reset() { *m = NinOptEnum{} }
func (m *NinOptEnum) String() string { return proto.CompactTextString(m) }
func (*NinOptEnum) ProtoMessage() {}
func (*NinOptEnum) Descriptor() ([]byte, []int) { return fileDescriptorEnumstringer, []int{1} }
func (m *NinOptEnum) GetField1() TheTestEnum {
if m != nil && m.Field1 != nil {
return *m.Field1
}
return TheTestEnum_A
}
type NidRepEnum struct {
Field1 []TheTestEnum `protobuf:"varint,1,rep,name=Field1,json=field1,enum=enumstringer.TheTestEnum" json:"Field1,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *NidRepEnum) Reset() { *m = NidRepEnum{} }
func (m *NidRepEnum) String() string { return proto.CompactTextString(m) }
func (*NidRepEnum) ProtoMessage() {}
func (*NidRepEnum) Descriptor() ([]byte, []int) { return fileDescriptorEnumstringer, []int{2} }
func (m *NidRepEnum) GetField1() []TheTestEnum {
if m != nil {
return m.Field1
}
return nil
}
type NinRepEnum struct {
Field1 []TheTestEnum `protobuf:"varint,1,rep,name=Field1,json=field1,enum=enumstringer.TheTestEnum" json:"Field1,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *NinRepEnum) Reset() { *m = NinRepEnum{} }
func (m *NinRepEnum) String() string { return proto.CompactTextString(m) }
func (*NinRepEnum) ProtoMessage() {}
func (*NinRepEnum) Descriptor() ([]byte, []int) { return fileDescriptorEnumstringer, []int{3} }
func (m *NinRepEnum) GetField1() []TheTestEnum {
if m != nil {
return m.Field1
}
return nil
}
func init() {
proto.RegisterType((*NidOptEnum)(nil), "enumstringer.NidOptEnum")
proto.RegisterType((*NinOptEnum)(nil), "enumstringer.NinOptEnum")
proto.RegisterType((*NidRepEnum)(nil), "enumstringer.NidRepEnum")
proto.RegisterType((*NinRepEnum)(nil), "enumstringer.NinRepEnum")
proto.RegisterEnum("enumstringer.TheTestEnum", TheTestEnum_name, TheTestEnum_value)
}
func (this *NidOptEnum) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*NidOptEnum)
if !ok {
that2, ok := that.(NidOptEnum)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *NidOptEnum")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *NidOptEnum but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *NidOptEnum but is not nil && this == nil")
}
if this.Field1 != that1.Field1 {
return fmt.Errorf("Field1 this(%v) Not Equal that(%v)", this.Field1, that1.Field1)
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *NidOptEnum) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*NidOptEnum)
if !ok {
that2, ok := that.(NidOptEnum)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Field1 != that1.Field1 {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (this *NinOptEnum) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*NinOptEnum)
if !ok {
that2, ok := that.(NinOptEnum)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *NinOptEnum")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *NinOptEnum but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *NinOptEnum but is not nil && this == nil")
}
if this.Field1 != nil && that1.Field1 != nil {
if *this.Field1 != *that1.Field1 {
return fmt.Errorf("Field1 this(%v) Not Equal that(%v)", *this.Field1, *that1.Field1)
}
} else if this.Field1 != nil {
return fmt.Errorf("this.Field1 == nil && that.Field1 != nil")
} else if that1.Field1 != nil {
return fmt.Errorf("Field1 this(%v) Not Equal that(%v)", this.Field1, that1.Field1)
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *NinOptEnum) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*NinOptEnum)
if !ok {
that2, ok := that.(NinOptEnum)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Field1 != nil && that1.Field1 != nil {
if *this.Field1 != *that1.Field1 {
return false
}
} else if this.Field1 != nil {
return false
} else if that1.Field1 != nil {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (this *NidRepEnum) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*NidRepEnum)
if !ok {
that2, ok := that.(NidRepEnum)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *NidRepEnum")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *NidRepEnum but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *NidRepEnum but is not nil && this == nil")
}
if len(this.Field1) != len(that1.Field1) {
return fmt.Errorf("Field1 this(%v) Not Equal that(%v)", len(this.Field1), len(that1.Field1))
}
for i := range this.Field1 {
if this.Field1[i] != that1.Field1[i] {
return fmt.Errorf("Field1 this[%v](%v) Not Equal that[%v](%v)", i, this.Field1[i], i, that1.Field1[i])
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *NidRepEnum) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*NidRepEnum)
if !ok {
that2, ok := that.(NidRepEnum)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if len(this.Field1) != len(that1.Field1) {
return false
}
for i := range this.Field1 {
if this.Field1[i] != that1.Field1[i] {
return false
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (this *NinRepEnum) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*NinRepEnum)
if !ok {
that2, ok := that.(NinRepEnum)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *NinRepEnum")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *NinRepEnum but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *NinRepEnum but is not nil && this == nil")
}
if len(this.Field1) != len(that1.Field1) {
return fmt.Errorf("Field1 this(%v) Not Equal that(%v)", len(this.Field1), len(that1.Field1))
}
for i := range this.Field1 {
if this.Field1[i] != that1.Field1[i] {
return fmt.Errorf("Field1 this[%v](%v) Not Equal that[%v](%v)", i, this.Field1[i], i, that1.Field1[i])
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *NinRepEnum) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*NinRepEnum)
if !ok {
that2, ok := that.(NinRepEnum)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if len(this.Field1) != len(that1.Field1) {
return false
}
for i := range this.Field1 {
if this.Field1[i] != that1.Field1[i] {
return false
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func NewPopulatedNidOptEnum(r randyEnumstringer, easy bool) *NidOptEnum {
this := &NidOptEnum{}
this.Field1 = TheTestEnum([]int32{0, 1, 2}[r.Intn(3)])
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedEnumstringer(r, 2)
}
return this
}
func NewPopulatedNinOptEnum(r randyEnumstringer, easy bool) *NinOptEnum {
this := &NinOptEnum{}
if r.Intn(10) != 0 {
v1 := TheTestEnum([]int32{0, 1, 2}[r.Intn(3)])
this.Field1 = &v1
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedEnumstringer(r, 2)
}
return this
}
func NewPopulatedNidRepEnum(r randyEnumstringer, easy bool) *NidRepEnum {
this := &NidRepEnum{}
if r.Intn(10) != 0 {
v2 := r.Intn(10)
this.Field1 = make([]TheTestEnum, v2)
for i := 0; i < v2; i++ {
this.Field1[i] = TheTestEnum([]int32{0, 1, 2}[r.Intn(3)])
}
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedEnumstringer(r, 2)
}
return this
}
func NewPopulatedNinRepEnum(r randyEnumstringer, easy bool) *NinRepEnum {
this := &NinRepEnum{}
if r.Intn(10) != 0 {
v3 := r.Intn(10)
this.Field1 = make([]TheTestEnum, v3)
for i := 0; i < v3; i++ {
this.Field1[i] = TheTestEnum([]int32{0, 1, 2}[r.Intn(3)])
}
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedEnumstringer(r, 2)
}
return this
}
type randyEnumstringer interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneEnumstringer(r randyEnumstringer) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringEnumstringer(r randyEnumstringer) string {
v4 := r.Intn(100)
tmps := make([]rune, v4)
for i := 0; i < v4; i++ {
tmps[i] = randUTF8RuneEnumstringer(r)
}
return string(tmps)
}
func randUnrecognizedEnumstringer(r randyEnumstringer, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldEnumstringer(data, r, fieldNumber, wire)
}
return data
}
func randFieldEnumstringer(data []byte, r randyEnumstringer, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateEnumstringer(data, uint64(key))
v5 := r.Int63()
if r.Intn(2) == 0 {
v5 *= -1
}
data = encodeVarintPopulateEnumstringer(data, uint64(v5))
case 1:
data = encodeVarintPopulateEnumstringer(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateEnumstringer(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateEnumstringer(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateEnumstringer(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateEnumstringer(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
var fileDescriptorEnumstringer = []byte{
// 206 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0x12, 0x4a, 0xcd, 0x2b, 0xcd,
0x2d, 0x2e, 0x29, 0xca, 0xcc, 0x4b, 0x4f, 0x2d, 0xd2, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2,
0x41, 0x16, 0x93, 0xd2, 0x4d, 0xcf, 0x2c, 0xc9, 0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, 0x4f,
0xcf, 0x4f, 0xcf, 0xd7, 0x07, 0x2b, 0x4a, 0x2a, 0x4d, 0x03, 0xf3, 0xc0, 0x1c, 0x30, 0x0b, 0xa2,
0x59, 0xc9, 0x95, 0x8b, 0xcb, 0x2f, 0x33, 0xc5, 0xbf, 0xa0, 0xc4, 0x15, 0x68, 0x88, 0x90, 0x39,
0x17, 0x9b, 0x5b, 0x66, 0x6a, 0x4e, 0x8a, 0xa1, 0x04, 0xa3, 0x02, 0xa3, 0x06, 0x9f, 0x91, 0xa4,
0x1e, 0x8a, 0x7d, 0x21, 0x19, 0xa9, 0x21, 0xa9, 0xc5, 0x60, 0xa5, 0x4e, 0x2c, 0x27, 0xee, 0xc9,
0x33, 0x04, 0xb1, 0xa5, 0x81, 0x95, 0x2b, 0xd9, 0x83, 0x8c, 0xc9, 0x83, 0x19, 0x63, 0x48, 0xb4,
0x31, 0x70, 0x03, 0x20, 0xee, 0x08, 0x4a, 0x2d, 0xc0, 0x70, 0x07, 0x33, 0xe9, 0xee, 0x80, 0x19,
0x63, 0x48, 0xb4, 0x31, 0x30, 0x03, 0xb4, 0x94, 0xb8, 0xb8, 0x91, 0x84, 0x85, 0x58, 0xb9, 0x18,
0x1d, 0x05, 0x18, 0x40, 0x94, 0x93, 0x00, 0x23, 0x88, 0x72, 0x16, 0x60, 0x72, 0x12, 0x79, 0xf0,
0x50, 0x8e, 0xf1, 0x07, 0x10, 0xaf, 0x78, 0x24, 0xc7, 0xb8, 0x03, 0x88, 0x5f, 0x3c, 0x92, 0x63,
0x00, 0x04, 0x00, 0x00, 0xff, 0xff, 0x1d, 0xb1, 0xac, 0x38, 0x9b, 0x01, 0x00, 0x00,
}
+39
View File
@@ -0,0 +1,39 @@
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package enumstringer
func (this TheTestEnum) String() string {
switch this {
case 0:
return "a"
case 1:
return "blabla"
case 2:
return "z"
}
return "3"
}
File diff suppressed because it is too large Load Diff
+568
View File
@@ -0,0 +1,568 @@
// Code generated by protoc-gen-gogo.
// source: file.dot.proto
// DO NOT EDIT!
/*
Package filedotname is a generated protocol buffer package.
It is generated from these files:
file.dot.proto
It has these top-level messages:
M
*/
package filedotname
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import github_com_gogo_protobuf_protoc_gen_gogo_descriptor "github.com/gogo/protobuf/protoc-gen-gogo/descriptor"
import github_com_gogo_protobuf_proto "github.com/gogo/protobuf/proto"
import compress_gzip "compress/gzip"
import bytes "bytes"
import io_ioutil "io/ioutil"
import strings "strings"
import sort "sort"
import strconv "strconv"
import reflect "reflect"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type M struct {
A *string `protobuf:"bytes,1,opt,name=a" json:"a,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *M) Reset() { *m = M{} }
func (*M) ProtoMessage() {}
func (*M) Descriptor() ([]byte, []int) { return fileDescriptorFileDot, []int{0} }
func init() {
proto.RegisterType((*M)(nil), "filedotname.M")
}
func (this *M) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return FileDotDescription()
}
func FileDotDescription() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
d := &github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet{}
var gzipped = []byte{
// 3329 bytes of a gzipped FileDescriptorSet
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xcc, 0x5a, 0x5d, 0x6c, 0x23, 0xd5,
0x15, 0xc6, 0xb1, 0x9d, 0xd8, 0xc7, 0x8e, 0xe3, 0x4c, 0xc2, 0xae, 0x37, 0xc0, 0x2e, 0x1b, 0xfe,
0x96, 0xa5, 0x64, 0xe9, 0xb6, 0xc0, 0x62, 0x5a, 0x50, 0x7e, 0xbc, 0xc1, 0xab, 0x24, 0x76, 0xc7,
0x31, 0x2c, 0xf4, 0x61, 0x34, 0x19, 0xdf, 0x38, 0xde, 0x1d, 0xcf, 0xb8, 0x9e, 0xf1, 0xb2, 0xe1,
0x89, 0x8a, 0xfe, 0x08, 0x55, 0xfd, 0xaf, 0x54, 0xfe, 0x5b, 0x90, 0x5a, 0x28, 0x2d, 0x2d, 0xf4,
0x4f, 0x55, 0x9f, 0x90, 0x2a, 0x5a, 0x9e, 0xaa, 0xb6, 0x4f, 0x7d, 0xe8, 0x03, 0x50, 0xa4, 0xd2,
0x96, 0xb6, 0x54, 0x5a, 0xa9, 0x48, 0xfb, 0xd2, 0x73, 0xff, 0xc6, 0x33, 0xb6, 0x93, 0x71, 0x90,
0x28, 0x5d, 0x69, 0x14, 0xdf, 0x73, 0xcf, 0xf7, 0xcd, 0xbd, 0xe7, 0x9e, 0x7b, 0xce, 0xb9, 0x77,
0x16, 0x7e, 0xf5, 0x61, 0xb8, 0xb2, 0x6e, 0xdb, 0x75, 0x93, 0x1c, 0x6b, 0xb5, 0x6d, 0xd7, 0xde,
0xe8, 0x6c, 0x1e, 0xab, 0x11, 0xc7, 0x68, 0x37, 0x5a, 0xae, 0xdd, 0x9e, 0x63, 0x32, 0x65, 0x82,
0x6b, 0xcc, 0x49, 0x8d, 0xd9, 0x55, 0x98, 0x3c, 0xd9, 0x30, 0xc9, 0x92, 0xa7, 0x58, 0x21, 0xae,
0x72, 0x02, 0x62, 0x9b, 0x28, 0xcc, 0x45, 0xae, 0x8c, 0x1e, 0x49, 0x1d, 0xbf, 0x7a, 0xae, 0x07,
0x34, 0x17, 0x44, 0x94, 0xa9, 0x58, 0x65, 0x88, 0xd9, 0x37, 0x63, 0x30, 0x35, 0xa0, 0x57, 0x51,
0x20, 0x66, 0xe9, 0x4d, 0xca, 0x18, 0x39, 0x92, 0x54, 0xd9, 0x6f, 0x25, 0x07, 0x63, 0x2d, 0xdd,
0x38, 0xab, 0xd7, 0x49, 0x6e, 0x84, 0x89, 0x65, 0x53, 0x39, 0x08, 0x50, 0x23, 0x2d, 0x62, 0xd5,
0x88, 0x65, 0x6c, 0xe7, 0xa2, 0x38, 0x8a, 0xa4, 0xea, 0x93, 0x28, 0x37, 0xc0, 0x64, 0xab, 0xb3,
0x61, 0x36, 0x0c, 0xcd, 0xa7, 0x06, 0xa8, 0x16, 0x57, 0xb3, 0xbc, 0x63, 0xa9, 0xab, 0x7c, 0x1d,
0x4c, 0xdc, 0x4f, 0xf4, 0xb3, 0x7e, 0xd5, 0x14, 0x53, 0xcd, 0x50, 0xb1, 0x4f, 0x71, 0x11, 0xd2,
0x4d, 0xe2, 0x38, 0x38, 0x00, 0xcd, 0xdd, 0x6e, 0x91, 0x5c, 0x8c, 0xcd, 0xfe, 0xca, 0xbe, 0xd9,
0xf7, 0xce, 0x3c, 0x25, 0x50, 0xeb, 0x08, 0x52, 0xe6, 0x21, 0x49, 0xac, 0x4e, 0x93, 0x33, 0xc4,
0x77, 0xb0, 0x5f, 0x01, 0x35, 0x7a, 0x59, 0x12, 0x14, 0x26, 0x28, 0xc6, 0x1c, 0xd2, 0x3e, 0xd7,
0x30, 0x48, 0x6e, 0x94, 0x11, 0x5c, 0xd7, 0x47, 0x50, 0xe1, 0xfd, 0xbd, 0x1c, 0x12, 0x87, 0x53,
0x49, 0x92, 0xf3, 0x2e, 0xb1, 0x9c, 0x86, 0x6d, 0xe5, 0xc6, 0x18, 0xc9, 0x35, 0x03, 0x56, 0x91,
0x98, 0xb5, 0x5e, 0x8a, 0x2e, 0x4e, 0xb9, 0x05, 0xc6, 0xec, 0x96, 0x8b, 0xbf, 0x9c, 0x5c, 0x02,
0xd7, 0x27, 0x75, 0xfc, 0xf2, 0x81, 0x8e, 0x50, 0xe2, 0x3a, 0xaa, 0x54, 0x56, 0x8a, 0x90, 0x75,
0xec, 0x4e, 0xdb, 0x20, 0x9a, 0x61, 0xd7, 0x88, 0xd6, 0xb0, 0x36, 0xed, 0x5c, 0x92, 0x11, 0x1c,
0xea, 0x9f, 0x08, 0x53, 0x5c, 0x44, 0xbd, 0x22, 0xaa, 0xa9, 0x19, 0x27, 0xd0, 0x56, 0xf6, 0xc1,
0xa8, 0xb3, 0x6d, 0xb9, 0xfa, 0xf9, 0x5c, 0x9a, 0x79, 0x88, 0x68, 0xcd, 0xfe, 0x27, 0x0e, 0x13,
0xc3, 0xb8, 0xd8, 0xed, 0x10, 0xdf, 0xa4, 0xb3, 0x44, 0x07, 0xdb, 0x83, 0x0d, 0x38, 0x26, 0x68,
0xc4, 0xd1, 0xf7, 0x68, 0xc4, 0x79, 0x48, 0x59, 0xc4, 0x71, 0x49, 0x8d, 0x7b, 0x44, 0x74, 0x48,
0x9f, 0x02, 0x0e, 0xea, 0x77, 0xa9, 0xd8, 0x7b, 0x72, 0xa9, 0xd3, 0x30, 0xe1, 0x0d, 0x49, 0x6b,
0xeb, 0x56, 0x5d, 0xfa, 0xe6, 0xb1, 0xb0, 0x91, 0xcc, 0x15, 0x24, 0x4e, 0xa5, 0x30, 0x35, 0x43,
0x02, 0x6d, 0x65, 0x09, 0xc0, 0xb6, 0x88, 0xbd, 0x89, 0xdb, 0xcb, 0x30, 0xd1, 0x4f, 0x06, 0x5b,
0xa9, 0x44, 0x55, 0xfa, 0xac, 0x64, 0x73, 0xa9, 0x61, 0x2a, 0xb7, 0x75, 0x5d, 0x6d, 0x6c, 0x07,
0x4f, 0x59, 0xe5, 0x9b, 0xac, 0xcf, 0xdb, 0xaa, 0x90, 0x69, 0x13, 0xea, 0xf7, 0x68, 0x62, 0x3e,
0xb3, 0x24, 0x1b, 0xc4, 0x5c, 0xe8, 0xcc, 0x54, 0x01, 0xe3, 0x13, 0x1b, 0x6f, 0xfb, 0x9b, 0xca,
0x55, 0xe0, 0x09, 0x34, 0xe6, 0x56, 0xc0, 0xa2, 0x50, 0x5a, 0x0a, 0xd7, 0x50, 0x36, 0x73, 0x02,
0x32, 0x41, 0xf3, 0x28, 0xd3, 0x10, 0x77, 0x5c, 0xbd, 0xed, 0x32, 0x2f, 0x8c, 0xab, 0xbc, 0xa1,
0x64, 0x21, 0x8a, 0x41, 0x86, 0x45, 0xb9, 0xb8, 0x4a, 0x7f, 0xce, 0xdc, 0x0a, 0xe3, 0x81, 0xd7,
0x0f, 0x0b, 0x9c, 0x7d, 0x64, 0x14, 0xa6, 0x07, 0xf9, 0xdc, 0x40, 0xf7, 0xc7, 0xed, 0x83, 0x1e,
0xb0, 0x41, 0xda, 0xe8, 0x77, 0x94, 0x41, 0xb4, 0xd0, 0xa3, 0xe2, 0xa6, 0xbe, 0x41, 0x4c, 0xf4,
0xa6, 0xc8, 0x91, 0xcc, 0xf1, 0x1b, 0x86, 0xf2, 0xea, 0xb9, 0x15, 0x0a, 0x51, 0x39, 0x52, 0xb9,
0x03, 0x62, 0x22, 0xc4, 0x51, 0x86, 0xa3, 0xc3, 0x31, 0x50, 0x5f, 0x54, 0x19, 0x4e, 0xb9, 0x0c,
0x92, 0xf4, 0x2f, 0xb7, 0xed, 0x28, 0x1b, 0x73, 0x82, 0x0a, 0xa8, 0x5d, 0x95, 0x19, 0x48, 0x30,
0x37, 0xab, 0x11, 0x99, 0x1a, 0xbc, 0x36, 0x5d, 0x98, 0x1a, 0xd9, 0xd4, 0x3b, 0xa6, 0xab, 0x9d,
0xd3, 0xcd, 0x0e, 0x61, 0x0e, 0x83, 0x0b, 0x23, 0x84, 0x77, 0x53, 0x99, 0x72, 0x08, 0x52, 0xdc,
0x2b, 0x1b, 0x88, 0x39, 0xcf, 0xa2, 0x4f, 0x5c, 0xe5, 0x8e, 0x5a, 0xa4, 0x12, 0xfa, 0xfa, 0x33,
0x0e, 0xee, 0x05, 0xb1, 0xb4, 0xec, 0x15, 0x54, 0xc0, 0x5e, 0x7f, 0x6b, 0x6f, 0xe0, 0xbb, 0x62,
0xf0, 0xf4, 0x7a, 0x7d, 0x71, 0xf6, 0xe7, 0x23, 0x10, 0x63, 0xfb, 0x6d, 0x02, 0x52, 0xeb, 0xf7,
0x96, 0x0b, 0xda, 0x52, 0xa9, 0xba, 0xb0, 0x52, 0xc8, 0x46, 0x94, 0x0c, 0x00, 0x13, 0x9c, 0x5c,
0x29, 0xcd, 0xaf, 0x67, 0x47, 0xbc, 0x76, 0x71, 0x6d, 0xfd, 0x96, 0x8f, 0x66, 0xa3, 0x1e, 0xa0,
0xca, 0x05, 0x31, 0xbf, 0xc2, 0x47, 0x8e, 0x67, 0xe3, 0xe8, 0x09, 0x69, 0x4e, 0x50, 0x3c, 0x5d,
0x58, 0x42, 0x8d, 0xd1, 0xa0, 0x04, 0x75, 0xc6, 0x94, 0x71, 0x48, 0x32, 0xc9, 0x42, 0xa9, 0xb4,
0x92, 0x4d, 0x78, 0x9c, 0x95, 0x75, 0xb5, 0xb8, 0xb6, 0x9c, 0x4d, 0x7a, 0x9c, 0xcb, 0x6a, 0xa9,
0x5a, 0xce, 0x82, 0xc7, 0xb0, 0x5a, 0xa8, 0x54, 0xe6, 0x97, 0x0b, 0xd9, 0x94, 0xa7, 0xb1, 0x70,
0xef, 0x7a, 0xa1, 0x92, 0x4d, 0x07, 0x86, 0x85, 0xaf, 0x18, 0xf7, 0x5e, 0x51, 0x58, 0xab, 0xae,
0x66, 0x33, 0xca, 0x24, 0x8c, 0xf3, 0x57, 0xc8, 0x41, 0x4c, 0xf4, 0x88, 0x70, 0xa4, 0xd9, 0xee,
0x40, 0x38, 0xcb, 0x64, 0x40, 0x80, 0x1a, 0xca, 0xec, 0x22, 0xc4, 0x99, 0x77, 0xa1, 0x17, 0x67,
0x56, 0xe6, 0x17, 0x0a, 0x2b, 0x5a, 0xa9, 0xbc, 0x5e, 0x2c, 0xad, 0xcd, 0xaf, 0xa0, 0xed, 0x3c,
0x99, 0x5a, 0xf8, 0x44, 0xb5, 0xa8, 0x16, 0x96, 0xd0, 0x7e, 0x3e, 0x59, 0xb9, 0x30, 0xbf, 0x8e,
0xb2, 0xe8, 0xec, 0x51, 0x98, 0x1e, 0x14, 0x67, 0x06, 0xed, 0x8c, 0xd9, 0x67, 0x22, 0x30, 0x35,
0x20, 0x64, 0x0e, 0xdc, 0x45, 0x77, 0x42, 0x9c, 0x7b, 0x1a, 0x4f, 0x22, 0xd7, 0x0f, 0x8c, 0xbd,
0xcc, 0xef, 0xfa, 0x12, 0x09, 0xc3, 0xf9, 0x13, 0x69, 0x74, 0x87, 0x44, 0x4a, 0x29, 0xfa, 0xdc,
0xe9, 0xa1, 0x08, 0xe4, 0x76, 0xe2, 0x0e, 0xd9, 0xef, 0x23, 0x81, 0xfd, 0x7e, 0x7b, 0xef, 0x00,
0x0e, 0xef, 0x3c, 0x87, 0xbe, 0x51, 0x3c, 0x1b, 0x81, 0x7d, 0x83, 0xeb, 0x8d, 0x81, 0x63, 0xb8,
0x03, 0x46, 0x9b, 0xc4, 0xdd, 0xb2, 0x65, 0xce, 0xbd, 0x76, 0x40, 0x24, 0xa7, 0xdd, 0xbd, 0xb6,
0x12, 0x28, 0x7f, 0x2a, 0x88, 0xee, 0x54, 0x34, 0xf0, 0xd1, 0xf4, 0x8d, 0xf4, 0xe1, 0x11, 0xb8,
0x74, 0x20, 0xf9, 0xc0, 0x81, 0x5e, 0x01, 0xd0, 0xb0, 0x5a, 0x1d, 0x97, 0xe7, 0x55, 0x1e, 0x66,
0x92, 0x4c, 0xc2, 0xb6, 0x30, 0x0d, 0x21, 0x1d, 0xd7, 0xeb, 0x8f, 0xb2, 0x7e, 0xe0, 0x22, 0xa6,
0x70, 0xa2, 0x3b, 0xd0, 0x18, 0x1b, 0xe8, 0xc1, 0x1d, 0x66, 0xda, 0x97, 0xb2, 0x6e, 0x82, 0xac,
0x61, 0x36, 0x88, 0xe5, 0x6a, 0x8e, 0xdb, 0x26, 0x7a, 0xb3, 0x61, 0xd5, 0x59, 0x1c, 0x4d, 0xe4,
0xe3, 0x9b, 0xba, 0xe9, 0x10, 0x75, 0x82, 0x77, 0x57, 0x64, 0x2f, 0x45, 0xb0, 0x64, 0xd1, 0xf6,
0x21, 0x46, 0x03, 0x08, 0xde, 0xed, 0x21, 0x66, 0xff, 0x30, 0x06, 0x29, 0x5f, 0x75, 0xa6, 0x1c,
0x86, 0xf4, 0x19, 0xfd, 0x9c, 0xae, 0xc9, 0x8a, 0x9b, 0x5b, 0x22, 0x45, 0x65, 0x65, 0x51, 0x75,
0xdf, 0x04, 0xd3, 0x4c, 0x05, 0xe7, 0x88, 0x2f, 0x32, 0x4c, 0xdd, 0x71, 0x98, 0xd1, 0x12, 0x4c,
0x55, 0xa1, 0x7d, 0x25, 0xda, 0xb5, 0x28, 0x7b, 0x94, 0x9b, 0x61, 0x8a, 0x21, 0x9a, 0x18, 0x78,
0x1b, 0x2d, 0x93, 0x68, 0xf4, 0x0c, 0xe0, 0xb0, 0x78, 0xea, 0x8d, 0x6c, 0x92, 0x6a, 0xac, 0x0a,
0x05, 0x3a, 0x22, 0x47, 0x59, 0x86, 0x2b, 0x18, 0xac, 0x4e, 0x2c, 0xd2, 0xd6, 0x5d, 0xa2, 0x91,
0x4f, 0x75, 0x50, 0x57, 0xd3, 0xad, 0x9a, 0xb6, 0xa5, 0x3b, 0x5b, 0xb9, 0x69, 0x3f, 0xc1, 0x01,
0xaa, 0xbb, 0x2c, 0x54, 0x0b, 0x4c, 0x73, 0xde, 0xaa, 0xdd, 0x85, 0x7a, 0x4a, 0x1e, 0xf6, 0x31,
0x22, 0x34, 0x0a, 0xce, 0x59, 0x33, 0xb6, 0x88, 0x71, 0x56, 0xeb, 0xb8, 0x9b, 0x27, 0x72, 0x97,
0xf9, 0x19, 0xd8, 0x20, 0x2b, 0x4c, 0x67, 0x91, 0xaa, 0x54, 0x51, 0x43, 0xa9, 0x40, 0x9a, 0xae,
0x47, 0xb3, 0xf1, 0x00, 0x0e, 0xdb, 0x6e, 0xb3, 0x1c, 0x91, 0x19, 0xb0, 0xb9, 0x7d, 0x46, 0x9c,
0x2b, 0x09, 0xc0, 0x2a, 0xd6, 0xa7, 0xf9, 0x78, 0xa5, 0x5c, 0x28, 0x2c, 0xa9, 0x29, 0xc9, 0x72,
0xd2, 0x6e, 0x53, 0x9f, 0xaa, 0xdb, 0x9e, 0x8d, 0x53, 0xdc, 0xa7, 0xea, 0xb6, 0xb4, 0x30, 0xda,
0xcb, 0x30, 0xf8, 0xb4, 0xf1, 0xec, 0x22, 0x8a, 0x75, 0x27, 0x97, 0x0d, 0xd8, 0xcb, 0x30, 0x96,
0xb9, 0x82, 0x70, 0x73, 0x07, 0xb7, 0xc4, 0xa5, 0x5d, 0x7b, 0xf9, 0x81, 0x93, 0x7d, 0xb3, 0xec,
0x85, 0xe2, 0x1b, 0x5b, 0xdb, 0xfd, 0x40, 0x25, 0xf0, 0xc6, 0xd6, 0x76, 0x2f, 0xec, 0x1a, 0x76,
0x00, 0x6b, 0x13, 0x03, 0x4d, 0x5e, 0xcb, 0xed, 0xf7, 0x6b, 0xfb, 0x3a, 0x94, 0x63, 0xe8, 0xc8,
0x86, 0x46, 0x2c, 0x7d, 0x03, 0xd7, 0x5e, 0x6f, 0xe3, 0x0f, 0x27, 0x77, 0xc8, 0xaf, 0x9c, 0x31,
0x8c, 0x02, 0xeb, 0x9d, 0x67, 0x9d, 0xca, 0x51, 0x98, 0xb4, 0x37, 0xce, 0x18, 0xdc, 0xb9, 0x34,
0xe4, 0xd9, 0x6c, 0x9c, 0xcf, 0x5d, 0xcd, 0xcc, 0x34, 0x41, 0x3b, 0x98, 0x6b, 0x95, 0x99, 0x58,
0xb9, 0x1e, 0xc9, 0x9d, 0x2d, 0xbd, 0xdd, 0x62, 0x49, 0xda, 0x41, 0xa3, 0x92, 0xdc, 0x35, 0x5c,
0x95, 0xcb, 0xd7, 0xa4, 0x58, 0x29, 0xc0, 0x21, 0x3a, 0x79, 0x4b, 0xb7, 0x6c, 0xad, 0xe3, 0x10,
0xad, 0x3b, 0x44, 0x6f, 0x2d, 0xae, 0xa5, 0xc3, 0x52, 0x2f, 0x97, 0x6a, 0x55, 0x07, 0x83, 0x99,
0x54, 0x92, 0xcb, 0x73, 0x1a, 0xa6, 0x3b, 0x56, 0xc3, 0x42, 0x17, 0xc7, 0x1e, 0x0a, 0xe6, 0x1b,
0x36, 0xf7, 0x97, 0xb1, 0x1d, 0x8a, 0xee, 0xaa, 0x5f, 0x9b, 0x3b, 0x89, 0x3a, 0xd5, 0xe9, 0x17,
0xce, 0xe6, 0x21, 0xed, 0xf7, 0x1d, 0x25, 0x09, 0xdc, 0x7b, 0x30, 0xbb, 0x61, 0x46, 0x5d, 0x2c,
0x2d, 0xd1, 0x5c, 0x78, 0x5f, 0x01, 0x13, 0x1b, 0xe6, 0xe4, 0x95, 0xe2, 0x7a, 0x41, 0x53, 0xab,
0x6b, 0xeb, 0xc5, 0xd5, 0x42, 0x36, 0x7a, 0x34, 0x99, 0x78, 0x6b, 0x2c, 0xfb, 0x20, 0xfe, 0x1b,
0x99, 0x7d, 0x65, 0x04, 0x32, 0xc1, 0x3a, 0x58, 0xf9, 0x18, 0xec, 0x97, 0x87, 0x56, 0x87, 0xb8,
0xda, 0xfd, 0x8d, 0x36, 0x73, 0xe7, 0xa6, 0xce, 0x2b, 0x49, 0x6f, 0x25, 0xa6, 0x85, 0x16, 0x1e,
0xef, 0xef, 0x41, 0x9d, 0x93, 0x4c, 0x45, 0x59, 0x81, 0x43, 0x68, 0x32, 0xac, 0x35, 0xad, 0x9a,
0xde, 0xae, 0x69, 0xdd, 0xeb, 0x02, 0x4d, 0x37, 0xd0, 0x0f, 0x1c, 0x9b, 0x67, 0x12, 0x8f, 0xe5,
0x72, 0xcb, 0xae, 0x08, 0xe5, 0x6e, 0x88, 0x9d, 0x17, 0xaa, 0x3d, 0x5e, 0x13, 0xdd, 0xc9, 0x6b,
0xb0, 0xf6, 0x6a, 0xea, 0x2d, 0x74, 0x1b, 0xb7, 0xbd, 0xcd, 0xaa, 0xb7, 0x84, 0x9a, 0x40, 0x41,
0x81, 0xb6, 0xdf, 0xbf, 0x35, 0xf0, 0xdb, 0xf1, 0x4f, 0x51, 0x48, 0xfb, 0x2b, 0x38, 0x5a, 0x10,
0x1b, 0x2c, 0xcc, 0x47, 0x58, 0x14, 0xb8, 0x6a, 0xd7, 0x7a, 0x6f, 0x6e, 0x91, 0xc6, 0xff, 0xfc,
0x28, 0xaf, 0xab, 0x54, 0x8e, 0xa4, 0xb9, 0x97, 0xfa, 0x1a, 0xe1, 0xd5, 0x7a, 0x42, 0x15, 0x2d,
0x0c, 0x76, 0xa3, 0x67, 0x1c, 0xc6, 0x3d, 0xca, 0xb8, 0xaf, 0xde, 0x9d, 0xfb, 0x54, 0x85, 0x91,
0x27, 0x4f, 0x55, 0xb4, 0xb5, 0x92, 0xba, 0x3a, 0xbf, 0xa2, 0x0a, 0xb8, 0x72, 0x00, 0x62, 0xa6,
0xfe, 0xc0, 0x76, 0x30, 0x53, 0x30, 0xd1, 0xb0, 0x86, 0x47, 0x06, 0x7a, 0xe5, 0x11, 0x8c, 0xcf,
0x4c, 0xf4, 0x3e, 0xba, 0xfe, 0x31, 0x88, 0x33, 0x7b, 0x29, 0x00, 0xc2, 0x62, 0xd9, 0x4b, 0x94,
0x04, 0xc4, 0x16, 0x4b, 0x2a, 0x75, 0x7f, 0xf4, 0x77, 0x2e, 0xd5, 0xca, 0xc5, 0xc2, 0x22, 0xee,
0x80, 0xd9, 0x9b, 0x61, 0x94, 0x1b, 0x81, 0x6e, 0x0d, 0xcf, 0x0c, 0x08, 0xe2, 0x4d, 0xc1, 0x11,
0x91, 0xbd, 0xd5, 0xd5, 0x85, 0x82, 0x9a, 0x1d, 0xf1, 0x2f, 0xef, 0x2f, 0x23, 0x90, 0xf2, 0x15,
0x54, 0x34, 0x95, 0xeb, 0xa6, 0x69, 0xdf, 0xaf, 0xe9, 0x66, 0x03, 0x23, 0x14, 0x5f, 0x1f, 0x60,
0xa2, 0x79, 0x2a, 0x19, 0xd6, 0x7e, 0xff, 0x13, 0xdf, 0x7c, 0x2a, 0x02, 0xd9, 0xde, 0x62, 0xac,
0x67, 0x80, 0x91, 0x0f, 0x74, 0x80, 0x4f, 0x44, 0x20, 0x13, 0xac, 0xc0, 0x7a, 0x86, 0x77, 0xf8,
0x03, 0x1d, 0xde, 0xe3, 0x11, 0x18, 0x0f, 0xd4, 0x5d, 0xff, 0x57, 0xa3, 0x7b, 0x2c, 0x0a, 0x53,
0x03, 0x70, 0x18, 0x80, 0x78, 0x81, 0xca, 0x6b, 0xe6, 0x1b, 0x87, 0x79, 0xd7, 0x1c, 0xcd, 0x7f,
0x65, 0xbd, 0xed, 0x8a, 0x7a, 0x16, 0xf3, 0x65, 0xa3, 0x86, 0x41, 0xb5, 0xb1, 0xd9, 0xc0, 0xf2,
0x8d, 0x9f, 0x58, 0x78, 0xd5, 0x3a, 0xd1, 0x95, 0xf3, 0xe3, 0xf1, 0x87, 0x40, 0x69, 0xd9, 0x4e,
0xc3, 0x6d, 0x9c, 0xa3, 0xd7, 0x73, 0xf2, 0x20, 0x4d, 0xab, 0xd8, 0x98, 0x9a, 0x95, 0x3d, 0x45,
0xcb, 0xf5, 0xb4, 0x2d, 0x52, 0xd7, 0x7b, 0xb4, 0x69, 0x18, 0x8a, 0xaa, 0x59, 0xd9, 0xe3, 0x69,
0x63, 0xa1, 0x59, 0xb3, 0x3b, 0xb4, 0x20, 0xe0, 0x7a, 0x34, 0xea, 0x45, 0xd4, 0x14, 0x97, 0x79,
0x2a, 0xa2, 0x62, 0xeb, 0x9e, 0xe0, 0xd3, 0x6a, 0x8a, 0xcb, 0xb8, 0xca, 0x75, 0x30, 0xa1, 0xd7,
0xeb, 0x6d, 0x4a, 0x2e, 0x89, 0x78, 0x19, 0x9a, 0xf1, 0xc4, 0x4c, 0x71, 0xe6, 0x14, 0x24, 0xa4,
0x1d, 0x68, 0x62, 0xa1, 0x96, 0xc0, 0x9c, 0xcf, 0xee, 0x51, 0x46, 0xe8, 0xa1, 0xde, 0x92, 0x9d,
0xf8, 0xd2, 0x86, 0xa3, 0x75, 0x2f, 0xf4, 0x46, 0xb0, 0x3f, 0xa1, 0xa6, 0x1a, 0x8e, 0x77, 0x83,
0x33, 0xfb, 0x2c, 0xa6, 0xd7, 0xe0, 0x85, 0xa4, 0xb2, 0x04, 0x09, 0xd3, 0x46, 0xff, 0xa0, 0x08,
0x7e, 0x1b, 0x7e, 0x24, 0xe4, 0x0e, 0x73, 0x6e, 0x45, 0xe8, 0xab, 0x1e, 0x72, 0xe6, 0xb7, 0x11,
0x48, 0x48, 0x31, 0x26, 0x8a, 0x58, 0x4b, 0x77, 0xb7, 0x18, 0x5d, 0x7c, 0x61, 0x24, 0x1b, 0x51,
0x59, 0x9b, 0xca, 0xb1, 0x9a, 0xb1, 0x98, 0x0b, 0x08, 0x39, 0x6d, 0xd3, 0x75, 0x35, 0x89, 0x5e,
0x63, 0x05, 0xae, 0xdd, 0x6c, 0xe2, 0x4a, 0x3a, 0x72, 0x5d, 0x85, 0x7c, 0x51, 0x88, 0xe9, 0xbd,
0xb8, 0xdb, 0xd6, 0x1b, 0x66, 0x40, 0x37, 0xc6, 0x74, 0xb3, 0xb2, 0xc3, 0x53, 0xce, 0xc3, 0x01,
0xc9, 0x5b, 0x23, 0xae, 0x8e, 0xc5, 0x73, 0xad, 0x0b, 0x1a, 0x65, 0xb7, 0x5d, 0xfb, 0x85, 0xc2,
0x92, 0xe8, 0x97, 0xd8, 0x85, 0xd3, 0x58, 0xc8, 0xda, 0xcd, 0x5e, 0x4b, 0x2c, 0x64, 0x7b, 0xce,
0x5d, 0xce, 0x5d, 0x91, 0xfb, 0xa0, 0x5b, 0x54, 0x3c, 0x33, 0x12, 0x5d, 0x2e, 0x2f, 0x3c, 0x3f,
0x32, 0xb3, 0xcc, 0x71, 0x65, 0x69, 0x41, 0x95, 0x6c, 0x9a, 0xc4, 0xa0, 0xd6, 0x81, 0xa7, 0xaf,
0x82, 0x1b, 0xeb, 0x0d, 0x77, 0xab, 0xb3, 0x31, 0x87, 0x6f, 0x38, 0x56, 0xb7, 0xeb, 0x76, 0xf7,
0x73, 0x06, 0x6d, 0xb1, 0x06, 0xfb, 0x25, 0x3e, 0x69, 0x24, 0x3d, 0xe9, 0x4c, 0xe8, 0xf7, 0x8f,
0xfc, 0x1a, 0x4c, 0x09, 0x65, 0x8d, 0xdd, 0xa9, 0xf2, 0x12, 0x54, 0xd9, 0xf5, 0x40, 0x9e, 0x7b,
0xe9, 0x4d, 0x96, 0x12, 0xd4, 0x49, 0x01, 0xa5, 0x7d, 0xbc, 0x48, 0xcd, 0xab, 0x70, 0x69, 0x80,
0x8f, 0xfb, 0x30, 0x1e, 0xb9, 0x77, 0x67, 0x7c, 0x45, 0x30, 0x4e, 0xf9, 0x18, 0x2b, 0x02, 0x9a,
0x5f, 0x84, 0xf1, 0xbd, 0x70, 0xfd, 0x5a, 0x70, 0xa5, 0x89, 0x9f, 0x64, 0x19, 0x26, 0x18, 0x89,
0xd1, 0x71, 0x5c, 0xbb, 0xc9, 0x02, 0xc4, 0xee, 0x34, 0xbf, 0x79, 0x93, 0x3b, 0x55, 0x86, 0xc2,
0x16, 0x3d, 0x54, 0xfe, 0x6e, 0x98, 0xa6, 0x12, 0xb6, 0x07, 0xfd, 0x6c, 0xe1, 0x57, 0x08, 0xb9,
0xdf, 0x3f, 0xc4, 0x7d, 0x6f, 0xca, 0x23, 0xf0, 0xf1, 0xfa, 0x56, 0xa2, 0x4e, 0x5c, 0x8c, 0x6d,
0x78, 0xfe, 0x33, 0x4d, 0x65, 0xd7, 0x6f, 0x0c, 0xb9, 0x47, 0xdf, 0x0e, 0xae, 0xc4, 0x32, 0x47,
0xce, 0x9b, 0x66, 0xbe, 0x0a, 0xfb, 0x07, 0xac, 0xec, 0x10, 0x9c, 0x8f, 0x09, 0xce, 0xe9, 0xbe,
0xd5, 0xa5, 0xb4, 0x65, 0x90, 0x72, 0x6f, 0x3d, 0x86, 0xe0, 0x7c, 0x5c, 0x70, 0x2a, 0x02, 0x2b,
0x97, 0x85, 0x32, 0x9e, 0x82, 0x49, 0x3c, 0xa9, 0x6f, 0xd8, 0x8e, 0x38, 0xf7, 0x0e, 0x41, 0xf7,
0x84, 0xa0, 0x9b, 0x10, 0x40, 0x76, 0x0a, 0xa6, 0x5c, 0xb7, 0x41, 0x62, 0x13, 0x0f, 0x40, 0x43,
0x50, 0x3c, 0x29, 0x28, 0xc6, 0xa8, 0x3e, 0x85, 0xce, 0x43, 0xba, 0x6e, 0x8b, 0x30, 0x1c, 0x0e,
0x7f, 0x4a, 0xc0, 0x53, 0x12, 0x23, 0x28, 0x5a, 0x76, 0xab, 0x63, 0xd2, 0x18, 0x1d, 0x4e, 0xf1,
0x2d, 0x49, 0x21, 0x31, 0x82, 0x62, 0x0f, 0x66, 0xfd, 0xb6, 0xa4, 0x70, 0x7c, 0xf6, 0xbc, 0x93,
0xde, 0xf5, 0x9a, 0xdb, 0xb6, 0x35, 0xcc, 0x20, 0x9e, 0x16, 0x0c, 0x20, 0x20, 0x94, 0xe0, 0x76,
0x48, 0x0e, 0xbb, 0x10, 0xdf, 0x11, 0xf0, 0x04, 0x91, 0x2b, 0x80, 0xfb, 0x4c, 0x06, 0x19, 0xfa,
0x6d, 0x25, 0x9c, 0xe2, 0xbb, 0x82, 0x22, 0xe3, 0x83, 0x89, 0x69, 0xb8, 0xc4, 0x71, 0xf1, 0xa8,
0x3e, 0x04, 0xc9, 0xb3, 0x72, 0x1a, 0x02, 0x22, 0x4c, 0xb9, 0x41, 0x2c, 0x63, 0x6b, 0x38, 0x86,
0xe7, 0xa4, 0x29, 0x25, 0x86, 0x52, 0x60, 0xe4, 0x69, 0xea, 0x6d, 0x3c, 0x5c, 0x9b, 0x43, 0x2d,
0xc7, 0xf7, 0x04, 0x47, 0xda, 0x03, 0x09, 0x8b, 0x74, 0xac, 0xbd, 0xd0, 0x3c, 0x2f, 0x2d, 0xe2,
0x83, 0x89, 0xad, 0x87, 0x27, 0x53, 0x5a, 0x49, 0xec, 0x85, 0xed, 0xfb, 0x72, 0xeb, 0x71, 0xec,
0xaa, 0x9f, 0x11, 0x57, 0xda, 0xc1, 0x23, 0xf8, 0x30, 0x34, 0x3f, 0x90, 0x2b, 0xcd, 0x00, 0x14,
0x7c, 0x2f, 0x1c, 0x18, 0x18, 0xea, 0x87, 0x20, 0x7b, 0x41, 0x90, 0xed, 0x1b, 0x10, 0xee, 0x45,
0x48, 0xd8, 0x2b, 0xe5, 0x0f, 0x65, 0x48, 0x20, 0x3d, 0x5c, 0x65, 0x5a, 0xc6, 0x3a, 0xfa, 0xe6,
0xde, 0xac, 0xf6, 0x23, 0x69, 0x35, 0x8e, 0x0d, 0x58, 0x6d, 0x1d, 0xf6, 0x09, 0xc6, 0xbd, 0xad,
0xeb, 0x8b, 0x32, 0xb0, 0x72, 0x74, 0x35, 0xb8, 0xba, 0x9f, 0x84, 0x19, 0xcf, 0x9c, 0xb2, 0x02,
0x73, 0x34, 0x7a, 0x31, 0x10, 0xce, 0xfc, 0x92, 0x60, 0x96, 0x11, 0xdf, 0x2b, 0xe1, 0x9c, 0x55,
0xbd, 0x45, 0xc9, 0x4f, 0x43, 0x4e, 0x92, 0x77, 0x2c, 0x2c, 0xf0, 0xed, 0xba, 0x85, 0xcb, 0x58,
0x1b, 0x82, 0xfa, 0xc7, 0x3d, 0x4b, 0x55, 0xf5, 0xc1, 0x29, 0x73, 0x11, 0xb2, 0x5e, 0xbd, 0xa1,
0x35, 0x9a, 0x2d, 0x1b, 0x4b, 0xcb, 0xdd, 0x19, 0x7f, 0x22, 0x57, 0xca, 0xc3, 0x15, 0x19, 0x2c,
0x5f, 0x80, 0x0c, 0x6b, 0x0e, 0xeb, 0x92, 0x3f, 0x15, 0x44, 0xe3, 0x5d, 0x94, 0x08, 0x1c, 0x58,
0x29, 0x61, 0xcd, 0x3b, 0x4c, 0xfc, 0xfb, 0x99, 0x0c, 0x1c, 0x02, 0xc2, 0xbd, 0x6f, 0xa2, 0x27,
0x13, 0x2b, 0x61, 0x9f, 0x5f, 0x73, 0x9f, 0xbe, 0x20, 0xf6, 0x6c, 0x30, 0x11, 0xe7, 0x57, 0xa8,
0x79, 0x82, 0xe9, 0x32, 0x9c, 0xec, 0xa1, 0x0b, 0x9e, 0x85, 0x02, 0xd9, 0x32, 0x7f, 0x12, 0xc6,
0x03, 0xa9, 0x32, 0x9c, 0xea, 0x33, 0x82, 0x2a, 0xed, 0xcf, 0x94, 0xf9, 0x9b, 0x21, 0x46, 0xd3,
0x5e, 0x38, 0xfc, 0xb3, 0x02, 0xce, 0xd4, 0xf3, 0x1f, 0x87, 0x84, 0x4c, 0x77, 0xe1, 0xd0, 0xcf,
0x09, 0xa8, 0x07, 0xa1, 0x70, 0x99, 0xea, 0xc2, 0xe1, 0x9f, 0x97, 0x70, 0x09, 0xa1, 0xf0, 0xe1,
0x4d, 0xf8, 0xf2, 0x17, 0x62, 0x22, 0x5c, 0x49, 0xdb, 0xd1, 0x6f, 0x3e, 0x3c, 0xc7, 0x85, 0xa3,
0x1f, 0x16, 0x2f, 0x97, 0x88, 0xfc, 0xad, 0x10, 0x1f, 0xd2, 0xe0, 0x5f, 0x14, 0x50, 0xae, 0x8f,
0x19, 0x24, 0xe5, 0xcb, 0x6b, 0xe1, 0xf0, 0x2f, 0x09, 0xb8, 0x1f, 0x45, 0x87, 0x2e, 0xf2, 0x5a,
0x38, 0xc1, 0x97, 0xe5, 0xd0, 0x05, 0x82, 0x9a, 0x4d, 0xa6, 0xb4, 0x70, 0xf4, 0x57, 0xa4, 0xd5,
0x25, 0x04, 0x77, 0x53, 0xd2, 0x0b, 0x53, 0xe1, 0xf8, 0xaf, 0x0a, 0x7c, 0x17, 0x43, 0x2d, 0xe0,
0x0b, 0x93, 0xe1, 0x14, 0x5f, 0x93, 0x16, 0xf0, 0xa1, 0xe8, 0x36, 0xea, 0x4d, 0x7d, 0xe1, 0x4c,
0x5f, 0x97, 0xdb, 0xa8, 0x27, 0xf3, 0xd1, 0xd5, 0x64, 0xd1, 0x22, 0x9c, 0xe2, 0x1b, 0x72, 0x35,
0x99, 0x3e, 0x1d, 0x46, 0x6f, 0x2e, 0x09, 0xe7, 0xf8, 0xa6, 0x1c, 0x46, 0x4f, 0x2a, 0xc1, 0xcc,
0xa4, 0xf4, 0xe7, 0x91, 0x70, 0xbe, 0x47, 0x04, 0xdf, 0x64, 0x5f, 0x1a, 0xc9, 0xdf, 0x03, 0xfb,
0x06, 0xe7, 0x90, 0x70, 0xd6, 0x47, 0x2f, 0xf4, 0x54, 0xfd, 0xfe, 0x14, 0x82, 0x29, 0x6f, 0x7a,
0x50, 0xfe, 0x08, 0xa7, 0x7d, 0xec, 0x42, 0xf0, 0x60, 0xe7, 0x4f, 0x1f, 0x58, 0xa1, 0x41, 0x37,
0x74, 0x87, 0x73, 0x3d, 0x21, 0xb8, 0x7c, 0x20, 0xba, 0x35, 0x44, 0xe4, 0x0e, 0xc7, 0x3f, 0x29,
0xb7, 0x86, 0x40, 0x20, 0x38, 0x61, 0x75, 0x4c, 0x93, 0x3a, 0x87, 0xb2, 0xfb, 0x7f, 0x69, 0xc8,
0xfd, 0xf5, 0xa2, 0xd8, 0x18, 0x12, 0x80, 0x31, 0x34, 0x4e, 0x9a, 0x1b, 0x68, 0x83, 0x10, 0xe4,
0xdf, 0x2e, 0xca, 0x80, 0x40, 0xb5, 0x71, 0x3f, 0x01, 0x3f, 0x34, 0xb2, 0x3b, 0xec, 0x10, 0xec,
0xdf, 0x2f, 0x8a, 0xcf, 0xac, 0x5d, 0x48, 0x97, 0x80, 0x7f, 0xb4, 0xdd, 0x9d, 0xe0, 0xed, 0x20,
0x01, 0x3b, 0x68, 0xde, 0x06, 0x63, 0xf4, 0x7f, 0x76, 0xb8, 0x7a, 0x3d, 0x0c, 0xfd, 0x0f, 0x81,
0x96, 0xfa, 0xd4, 0x60, 0x4d, 0xbb, 0x4d, 0xf0, 0xa7, 0x13, 0x86, 0xfd, 0xa7, 0xc0, 0x7a, 0x00,
0x0a, 0x36, 0x74, 0xc7, 0x1d, 0x66, 0xde, 0xff, 0x92, 0x60, 0x09, 0xa0, 0x83, 0xa6, 0xbf, 0xcf,
0x92, 0xed, 0x30, 0xec, 0x3b, 0x72, 0xd0, 0x42, 0x1f, 0x03, 0x60, 0x92, 0xfe, 0xe4, 0xff, 0xf5,
0x20, 0x04, 0xfc, 0x6f, 0x01, 0xee, 0x22, 0x16, 0x0e, 0x0f, 0xbe, 0xda, 0x81, 0x65, 0x7b, 0xd9,
0xe6, 0x97, 0x3a, 0xf0, 0x42, 0x04, 0x32, 0xf4, 0x4b, 0xef, 0x5c, 0xcd, 0x76, 0xc5, 0x25, 0x4c,
0x8a, 0xb6, 0xb1, 0x49, 0x2d, 0x3e, 0xb3, 0xb7, 0x0b, 0x9c, 0xd9, 0x49, 0x88, 0xac, 0x2a, 0x69,
0x88, 0xe8, 0xe2, 0xa3, 0x74, 0x44, 0x5f, 0x58, 0x79, 0xf5, 0xf5, 0x83, 0x97, 0xfc, 0x0e, 0x9f,
0x3f, 0xe2, 0xf3, 0xda, 0xeb, 0x07, 0x23, 0x6f, 0xe1, 0xf3, 0x0e, 0x3e, 0xef, 0xe2, 0xf3, 0xe0,
0x1b, 0x07, 0x23, 0xcf, 0xe1, 0xf3, 0x22, 0x3e, 0xbf, 0xc0, 0xe7, 0x65, 0x7c, 0x5e, 0x7d, 0x03,
0xf5, 0xf1, 0x79, 0x0d, 0x7f, 0xbf, 0x85, 0x7f, 0xdf, 0xc1, 0xbf, 0xef, 0xe2, 0xdf, 0x07, 0xff,
0x7c, 0xf0, 0x92, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0xe7, 0x43, 0x74, 0x16, 0x1a, 0x2b, 0x00,
0x00,
}
r := bytes.NewReader(gzipped)
gzipr, err := compress_gzip.NewReader(r)
if err != nil {
panic(err)
}
ungzipped, err := io_ioutil.ReadAll(gzipr)
if err != nil {
panic(err)
}
if err := github_com_gogo_protobuf_proto.Unmarshal(ungzipped, d); err != nil {
panic(err)
}
return d
}
func (this *M) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*M)
if !ok {
that2, ok := that.(M)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *M")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *M but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *M but is not nil && this == nil")
}
if this.A != nil && that1.A != nil {
if *this.A != *that1.A {
return fmt.Errorf("A this(%v) Not Equal that(%v)", *this.A, *that1.A)
}
} else if this.A != nil {
return fmt.Errorf("this.A == nil && that.A != nil")
} else if that1.A != nil {
return fmt.Errorf("A this(%v) Not Equal that(%v)", this.A, that1.A)
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *M) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*M)
if !ok {
that2, ok := that.(M)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.A != nil && that1.A != nil {
if *this.A != *that1.A {
return false
}
} else if this.A != nil {
return false
} else if that1.A != nil {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
type MFace interface {
Proto() github_com_gogo_protobuf_proto.Message
GetA() *string
}
func (this *M) Proto() github_com_gogo_protobuf_proto.Message {
return this
}
func (this *M) TestProto() github_com_gogo_protobuf_proto.Message {
return NewMFromFace(this)
}
func (this *M) GetA() *string {
return this.A
}
func NewMFromFace(that MFace) *M {
this := &M{}
this.A = that.GetA()
return this
}
func (this *M) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 5)
s = append(s, "&filedotname.M{")
if this.A != nil {
s = append(s, "A: "+valueToGoStringFileDot(this.A, "string")+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func valueToGoStringFileDot(v interface{}, typ string) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
return "nil"
}
pv := reflect.Indirect(rv).Interface()
return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv)
}
func extensionToGoStringFileDot(e map[int32]github_com_gogo_protobuf_proto.Extension) string {
if e == nil {
return "nil"
}
s := "map[int32]proto.Extension{"
keys := make([]int, 0, len(e))
for k := range e {
keys = append(keys, int(k))
}
sort.Ints(keys)
ss := []string{}
for _, k := range keys {
ss = append(ss, strconv.Itoa(k)+": "+e[int32(k)].GoString())
}
s += strings.Join(ss, ",") + "}"
return s
}
func NewPopulatedM(r randyFileDot, easy bool) *M {
this := &M{}
if r.Intn(10) != 0 {
v1 := randStringFileDot(r)
this.A = &v1
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedFileDot(r, 2)
}
return this
}
type randyFileDot interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneFileDot(r randyFileDot) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringFileDot(r randyFileDot) string {
v2 := r.Intn(100)
tmps := make([]rune, v2)
for i := 0; i < v2; i++ {
tmps[i] = randUTF8RuneFileDot(r)
}
return string(tmps)
}
func randUnrecognizedFileDot(r randyFileDot, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldFileDot(data, r, fieldNumber, wire)
}
return data
}
func randFieldFileDot(data []byte, r randyFileDot, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateFileDot(data, uint64(key))
v3 := r.Int63()
if r.Intn(2) == 0 {
v3 *= -1
}
data = encodeVarintPopulateFileDot(data, uint64(v3))
case 1:
data = encodeVarintPopulateFileDot(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateFileDot(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateFileDot(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateFileDot(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateFileDot(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
func (m *M) Size() (n int) {
var l int
_ = l
if m.A != nil {
l = len(*m.A)
n += 1 + l + sovFileDot(uint64(l))
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func sovFileDot(x uint64) (n int) {
for {
n++
x >>= 7
if x == 0 {
break
}
}
return n
}
func sozFileDot(x uint64) (n int) {
return sovFileDot(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (this *M) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&M{`,
`A:` + valueToStringFileDot(this.A) + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func valueToStringFileDot(v interface{}) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
return "nil"
}
pv := reflect.Indirect(rv).Interface()
return fmt.Sprintf("*%v", pv)
}
var fileDescriptorFileDot = []byte{
// 158 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0x4b, 0xcb, 0xcc, 0x49,
0xd5, 0x4b, 0xc9, 0x2f, 0xd1, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x06, 0xf1, 0x81, 0xdc,
0xbc, 0xc4, 0xdc, 0x54, 0x29, 0xdd, 0xf4, 0xcc, 0x92, 0x8c, 0xd2, 0x24, 0xbd, 0xe4, 0xfc, 0x5c,
0xfd, 0xf4, 0xfc, 0xf4, 0x7c, 0x7d, 0xb0, 0x9a, 0xa4, 0xd2, 0x34, 0x30, 0x0f, 0xcc, 0x01, 0xb3,
0x20, 0x7a, 0x95, 0x04, 0xb9, 0x18, 0x7d, 0x85, 0x78, 0xb8, 0x18, 0x13, 0x25, 0x18, 0x15, 0x18,
0x35, 0x38, 0x83, 0x18, 0x13, 0x9d, 0x7c, 0x4e, 0x3c, 0x94, 0x63, 0xb8, 0x00, 0xc4, 0x37, 0x80,
0xf8, 0xc1, 0x43, 0x39, 0xc6, 0x17, 0x40, 0xfc, 0x01, 0x88, 0x7f, 0x00, 0x71, 0xc3, 0x23, 0x39,
0xc6, 0x15, 0x40, 0xbc, 0x01, 0x88, 0x77, 0x00, 0xf1, 0x01, 0x20, 0x3e, 0xf1, 0x08, 0xa8, 0x1e,
0x88, 0x1f, 0x00, 0xd9, 0x2f, 0x80, 0xf4, 0x07, 0x20, 0xfd, 0x03, 0x48, 0x37, 0x3c, 0x96, 0x63,
0x00, 0x04, 0x00, 0x00, 0xff, 0xff, 0x3f, 0x59, 0x32, 0x8a, 0xad, 0x00, 0x00, 0x00,
}
File diff suppressed because it is too large Load Diff
+964
View File
@@ -0,0 +1,964 @@
// Code generated by protoc-gen-gogo.
// source: group.proto
// DO NOT EDIT!
/*
Package group is a generated protocol buffer package.
It is generated from these files:
group.proto
It has these top-level messages:
Groups1
Groups2
*/
package group
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import github_com_gogo_protobuf_protoc_gen_gogo_descriptor "github.com/gogo/protobuf/protoc-gen-gogo/descriptor"
import github_com_gogo_protobuf_proto "github.com/gogo/protobuf/proto"
import compress_gzip "compress/gzip"
import bytes "bytes"
import io_ioutil "io/ioutil"
import strings "strings"
import sort "sort"
import strconv "strconv"
import reflect "reflect"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type Groups1 struct {
G []*Groups1_G `protobuf:"group,1,rep,name=G,json=g" json:"g,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Groups1) Reset() { *m = Groups1{} }
func (*Groups1) ProtoMessage() {}
func (*Groups1) Descriptor() ([]byte, []int) { return fileDescriptorGroup, []int{0} }
type Groups1_G struct {
Field1 *int64 `protobuf:"varint,1,opt,name=Field1,json=field1" json:"Field1,omitempty"`
Field2 *float64 `protobuf:"fixed64,2,opt,name=Field2,json=field2" json:"Field2,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Groups1_G) Reset() { *m = Groups1_G{} }
func (*Groups1_G) ProtoMessage() {}
type Groups2 struct {
G *Groups2_G `protobuf:"group,1,opt,name=G,json=g" json:"g,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Groups2) Reset() { *m = Groups2{} }
func (*Groups2) ProtoMessage() {}
func (*Groups2) Descriptor() ([]byte, []int) { return fileDescriptorGroup, []int{1} }
type Groups2_G struct {
Field1 *int64 `protobuf:"varint,1,opt,name=Field1,json=field1" json:"Field1,omitempty"`
Field2 []float64 `protobuf:"fixed64,2,rep,name=Field2,json=field2" json:"Field2,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Groups2_G) Reset() { *m = Groups2_G{} }
func (*Groups2_G) ProtoMessage() {}
func init() {
proto.RegisterType((*Groups1)(nil), "group.Groups1")
proto.RegisterType((*Groups1_G)(nil), "group.Groups1.G")
proto.RegisterType((*Groups2)(nil), "group.Groups2")
proto.RegisterType((*Groups2_G)(nil), "group.Groups2.G")
}
func (this *Groups1) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return GroupDescription()
}
func (this *Groups1_G) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return GroupDescription()
}
func (this *Groups2) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return GroupDescription()
}
func (this *Groups2_G) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return GroupDescription()
}
func GroupDescription() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
d := &github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet{}
var gzipped = []byte{
// 3364 bytes of a gzipped FileDescriptorSet
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xcc, 0x5a, 0x69, 0x8c, 0x23, 0xd5,
0xb5, 0xc6, 0x6d, 0xbb, 0xdb, 0x3e, 0xee, 0x76, 0x57, 0x57, 0x37, 0x33, 0x9e, 0x06, 0x66, 0x98,
0x66, 0x1b, 0x86, 0x47, 0x0f, 0xd3, 0x6c, 0x83, 0x79, 0x0f, 0xd4, 0x8b, 0xc7, 0xf4, 0xa8, 0x17,
0xbf, 0x72, 0x1b, 0x06, 0x9e, 0xf4, 0x4a, 0xd5, 0xe5, 0xdb, 0x6e, 0xcf, 0x94, 0xab, 0xfc, 0x5c,
0xe5, 0x61, 0x9a, 0x5f, 0x3c, 0x91, 0x45, 0x28, 0xca, 0x1e, 0x29, 0xec, 0x09, 0x48, 0x09, 0x84,
0x6c, 0x90, 0x4d, 0x49, 0x7e, 0x45, 0x8a, 0x48, 0xf8, 0x15, 0x25, 0xf9, 0x95, 0x1f, 0xf9, 0x01,
0x08, 0x29, 0x1b, 0x49, 0x88, 0x34, 0x52, 0x22, 0xf1, 0x27, 0xe7, 0x6e, 0xe5, 0x2a, 0xdb, 0xdd,
0xe5, 0x46, 0x22, 0x64, 0x24, 0x6b, 0x5c, 0xe7, 0x9e, 0xef, 0xab, 0x73, 0xcf, 0x3d, 0xf7, 0x9c,
0x73, 0xaf, 0x1b, 0x7e, 0x7a, 0x12, 0xae, 0xae, 0x39, 0x4e, 0xcd, 0x22, 0x27, 0x9a, 0x2d, 0xc7,
0x73, 0x36, 0xdb, 0x5b, 0x27, 0xaa, 0xc4, 0x35, 0x5b, 0xf5, 0xa6, 0xe7, 0xb4, 0x66, 0x99, 0x4c,
0x1d, 0xe7, 0x1a, 0xb3, 0x52, 0x63, 0x66, 0x15, 0x26, 0x4e, 0xd7, 0x2d, 0xb2, 0xe4, 0x2b, 0x96,
0x89, 0xa7, 0x9e, 0x82, 0xc4, 0x16, 0x0a, 0x73, 0xb1, 0xab, 0xe3, 0xc7, 0x32, 0x73, 0xd7, 0xce,
0x76, 0x81, 0x66, 0xc3, 0x88, 0x12, 0x15, 0x6b, 0x0c, 0x31, 0xf3, 0x76, 0x02, 0x26, 0xfb, 0x8c,
0xaa, 0x2a, 0x24, 0x6c, 0xa3, 0x41, 0x19, 0x63, 0xc7, 0xd2, 0x1a, 0xfb, 0xae, 0xe6, 0x60, 0xa4,
0x69, 0x98, 0xe7, 0x8d, 0x1a, 0xc9, 0x0d, 0x31, 0xb1, 0x7c, 0x54, 0x0f, 0x03, 0x54, 0x49, 0x93,
0xd8, 0x55, 0x62, 0x9b, 0x3b, 0xb9, 0x38, 0x5a, 0x91, 0xd6, 0x02, 0x12, 0xf5, 0x26, 0x98, 0x68,
0xb6, 0x37, 0xad, 0xba, 0xa9, 0x07, 0xd4, 0x00, 0xd5, 0x92, 0x9a, 0xc2, 0x07, 0x96, 0x3a, 0xca,
0x37, 0xc0, 0xf8, 0xc3, 0xc4, 0x38, 0x1f, 0x54, 0xcd, 0x30, 0xd5, 0x2c, 0x15, 0x07, 0x14, 0x17,
0x61, 0xb4, 0x41, 0x5c, 0x17, 0x0d, 0xd0, 0xbd, 0x9d, 0x26, 0xc9, 0x25, 0xd8, 0xec, 0xaf, 0xee,
0x99, 0x7d, 0xf7, 0xcc, 0x33, 0x02, 0xb5, 0x81, 0x20, 0x75, 0x1e, 0xd2, 0xc4, 0x6e, 0x37, 0x38,
0x43, 0x72, 0x17, 0xff, 0x15, 0x50, 0xa3, 0x9b, 0x25, 0x45, 0x61, 0x82, 0x62, 0xc4, 0x25, 0xad,
0x0b, 0x75, 0x93, 0xe4, 0x86, 0x19, 0xc1, 0x0d, 0x3d, 0x04, 0x65, 0x3e, 0xde, 0xcd, 0x21, 0x71,
0x38, 0x95, 0x34, 0xb9, 0xe8, 0x11, 0xdb, 0xad, 0x3b, 0x76, 0x6e, 0x84, 0x91, 0x5c, 0xd7, 0x67,
0x15, 0x89, 0x55, 0xed, 0xa6, 0xe8, 0xe0, 0xd4, 0x3b, 0x60, 0xc4, 0x69, 0x7a, 0xf8, 0xcd, 0xcd,
0xa5, 0x70, 0x7d, 0x32, 0x73, 0x57, 0xf6, 0x0d, 0x84, 0x75, 0xae, 0xa3, 0x49, 0x65, 0x75, 0x19,
0x14, 0xd7, 0x69, 0xb7, 0x4c, 0xa2, 0x9b, 0x4e, 0x95, 0xe8, 0x75, 0x7b, 0xcb, 0xc9, 0xa5, 0x19,
0xc1, 0x91, 0xde, 0x89, 0x30, 0xc5, 0x45, 0xd4, 0x5b, 0x46, 0x35, 0x2d, 0xeb, 0x86, 0x9e, 0xd5,
0x03, 0x30, 0xec, 0xee, 0xd8, 0x9e, 0x71, 0x31, 0x37, 0xca, 0x22, 0x44, 0x3c, 0xcd, 0xfc, 0x3d,
0x09, 0xe3, 0x83, 0x84, 0xd8, 0xdd, 0x90, 0xdc, 0xa2, 0xb3, 0xc4, 0x00, 0xdb, 0x87, 0x0f, 0x38,
0x26, 0xec, 0xc4, 0xe1, 0xf7, 0xe9, 0xc4, 0x79, 0xc8, 0xd8, 0xc4, 0xf5, 0x48, 0x95, 0x47, 0x44,
0x7c, 0xc0, 0x98, 0x02, 0x0e, 0xea, 0x0d, 0xa9, 0xc4, 0xfb, 0x0a, 0xa9, 0xb3, 0x30, 0xee, 0x9b,
0xa4, 0xb7, 0x0c, 0xbb, 0x26, 0x63, 0xf3, 0x44, 0x94, 0x25, 0xb3, 0x05, 0x89, 0xd3, 0x28, 0x4c,
0xcb, 0x92, 0xd0, 0xb3, 0xba, 0x04, 0xe0, 0xd8, 0xc4, 0xd9, 0xc2, 0xed, 0x65, 0x5a, 0x18, 0x27,
0xfd, 0xbd, 0xb4, 0x4e, 0x55, 0x7a, 0xbc, 0xe4, 0x70, 0xa9, 0x69, 0xa9, 0x77, 0x75, 0x42, 0x6d,
0x64, 0x97, 0x48, 0x59, 0xe5, 0x9b, 0xac, 0x27, 0xda, 0x2a, 0x90, 0x6d, 0x11, 0x1a, 0xf7, 0xe8,
0x62, 0x3e, 0xb3, 0x34, 0x33, 0x62, 0x36, 0x72, 0x66, 0x9a, 0x80, 0xf1, 0x89, 0x8d, 0xb5, 0x82,
0x8f, 0xea, 0x35, 0xe0, 0x0b, 0x74, 0x16, 0x56, 0xc0, 0xb2, 0xd0, 0xa8, 0x14, 0xae, 0xa1, 0x6c,
0xfa, 0x14, 0x64, 0xc3, 0xee, 0x51, 0xa7, 0x20, 0xe9, 0x7a, 0x46, 0xcb, 0x63, 0x51, 0x98, 0xd4,
0xf8, 0x83, 0xaa, 0x40, 0x1c, 0x93, 0x0c, 0xcb, 0x72, 0x49, 0x8d, 0x7e, 0x9d, 0xbe, 0x13, 0xc6,
0x42, 0xaf, 0x1f, 0x14, 0x38, 0xf3, 0xc4, 0x30, 0x4c, 0xf5, 0x8b, 0xb9, 0xbe, 0xe1, 0x8f, 0xdb,
0x07, 0x23, 0x60, 0x93, 0xb4, 0x30, 0xee, 0x28, 0x83, 0x78, 0xc2, 0x88, 0x4a, 0x5a, 0xc6, 0x26,
0xb1, 0x30, 0x9a, 0x62, 0xc7, 0xb2, 0x73, 0x37, 0x0d, 0x14, 0xd5, 0xb3, 0x2b, 0x14, 0xa2, 0x71,
0xa4, 0x7a, 0x0f, 0x24, 0x44, 0x8a, 0xa3, 0x0c, 0xc7, 0x07, 0x63, 0xa0, 0xb1, 0xa8, 0x31, 0x9c,
0x7a, 0x05, 0xa4, 0xe9, 0xff, 0xdc, 0xb7, 0xc3, 0xcc, 0xe6, 0x14, 0x15, 0x50, 0xbf, 0xaa, 0xd3,
0x90, 0x62, 0x61, 0x56, 0x25, 0xb2, 0x34, 0xf8, 0xcf, 0x74, 0x61, 0xaa, 0x64, 0xcb, 0x68, 0x5b,
0x9e, 0x7e, 0xc1, 0xb0, 0xda, 0x84, 0x05, 0x0c, 0x2e, 0x8c, 0x10, 0xde, 0x4f, 0x65, 0xea, 0x11,
0xc8, 0xf0, 0xa8, 0xac, 0x23, 0xe6, 0x22, 0xcb, 0x3e, 0x49, 0x8d, 0x07, 0xea, 0x32, 0x95, 0xd0,
0xd7, 0x9f, 0x73, 0x71, 0x2f, 0x88, 0xa5, 0x65, 0xaf, 0xa0, 0x02, 0xf6, 0xfa, 0x3b, 0xbb, 0x13,
0xdf, 0x55, 0xfd, 0xa7, 0xd7, 0x1d, 0x8b, 0x33, 0x3f, 0x18, 0x82, 0x04, 0xdb, 0x6f, 0xe3, 0x90,
0xd9, 0x78, 0xb0, 0x54, 0xd0, 0x97, 0xd6, 0x2b, 0x0b, 0x2b, 0x05, 0x25, 0xa6, 0x66, 0x01, 0x98,
0xe0, 0xf4, 0xca, 0xfa, 0xfc, 0x86, 0x32, 0xe4, 0x3f, 0x2f, 0xaf, 0x6d, 0xdc, 0x71, 0x9b, 0x12,
0xf7, 0x01, 0x15, 0x2e, 0x48, 0x04, 0x15, 0x6e, 0x9d, 0x53, 0x92, 0x18, 0x09, 0xa3, 0x9c, 0x60,
0xf9, 0x6c, 0x61, 0x09, 0x35, 0x86, 0xc3, 0x12, 0xd4, 0x19, 0x51, 0xc7, 0x20, 0xcd, 0x24, 0x0b,
0xeb, 0xeb, 0x2b, 0x4a, 0xca, 0xe7, 0x2c, 0x6f, 0x68, 0xcb, 0x6b, 0x45, 0x25, 0xed, 0x73, 0x16,
0xb5, 0xf5, 0x4a, 0x49, 0x01, 0x9f, 0x61, 0xb5, 0x50, 0x2e, 0xcf, 0x17, 0x0b, 0x4a, 0xc6, 0xd7,
0x58, 0x78, 0x70, 0xa3, 0x50, 0x56, 0x46, 0x43, 0x66, 0xe1, 0x2b, 0xc6, 0xfc, 0x57, 0x14, 0xd6,
0x2a, 0xab, 0x4a, 0x56, 0x9d, 0x80, 0x31, 0xfe, 0x0a, 0x69, 0xc4, 0x78, 0x97, 0x08, 0x2d, 0x55,
0x3a, 0x86, 0x70, 0x96, 0x89, 0x90, 0x00, 0x35, 0xd4, 0x99, 0x45, 0x48, 0xb2, 0xe8, 0xc2, 0x28,
0xce, 0xae, 0xcc, 0x2f, 0x14, 0x56, 0xf4, 0xf5, 0xd2, 0xc6, 0xf2, 0xfa, 0xda, 0xfc, 0x0a, 0xfa,
0xce, 0x97, 0x69, 0x85, 0xff, 0xae, 0x2c, 0x6b, 0x85, 0x25, 0xf4, 0x5f, 0x40, 0x56, 0x2a, 0xcc,
0x6f, 0xa0, 0x2c, 0x3e, 0x73, 0x1c, 0xa6, 0xfa, 0xe5, 0x99, 0x7e, 0x3b, 0x63, 0xe6, 0x85, 0x18,
0x4c, 0xf6, 0x49, 0x99, 0x7d, 0x77, 0xd1, 0xbd, 0x90, 0xe4, 0x91, 0xc6, 0x8b, 0xc8, 0x8d, 0x7d,
0x73, 0x2f, 0x8b, 0xbb, 0x9e, 0x42, 0xc2, 0x70, 0xc1, 0x42, 0x1a, 0xdf, 0xa5, 0x90, 0x52, 0x8a,
0x9e, 0x70, 0x7a, 0x2c, 0x06, 0xb9, 0xdd, 0xb8, 0x23, 0xf6, 0xfb, 0x50, 0x68, 0xbf, 0xdf, 0xdd,
0x6d, 0xc0, 0xd1, 0xdd, 0xe7, 0xd0, 0x63, 0xc5, 0x8b, 0x31, 0x38, 0xd0, 0xbf, 0xdf, 0xe8, 0x6b,
0xc3, 0x3d, 0x30, 0xdc, 0x20, 0xde, 0xb6, 0x23, 0x6b, 0xee, 0xf5, 0x7d, 0x32, 0x39, 0x1d, 0xee,
0xf6, 0x95, 0x40, 0x05, 0x4b, 0x41, 0x7c, 0xb7, 0xa6, 0x81, 0x5b, 0xd3, 0x63, 0xe9, 0xe3, 0x43,
0x70, 0x79, 0x5f, 0xf2, 0xbe, 0x86, 0x5e, 0x05, 0x50, 0xb7, 0x9b, 0x6d, 0x8f, 0xd7, 0x55, 0x9e,
0x66, 0xd2, 0x4c, 0xc2, 0xb6, 0x30, 0x4d, 0x21, 0x6d, 0xcf, 0x1f, 0x8f, 0xb3, 0x71, 0xe0, 0x22,
0xa6, 0x70, 0xaa, 0x63, 0x68, 0x82, 0x19, 0x7a, 0x78, 0x97, 0x99, 0xf6, 0x94, 0xac, 0x5b, 0x40,
0x31, 0xad, 0x3a, 0xb1, 0x3d, 0xdd, 0xf5, 0x5a, 0xc4, 0x68, 0xd4, 0xed, 0x1a, 0xcb, 0xa3, 0xa9,
0x7c, 0x72, 0xcb, 0xb0, 0x5c, 0xa2, 0x8d, 0xf3, 0xe1, 0xb2, 0x1c, 0xa5, 0x08, 0x56, 0x2c, 0x5a,
0x01, 0xc4, 0x70, 0x08, 0xc1, 0x87, 0x7d, 0xc4, 0xcc, 0xaf, 0x47, 0x20, 0x13, 0xe8, 0xce, 0xd4,
0xa3, 0x30, 0x7a, 0xce, 0xb8, 0x60, 0xe8, 0xb2, 0xe3, 0xe6, 0x9e, 0xc8, 0x50, 0x59, 0x49, 0x74,
0xdd, 0xb7, 0xc0, 0x14, 0x53, 0xc1, 0x39, 0xe2, 0x8b, 0x4c, 0xcb, 0x70, 0x5d, 0xe6, 0xb4, 0x14,
0x53, 0x55, 0xe9, 0xd8, 0x3a, 0x1d, 0x5a, 0x94, 0x23, 0xea, 0xed, 0x30, 0xc9, 0x10, 0x0d, 0x4c,
0xbc, 0xf5, 0xa6, 0x45, 0x74, 0x7a, 0x06, 0x70, 0x59, 0x3e, 0xf5, 0x2d, 0x9b, 0xa0, 0x1a, 0xab,
0x42, 0x81, 0x5a, 0xe4, 0xaa, 0x45, 0xb8, 0x8a, 0xc1, 0x6a, 0xc4, 0x26, 0x2d, 0xc3, 0x23, 0x3a,
0xf9, 0xbf, 0x36, 0xea, 0xea, 0x86, 0x5d, 0xd5, 0xb7, 0x0d, 0x77, 0x3b, 0x37, 0x15, 0x24, 0x38,
0x44, 0x75, 0x8b, 0x42, 0xb5, 0xc0, 0x34, 0xe7, 0xed, 0xea, 0x7d, 0xa8, 0xa7, 0xe6, 0xe1, 0x00,
0x23, 0x42, 0xa7, 0xe0, 0x9c, 0x75, 0x73, 0x9b, 0x98, 0xe7, 0xf5, 0xb6, 0xb7, 0x75, 0x2a, 0x77,
0x45, 0x90, 0x81, 0x19, 0x59, 0x66, 0x3a, 0x8b, 0x54, 0xa5, 0x82, 0x1a, 0x6a, 0x19, 0x46, 0xe9,
0x7a, 0x34, 0xea, 0x8f, 0xa0, 0xd9, 0x4e, 0x8b, 0xd5, 0x88, 0x6c, 0x9f, 0xcd, 0x1d, 0x70, 0xe2,
0xec, 0xba, 0x00, 0xac, 0x62, 0x7f, 0x9a, 0x4f, 0x96, 0x4b, 0x85, 0xc2, 0x92, 0x96, 0x91, 0x2c,
0xa7, 0x9d, 0x16, 0x8d, 0xa9, 0x9a, 0xe3, 0xfb, 0x38, 0xc3, 0x63, 0xaa, 0xe6, 0x48, 0x0f, 0xa3,
0xbf, 0x4c, 0x93, 0x4f, 0x1b, 0xcf, 0x2e, 0xa2, 0x59, 0x77, 0x73, 0x4a, 0xc8, 0x5f, 0xa6, 0x59,
0xe4, 0x0a, 0x22, 0xcc, 0x5d, 0xdc, 0x12, 0x97, 0x77, 0xfc, 0x15, 0x04, 0x4e, 0xf4, 0xcc, 0xb2,
0x1b, 0x8a, 0x6f, 0x6c, 0xee, 0xf4, 0x02, 0xd5, 0xd0, 0x1b, 0x9b, 0x3b, 0xdd, 0xb0, 0xeb, 0xd8,
0x01, 0xac, 0x45, 0x4c, 0x74, 0x79, 0x35, 0x77, 0x30, 0xa8, 0x1d, 0x18, 0x50, 0x4f, 0x60, 0x20,
0x9b, 0x3a, 0xb1, 0x8d, 0x4d, 0x5c, 0x7b, 0xa3, 0x85, 0x5f, 0xdc, 0xdc, 0x91, 0xa0, 0x72, 0xd6,
0x34, 0x0b, 0x6c, 0x74, 0x9e, 0x0d, 0xaa, 0xc7, 0x61, 0xc2, 0xd9, 0x3c, 0x67, 0xf2, 0xe0, 0xd2,
0x91, 0x67, 0xab, 0x7e, 0x31, 0x77, 0x2d, 0x73, 0xd3, 0x38, 0x1d, 0x60, 0xa1, 0x55, 0x62, 0x62,
0xf5, 0x46, 0x24, 0x77, 0xb7, 0x8d, 0x56, 0x93, 0x15, 0x69, 0x17, 0x9d, 0x4a, 0x72, 0xd7, 0x71,
0x55, 0x2e, 0x5f, 0x93, 0x62, 0xb5, 0x00, 0x47, 0xe8, 0xe4, 0x6d, 0xc3, 0x76, 0xf4, 0xb6, 0x4b,
0xf4, 0x8e, 0x89, 0xfe, 0x5a, 0x5c, 0x4f, 0xcd, 0xd2, 0xae, 0x94, 0x6a, 0x15, 0x17, 0x93, 0x99,
0x54, 0x92, 0xcb, 0x73, 0x16, 0xa6, 0xda, 0x76, 0xdd, 0xc6, 0x10, 0xc7, 0x11, 0x0a, 0xe6, 0x1b,
0x36, 0xf7, 0xbb, 0x91, 0x5d, 0x9a, 0xee, 0x4a, 0x50, 0x9b, 0x07, 0x89, 0x36, 0xd9, 0xee, 0x15,
0xce, 0xe4, 0x61, 0x34, 0x18, 0x3b, 0x6a, 0x1a, 0x78, 0xf4, 0x60, 0x75, 0xc3, 0x8a, 0xba, 0xb8,
0xbe, 0x44, 0x6b, 0xe1, 0x43, 0x05, 0x2c, 0x6c, 0x58, 0x93, 0x57, 0x96, 0x37, 0x0a, 0xba, 0x56,
0x59, 0xdb, 0x58, 0x5e, 0x2d, 0x28, 0xf1, 0xe3, 0xe9, 0xd4, 0xef, 0x47, 0x94, 0x47, 0xf1, 0xdf,
0xd0, 0xcc, 0x6b, 0x43, 0x90, 0x0d, 0xf7, 0xc1, 0xea, 0x7f, 0xc2, 0x41, 0x79, 0x68, 0x75, 0x89,
0xa7, 0x3f, 0x5c, 0x6f, 0xb1, 0x70, 0x6e, 0x18, 0xbc, 0x93, 0xf4, 0x57, 0x62, 0x4a, 0x68, 0xe1,
0xf1, 0xfe, 0x01, 0xd4, 0x39, 0xcd, 0x54, 0xd4, 0x15, 0x38, 0x82, 0x2e, 0xc3, 0x5e, 0xd3, 0xae,
0x1a, 0xad, 0xaa, 0xde, 0xb9, 0x2e, 0xd0, 0x0d, 0x13, 0xe3, 0xc0, 0x75, 0x78, 0x25, 0xf1, 0x59,
0xae, 0xb4, 0x9d, 0xb2, 0x50, 0xee, 0xa4, 0xd8, 0x79, 0xa1, 0xda, 0x15, 0x35, 0xf1, 0xdd, 0xa2,
0x06, 0x7b, 0xaf, 0x86, 0xd1, 0xc4, 0xb0, 0xf1, 0x5a, 0x3b, 0xac, 0x7b, 0x4b, 0x69, 0x29, 0x14,
0x14, 0xe8, 0xf3, 0x07, 0xb7, 0x06, 0x41, 0x3f, 0xfe, 0x36, 0x0e, 0xa3, 0xc1, 0x0e, 0x8e, 0x36,
0xc4, 0x26, 0x4b, 0xf3, 0x31, 0x96, 0x05, 0xae, 0xd9, 0xb3, 0xdf, 0x9b, 0x5d, 0xa4, 0xf9, 0x3f,
0x3f, 0xcc, 0xfb, 0x2a, 0x8d, 0x23, 0x69, 0xed, 0xa5, 0xb1, 0x46, 0x78, 0xb7, 0x9e, 0xd2, 0xc4,
0x13, 0x26, 0xbb, 0xe1, 0x73, 0x2e, 0xe3, 0x1e, 0x66, 0xdc, 0xd7, 0xee, 0xcd, 0x7d, 0xa6, 0xcc,
0xc8, 0xd3, 0x67, 0xca, 0xfa, 0xda, 0xba, 0xb6, 0x3a, 0xbf, 0xa2, 0x09, 0xb8, 0x7a, 0x08, 0x12,
0x96, 0xf1, 0xc8, 0x4e, 0xb8, 0x52, 0x30, 0xd1, 0xa0, 0x8e, 0x47, 0x06, 0x7a, 0xe5, 0x11, 0xce,
0xcf, 0x4c, 0xf4, 0x01, 0x86, 0xfe, 0x09, 0x48, 0x32, 0x7f, 0xa9, 0x00, 0xc2, 0x63, 0xca, 0x65,
0x6a, 0x0a, 0x12, 0x8b, 0xeb, 0x1a, 0x0d, 0x7f, 0x8c, 0x77, 0x2e, 0xd5, 0x4b, 0xcb, 0x85, 0x45,
0xdc, 0x01, 0x33, 0xb7, 0xc3, 0x30, 0x77, 0x02, 0xdd, 0x1a, 0xbe, 0x1b, 0x10, 0xc4, 0x1f, 0x05,
0x47, 0x4c, 0x8e, 0x56, 0x56, 0x17, 0x0a, 0x9a, 0x32, 0x14, 0x5c, 0xde, 0x1f, 0xc7, 0x20, 0x13,
0x68, 0xa8, 0x68, 0x29, 0x37, 0x2c, 0xcb, 0x79, 0x58, 0x37, 0xac, 0x3a, 0x66, 0x28, 0xbe, 0x3e,
0xc0, 0x44, 0xf3, 0x54, 0x32, 0xa8, 0xff, 0xfe, 0x25, 0xb1, 0xf9, 0x5c, 0x0c, 0x94, 0xee, 0x66,
0xac, 0xcb, 0xc0, 0xd8, 0x87, 0x6a, 0xe0, 0x33, 0x31, 0xc8, 0x86, 0x3b, 0xb0, 0x2e, 0xf3, 0x8e,
0x7e, 0xa8, 0xe6, 0x3d, 0x1d, 0x83, 0xb1, 0x50, 0xdf, 0xf5, 0x6f, 0x65, 0xdd, 0x53, 0x71, 0x98,
0xec, 0x83, 0xc3, 0x04, 0xc4, 0x1b, 0x54, 0xde, 0x33, 0xdf, 0x3c, 0xc8, 0xbb, 0x66, 0x69, 0xfd,
0x2b, 0x19, 0x2d, 0x4f, 0xf4, 0xb3, 0x58, 0x2f, 0xeb, 0x55, 0x4c, 0xaa, 0xf5, 0xad, 0x3a, 0xb6,
0x6f, 0xfc, 0xc4, 0xc2, 0xbb, 0xd6, 0xf1, 0x8e, 0x9c, 0x1f, 0x8f, 0xff, 0x03, 0xd4, 0xa6, 0xe3,
0xd6, 0xbd, 0xfa, 0x05, 0x7a, 0x3d, 0x27, 0x0f, 0xd2, 0xb4, 0x8b, 0x4d, 0x68, 0x8a, 0x1c, 0x59,
0xb6, 0x3d, 0x5f, 0xdb, 0x26, 0x35, 0xa3, 0x4b, 0x9b, 0xa6, 0xa1, 0xb8, 0xa6, 0xc8, 0x11, 0x5f,
0x1b, 0x1b, 0xcd, 0xaa, 0xd3, 0xa6, 0x0d, 0x01, 0xd7, 0xa3, 0x59, 0x2f, 0xa6, 0x65, 0xb8, 0xcc,
0x57, 0x11, 0x1d, 0x5b, 0xe7, 0x04, 0x3f, 0xaa, 0x65, 0xb8, 0x8c, 0xab, 0xdc, 0x00, 0xe3, 0x46,
0xad, 0xd6, 0xa2, 0xe4, 0x92, 0x88, 0xb7, 0xa1, 0x59, 0x5f, 0xcc, 0x14, 0xa7, 0xcf, 0x40, 0x4a,
0xfa, 0x81, 0x16, 0x16, 0xea, 0x09, 0xac, 0xf9, 0xec, 0x1e, 0x65, 0x88, 0x1e, 0xea, 0x6d, 0x39,
0x88, 0x2f, 0xad, 0xbb, 0x7a, 0xe7, 0x42, 0x6f, 0x08, 0xc7, 0x53, 0x5a, 0xa6, 0xee, 0xfa, 0x37,
0x38, 0x33, 0x2f, 0x62, 0x79, 0x0d, 0x5f, 0x48, 0xaa, 0x4b, 0x90, 0xb2, 0x1c, 0x8c, 0x0f, 0x8a,
0xe0, 0xb7, 0xe1, 0xc7, 0x22, 0xee, 0x30, 0x67, 0x57, 0x84, 0xbe, 0xe6, 0x23, 0xa7, 0x7f, 0x11,
0x83, 0x94, 0x14, 0x63, 0xa1, 0x48, 0x34, 0x0d, 0x6f, 0x9b, 0xd1, 0x25, 0x17, 0x86, 0x94, 0x98,
0xc6, 0x9e, 0xa9, 0x1c, 0xbb, 0x19, 0x9b, 0x85, 0x80, 0x90, 0xd3, 0x67, 0xba, 0xae, 0x16, 0x31,
0xaa, 0xac, 0xc1, 0x75, 0x1a, 0x0d, 0x5c, 0x49, 0x57, 0xae, 0xab, 0x90, 0x2f, 0x0a, 0x31, 0xbd,
0x17, 0xf7, 0x5a, 0x46, 0xdd, 0x0a, 0xe9, 0x26, 0x98, 0xae, 0x22, 0x07, 0x7c, 0xe5, 0x3c, 0x1c,
0x92, 0xbc, 0x55, 0xe2, 0x19, 0xd8, 0x3c, 0x57, 0x3b, 0xa0, 0x61, 0x76, 0xdb, 0x75, 0x50, 0x28,
0x2c, 0x89, 0x71, 0x89, 0x5d, 0x38, 0x8b, 0x8d, 0xac, 0xd3, 0xe8, 0xf6, 0xc4, 0x82, 0xd2, 0x75,
0xee, 0x72, 0xef, 0x8b, 0x3d, 0x04, 0x9d, 0xa6, 0xe2, 0x85, 0xa1, 0x78, 0xb1, 0xb4, 0xf0, 0xf2,
0xd0, 0x74, 0x91, 0xe3, 0x4a, 0xd2, 0x83, 0x1a, 0xd9, 0xb2, 0x88, 0x49, 0xbd, 0x03, 0xcf, 0x5f,
0x03, 0x37, 0xd7, 0xea, 0xde, 0x76, 0x7b, 0x73, 0x16, 0xdf, 0x70, 0xa2, 0xe6, 0xd4, 0x9c, 0xce,
0xcf, 0x19, 0xf4, 0x89, 0x3d, 0xb0, 0x6f, 0xe2, 0x27, 0x8d, 0xb4, 0x2f, 0x9d, 0x8e, 0xfc, 0xfd,
0x23, 0xbf, 0x06, 0x93, 0x42, 0x59, 0x67, 0x77, 0xaa, 0xbc, 0x05, 0x55, 0xf7, 0x3c, 0x90, 0xe7,
0x5e, 0x7d, 0x9b, 0x95, 0x04, 0x6d, 0x42, 0x40, 0xe9, 0x18, 0x6f, 0x52, 0xf3, 0x1a, 0x5c, 0x1e,
0xe2, 0xe3, 0x31, 0x8c, 0x47, 0xee, 0xbd, 0x19, 0x5f, 0x13, 0x8c, 0x93, 0x01, 0xc6, 0xb2, 0x80,
0xe6, 0x17, 0x61, 0x6c, 0x3f, 0x5c, 0x3f, 0x13, 0x5c, 0xa3, 0x24, 0x48, 0x52, 0x84, 0x71, 0x46,
0x62, 0xb6, 0x5d, 0xcf, 0x69, 0xb0, 0x04, 0xb1, 0x37, 0xcd, 0xcf, 0xdf, 0xe6, 0x41, 0x95, 0xa5,
0xb0, 0x45, 0x1f, 0x95, 0xbf, 0x1f, 0xa6, 0xa8, 0x84, 0xed, 0xc1, 0x20, 0x5b, 0xf4, 0x15, 0x42,
0xee, 0x57, 0x8f, 0xf1, 0xd8, 0x9b, 0xf4, 0x09, 0x02, 0xbc, 0x81, 0x95, 0xa8, 0x11, 0x0f, 0x73,
0x1b, 0x9e, 0xff, 0x2c, 0x4b, 0xdd, 0xf3, 0x37, 0x86, 0xdc, 0x93, 0xef, 0x84, 0x57, 0xa2, 0xc8,
0x91, 0xf3, 0x96, 0x95, 0xaf, 0xc0, 0xc1, 0x3e, 0x2b, 0x3b, 0x00, 0xe7, 0x53, 0x82, 0x73, 0xaa,
0x67, 0x75, 0x29, 0x6d, 0x09, 0xa4, 0xdc, 0x5f, 0x8f, 0x01, 0x38, 0x9f, 0x16, 0x9c, 0xaa, 0xc0,
0xca, 0x65, 0xa1, 0x8c, 0x67, 0x60, 0x02, 0x4f, 0xea, 0x9b, 0x8e, 0x2b, 0xce, 0xbd, 0x03, 0xd0,
0x3d, 0x23, 0xe8, 0xc6, 0x05, 0x90, 0x9d, 0x82, 0x29, 0xd7, 0x5d, 0x90, 0xda, 0xc2, 0x03, 0xd0,
0x00, 0x14, 0xcf, 0x0a, 0x8a, 0x11, 0xaa, 0x4f, 0xa1, 0xf3, 0x30, 0x5a, 0x73, 0x44, 0x1a, 0x8e,
0x86, 0x3f, 0x27, 0xe0, 0x19, 0x89, 0x11, 0x14, 0x4d, 0xa7, 0xd9, 0xb6, 0x68, 0x8e, 0x8e, 0xa6,
0xf8, 0x92, 0xa4, 0x90, 0x18, 0x41, 0xb1, 0x0f, 0xb7, 0x7e, 0x59, 0x52, 0xb8, 0x01, 0x7f, 0xde,
0x4b, 0xef, 0x7a, 0xad, 0x1d, 0xc7, 0x1e, 0xc4, 0x88, 0xe7, 0x05, 0x03, 0x08, 0x08, 0x25, 0xb8,
0x1b, 0xd2, 0x83, 0x2e, 0xc4, 0x57, 0x04, 0x3c, 0x45, 0xe4, 0x0a, 0xe0, 0x3e, 0x93, 0x49, 0x86,
0xfe, 0xb6, 0x12, 0x4d, 0xf1, 0x55, 0x41, 0x91, 0x0d, 0xc0, 0xc4, 0x34, 0x3c, 0xe2, 0x7a, 0x78,
0x54, 0x1f, 0x80, 0xe4, 0x45, 0x39, 0x0d, 0x01, 0x11, 0xae, 0xdc, 0x24, 0xb6, 0xb9, 0x3d, 0x18,
0xc3, 0x4b, 0xd2, 0x95, 0x12, 0x43, 0x29, 0x30, 0xf3, 0x34, 0x8c, 0x16, 0x1e, 0xae, 0xad, 0x81,
0x96, 0xe3, 0x6b, 0x82, 0x63, 0xd4, 0x07, 0x09, 0x8f, 0xb4, 0xed, 0xfd, 0xd0, 0xbc, 0x2c, 0x3d,
0x12, 0x80, 0x89, 0xad, 0x87, 0x27, 0x53, 0xda, 0x49, 0xec, 0x87, 0xed, 0xeb, 0x72, 0xeb, 0x71,
0xec, 0x6a, 0x90, 0x11, 0x57, 0xda, 0xc5, 0x23, 0xf8, 0x20, 0x34, 0xdf, 0x90, 0x2b, 0xcd, 0x00,
0x14, 0xfc, 0x20, 0x1c, 0xea, 0x9b, 0xea, 0x07, 0x20, 0xfb, 0xa6, 0x20, 0x3b, 0xd0, 0x27, 0xdd,
0x8b, 0x94, 0xb0, 0x5f, 0xca, 0x6f, 0xc9, 0x94, 0x40, 0xba, 0xb8, 0x4a, 0xb4, 0x8d, 0x75, 0x8d,
0xad, 0xfd, 0x79, 0xed, 0xdb, 0xd2, 0x6b, 0x1c, 0x1b, 0xf2, 0xda, 0x06, 0x1c, 0x10, 0x8c, 0xfb,
0x5b, 0xd7, 0x57, 0x64, 0x62, 0xe5, 0xe8, 0x4a, 0x78, 0x75, 0xff, 0x07, 0xa6, 0x7d, 0x77, 0xca,
0x0e, 0xcc, 0xd5, 0xe9, 0xc5, 0x40, 0x34, 0xf3, 0xab, 0x82, 0x59, 0x66, 0x7c, 0xbf, 0x85, 0x73,
0x57, 0x8d, 0x26, 0x25, 0x3f, 0x0b, 0x39, 0x49, 0xde, 0xb6, 0xb1, 0xc1, 0x77, 0x6a, 0x36, 0x2e,
0x63, 0x75, 0x00, 0xea, 0xef, 0x74, 0x2d, 0x55, 0x25, 0x00, 0xa7, 0xcc, 0xcb, 0xa0, 0xf8, 0xfd,
0x86, 0x5e, 0x6f, 0x34, 0x1d, 0x6c, 0x2d, 0xf7, 0x66, 0xfc, 0xae, 0x5c, 0x29, 0x1f, 0xb7, 0xcc,
0x60, 0xf9, 0x02, 0x64, 0xd9, 0xe3, 0xa0, 0x21, 0xf9, 0x3d, 0x41, 0x34, 0xd6, 0x41, 0x89, 0xc4,
0x81, 0x9d, 0x12, 0xf6, 0xbc, 0x83, 0xe4, 0xbf, 0xef, 0xcb, 0xc4, 0x21, 0x20, 0x3c, 0xfa, 0xc6,
0xbb, 0x2a, 0xb1, 0x1a, 0xf5, 0xf3, 0x6b, 0xee, 0xff, 0x2f, 0x89, 0x3d, 0x1b, 0x2e, 0xc4, 0xf9,
0x15, 0xea, 0x9e, 0x70, 0xb9, 0x8c, 0x26, 0x7b, 0xec, 0x92, 0xef, 0xa1, 0x50, 0xb5, 0xcc, 0x9f,
0x86, 0xb1, 0x50, 0xa9, 0x8c, 0xa6, 0xfa, 0x88, 0xa0, 0x1a, 0x0d, 0x56, 0xca, 0xfc, 0xed, 0x90,
0xa0, 0x65, 0x2f, 0x1a, 0xfe, 0x51, 0x01, 0x67, 0xea, 0xf9, 0xff, 0x82, 0x94, 0x2c, 0x77, 0xd1,
0xd0, 0x8f, 0x09, 0xa8, 0x0f, 0xa1, 0x70, 0x59, 0xea, 0xa2, 0xe1, 0x1f, 0x97, 0x70, 0x09, 0xa1,
0xf0, 0xc1, 0x5d, 0xf8, 0x93, 0x4f, 0x24, 0x44, 0xba, 0x92, 0xbe, 0xa3, 0xbf, 0xf9, 0xf0, 0x1a,
0x17, 0x8d, 0x7e, 0x5c, 0xbc, 0x5c, 0x22, 0xf2, 0x77, 0x42, 0x72, 0x40, 0x87, 0x7f, 0x52, 0x40,
0xb9, 0x3e, 0x56, 0x90, 0x4c, 0xa0, 0xae, 0x45, 0xc3, 0x3f, 0x25, 0xe0, 0x41, 0x14, 0x35, 0x5d,
0xd4, 0xb5, 0x68, 0x82, 0x4f, 0x4b, 0xd3, 0x05, 0x82, 0xba, 0x4d, 0x96, 0xb4, 0x68, 0xf4, 0x67,
0xa4, 0xd7, 0x25, 0x04, 0x77, 0x53, 0xda, 0x4f, 0x53, 0xd1, 0xf8, 0xcf, 0x0a, 0x7c, 0x07, 0x43,
0x3d, 0x10, 0x48, 0x93, 0xd1, 0x14, 0x9f, 0x93, 0x1e, 0x08, 0xa0, 0xe8, 0x36, 0xea, 0x2e, 0x7d,
0xd1, 0x4c, 0x9f, 0x97, 0xdb, 0xa8, 0xab, 0xf2, 0xd1, 0xd5, 0x64, 0xd9, 0x22, 0x9a, 0xe2, 0x0b,
0x72, 0x35, 0x99, 0x3e, 0x35, 0xa3, 0xbb, 0x96, 0x44, 0x73, 0x7c, 0x51, 0x9a, 0xd1, 0x55, 0x4a,
0xb0, 0x32, 0xa9, 0xbd, 0x75, 0x24, 0x9a, 0xef, 0x09, 0xc1, 0x37, 0xd1, 0x53, 0x46, 0xf2, 0x0f,
0xc0, 0x81, 0xfe, 0x35, 0x24, 0x9a, 0xf5, 0xc9, 0x4b, 0x5d, 0x5d, 0x7f, 0xb0, 0x84, 0x60, 0xc9,
0x9b, 0xea, 0x57, 0x3f, 0xa2, 0x69, 0x9f, 0xba, 0x14, 0x3e, 0xd8, 0x05, 0xcb, 0x07, 0x76, 0x68,
0xd0, 0x49, 0xdd, 0xd1, 0x5c, 0xcf, 0x08, 0xae, 0x00, 0x88, 0x6e, 0x0d, 0x91, 0xb9, 0xa3, 0xf1,
0xcf, 0xca, 0xad, 0x21, 0x10, 0x08, 0x4e, 0xd9, 0x6d, 0xcb, 0xa2, 0xc1, 0xa1, 0xee, 0xfd, 0x27,
0x0d, 0xb9, 0x3f, 0xbc, 0x27, 0x36, 0x86, 0x04, 0x60, 0x0e, 0x4d, 0x92, 0xc6, 0x26, 0xfa, 0x20,
0x02, 0xf9, 0xc7, 0xf7, 0x64, 0x42, 0xa0, 0xda, 0xb8, 0x9f, 0x80, 0x1f, 0x1a, 0xd9, 0x1d, 0x76,
0x04, 0xf6, 0x4f, 0xef, 0x89, 0x9f, 0x59, 0x3b, 0x90, 0x0e, 0x01, 0xff, 0xd1, 0x76, 0x6f, 0x82,
0x77, 0xc2, 0x04, 0xec, 0xa0, 0x79, 0x17, 0x8c, 0xd0, 0xbf, 0xec, 0xf0, 0x8c, 0x5a, 0x14, 0xfa,
0xcf, 0x02, 0x2d, 0xf5, 0xa9, 0xc3, 0x1a, 0x4e, 0x8b, 0xe0, 0x57, 0x37, 0x0a, 0xfb, 0x17, 0x81,
0xf5, 0x01, 0x14, 0x6c, 0x1a, 0xae, 0x37, 0xc8, 0xbc, 0xff, 0x2a, 0xc1, 0x12, 0x40, 0x8d, 0xa6,
0xdf, 0xcf, 0x93, 0x9d, 0x28, 0xec, 0xbb, 0xd2, 0x68, 0xa1, 0x8f, 0x09, 0x30, 0x4d, 0xbf, 0xf2,
0x3f, 0x3d, 0x88, 0x00, 0xff, 0x4d, 0x80, 0x3b, 0x88, 0x85, 0xa3, 0xfd, 0xaf, 0x76, 0xa0, 0xe8,
0x14, 0x1d, 0x7e, 0xa9, 0x03, 0x3f, 0x1a, 0x82, 0x4c, 0xad, 0xe5, 0xb4, 0x9b, 0xe2, 0x06, 0x26,
0xc9, 0x1e, 0xa6, 0xf7, 0x77, 0x6f, 0x33, 0xf3, 0xbf, 0x30, 0x52, 0xa4, 0x38, 0xf7, 0xa4, 0x7a,
0x18, 0x62, 0x35, 0x76, 0x1f, 0x06, 0x73, 0xca, 0x2c, 0x67, 0x16, 0x43, 0xb3, 0x45, 0x2d, 0x56,
0x9b, 0xbe, 0x15, 0x62, 0x45, 0xfa, 0x03, 0x0b, 0xb3, 0xfd, 0x24, 0xbb, 0xff, 0x8e, 0x6b, 0xc3,
0xec, 0xaf, 0xf4, 0x4e, 0xfa, 0xf2, 0x39, 0x76, 0xb1, 0x1f, 0x13, 0xf2, 0xb9, 0x0e, 0xff, 0x9c,
0xe4, 0x8f, 0xf5, 0xf0, 0xcf, 0xed, 0x93, 0x3f, 0xde, 0xe1, 0x5f, 0xb8, 0xed, 0xf5, 0x37, 0x0f,
0x5f, 0xf6, 0x4b, 0xfc, 0xfc, 0x06, 0x3f, 0x6f, 0xbc, 0x79, 0x38, 0xf6, 0x2e, 0x7e, 0xfe, 0x81,
0x9f, 0x47, 0xdf, 0x3a, 0x1c, 0x7b, 0x09, 0x3f, 0xaf, 0xe0, 0xe7, 0x87, 0xf8, 0x79, 0xfd, 0x2d,
0xd4, 0xc3, 0xcf, 0x1b, 0xf8, 0xf9, 0x67, 0x00, 0x00, 0x00, 0xff, 0xff, 0x9b, 0xe7, 0x78, 0x9f,
0xa6, 0x2b, 0x00, 0x00,
}
r := bytes.NewReader(gzipped)
gzipr, err := compress_gzip.NewReader(r)
if err != nil {
panic(err)
}
ungzipped, err := io_ioutil.ReadAll(gzipr)
if err != nil {
panic(err)
}
if err := github_com_gogo_protobuf_proto.Unmarshal(ungzipped, d); err != nil {
panic(err)
}
return d
}
func (this *Groups1) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*Groups1)
if !ok {
that2, ok := that.(Groups1)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *Groups1")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *Groups1 but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *Groups1 but is not nil && this == nil")
}
if len(this.G) != len(that1.G) {
return fmt.Errorf("G this(%v) Not Equal that(%v)", len(this.G), len(that1.G))
}
for i := range this.G {
if !this.G[i].Equal(that1.G[i]) {
return fmt.Errorf("G this[%v](%v) Not Equal that[%v](%v)", i, this.G[i], i, that1.G[i])
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *Groups1) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Groups1)
if !ok {
that2, ok := that.(Groups1)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if len(this.G) != len(that1.G) {
return false
}
for i := range this.G {
if !this.G[i].Equal(that1.G[i]) {
return false
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (this *Groups1_G) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*Groups1_G)
if !ok {
that2, ok := that.(Groups1_G)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *Groups1_G")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *Groups1_G but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *Groups1_G but is not nil && this == nil")
}
if this.Field1 != nil && that1.Field1 != nil {
if *this.Field1 != *that1.Field1 {
return fmt.Errorf("Field1 this(%v) Not Equal that(%v)", *this.Field1, *that1.Field1)
}
} else if this.Field1 != nil {
return fmt.Errorf("this.Field1 == nil && that.Field1 != nil")
} else if that1.Field1 != nil {
return fmt.Errorf("Field1 this(%v) Not Equal that(%v)", this.Field1, that1.Field1)
}
if this.Field2 != nil && that1.Field2 != nil {
if *this.Field2 != *that1.Field2 {
return fmt.Errorf("Field2 this(%v) Not Equal that(%v)", *this.Field2, *that1.Field2)
}
} else if this.Field2 != nil {
return fmt.Errorf("this.Field2 == nil && that.Field2 != nil")
} else if that1.Field2 != nil {
return fmt.Errorf("Field2 this(%v) Not Equal that(%v)", this.Field2, that1.Field2)
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *Groups1_G) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Groups1_G)
if !ok {
that2, ok := that.(Groups1_G)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Field1 != nil && that1.Field1 != nil {
if *this.Field1 != *that1.Field1 {
return false
}
} else if this.Field1 != nil {
return false
} else if that1.Field1 != nil {
return false
}
if this.Field2 != nil && that1.Field2 != nil {
if *this.Field2 != *that1.Field2 {
return false
}
} else if this.Field2 != nil {
return false
} else if that1.Field2 != nil {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (this *Groups2) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*Groups2)
if !ok {
that2, ok := that.(Groups2)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *Groups2")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *Groups2 but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *Groups2 but is not nil && this == nil")
}
if !this.G.Equal(that1.G) {
return fmt.Errorf("G this(%v) Not Equal that(%v)", this.G, that1.G)
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *Groups2) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Groups2)
if !ok {
that2, ok := that.(Groups2)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if !this.G.Equal(that1.G) {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (this *Groups2_G) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*Groups2_G)
if !ok {
that2, ok := that.(Groups2_G)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *Groups2_G")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *Groups2_G but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *Groups2_G but is not nil && this == nil")
}
if this.Field1 != nil && that1.Field1 != nil {
if *this.Field1 != *that1.Field1 {
return fmt.Errorf("Field1 this(%v) Not Equal that(%v)", *this.Field1, *that1.Field1)
}
} else if this.Field1 != nil {
return fmt.Errorf("this.Field1 == nil && that.Field1 != nil")
} else if that1.Field1 != nil {
return fmt.Errorf("Field1 this(%v) Not Equal that(%v)", this.Field1, that1.Field1)
}
if len(this.Field2) != len(that1.Field2) {
return fmt.Errorf("Field2 this(%v) Not Equal that(%v)", len(this.Field2), len(that1.Field2))
}
for i := range this.Field2 {
if this.Field2[i] != that1.Field2[i] {
return fmt.Errorf("Field2 this[%v](%v) Not Equal that[%v](%v)", i, this.Field2[i], i, that1.Field2[i])
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *Groups2_G) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Groups2_G)
if !ok {
that2, ok := that.(Groups2_G)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Field1 != nil && that1.Field1 != nil {
if *this.Field1 != *that1.Field1 {
return false
}
} else if this.Field1 != nil {
return false
} else if that1.Field1 != nil {
return false
}
if len(this.Field2) != len(that1.Field2) {
return false
}
for i := range this.Field2 {
if this.Field2[i] != that1.Field2[i] {
return false
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (this *Groups1) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 5)
s = append(s, "&group.Groups1{")
if this.G != nil {
s = append(s, "G: "+fmt.Sprintf("%#v", this.G)+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func (this *Groups1_G) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 6)
s = append(s, "&group.Groups1_G{")
if this.Field1 != nil {
s = append(s, "Field1: "+valueToGoStringGroup(this.Field1, "int64")+",\n")
}
if this.Field2 != nil {
s = append(s, "Field2: "+valueToGoStringGroup(this.Field2, "float64")+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func (this *Groups2) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 5)
s = append(s, "&group.Groups2{")
if this.G != nil {
s = append(s, "G: "+fmt.Sprintf("%#v", this.G)+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func (this *Groups2_G) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 6)
s = append(s, "&group.Groups2_G{")
if this.Field1 != nil {
s = append(s, "Field1: "+valueToGoStringGroup(this.Field1, "int64")+",\n")
}
if this.Field2 != nil {
s = append(s, "Field2: "+fmt.Sprintf("%#v", this.Field2)+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func valueToGoStringGroup(v interface{}, typ string) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
return "nil"
}
pv := reflect.Indirect(rv).Interface()
return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv)
}
func extensionToGoStringGroup(e map[int32]github_com_gogo_protobuf_proto.Extension) string {
if e == nil {
return "nil"
}
s := "map[int32]proto.Extension{"
keys := make([]int, 0, len(e))
for k := range e {
keys = append(keys, int(k))
}
sort.Ints(keys)
ss := []string{}
for _, k := range keys {
ss = append(ss, strconv.Itoa(k)+": "+e[int32(k)].GoString())
}
s += strings.Join(ss, ",") + "}"
return s
}
func NewPopulatedGroups1(r randyGroup, easy bool) *Groups1 {
this := &Groups1{}
if r.Intn(10) != 0 {
v1 := r.Intn(5)
this.G = make([]*Groups1_G, v1)
for i := 0; i < v1; i++ {
this.G[i] = NewPopulatedGroups1_G(r, easy)
}
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedGroup(r, 2)
}
return this
}
func NewPopulatedGroups1_G(r randyGroup, easy bool) *Groups1_G {
this := &Groups1_G{}
if r.Intn(10) != 0 {
v2 := int64(r.Int63())
if r.Intn(2) == 0 {
v2 *= -1
}
this.Field1 = &v2
}
if r.Intn(10) != 0 {
v3 := float64(r.Float64())
if r.Intn(2) == 0 {
v3 *= -1
}
this.Field2 = &v3
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedGroup(r, 3)
}
return this
}
func NewPopulatedGroups2(r randyGroup, easy bool) *Groups2 {
this := &Groups2{}
if r.Intn(10) != 0 {
this.G = NewPopulatedGroups2_G(r, easy)
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedGroup(r, 2)
}
return this
}
func NewPopulatedGroups2_G(r randyGroup, easy bool) *Groups2_G {
this := &Groups2_G{}
if r.Intn(10) != 0 {
v4 := int64(r.Int63())
if r.Intn(2) == 0 {
v4 *= -1
}
this.Field1 = &v4
}
if r.Intn(10) != 0 {
v5 := r.Intn(10)
this.Field2 = make([]float64, v5)
for i := 0; i < v5; i++ {
this.Field2[i] = float64(r.Float64())
if r.Intn(2) == 0 {
this.Field2[i] *= -1
}
}
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedGroup(r, 3)
}
return this
}
type randyGroup interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneGroup(r randyGroup) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringGroup(r randyGroup) string {
v6 := r.Intn(100)
tmps := make([]rune, v6)
for i := 0; i < v6; i++ {
tmps[i] = randUTF8RuneGroup(r)
}
return string(tmps)
}
func randUnrecognizedGroup(r randyGroup, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldGroup(data, r, fieldNumber, wire)
}
return data
}
func randFieldGroup(data []byte, r randyGroup, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateGroup(data, uint64(key))
v7 := r.Int63()
if r.Intn(2) == 0 {
v7 *= -1
}
data = encodeVarintPopulateGroup(data, uint64(v7))
case 1:
data = encodeVarintPopulateGroup(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateGroup(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateGroup(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateGroup(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateGroup(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
func (this *Groups1) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&Groups1{`,
`G:` + strings.Replace(fmt.Sprintf("%v", this.G), "Groups1_G", "Groups1_G", 1) + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func (this *Groups1_G) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&Groups1_G{`,
`Field1:` + valueToStringGroup(this.Field1) + `,`,
`Field2:` + valueToStringGroup(this.Field2) + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func (this *Groups2) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&Groups2{`,
`G:` + strings.Replace(fmt.Sprintf("%v", this.G), "Groups2_G", "Groups2_G", 1) + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func (this *Groups2_G) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&Groups2_G{`,
`Field1:` + valueToStringGroup(this.Field1) + `,`,
`Field2:` + fmt.Sprintf("%v", this.Field2) + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func valueToStringGroup(v interface{}) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
return "nil"
}
pv := reflect.Indirect(rv).Interface()
return fmt.Sprintf("*%v", pv)
}
var fileDescriptorGroup = []byte{
// 195 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0x4e, 0x2f, 0xca, 0x2f,
0x2d, 0xd0, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x62, 0x05, 0x73, 0xa4, 0x74, 0xd3, 0x33, 0x4b,
0x32, 0x4a, 0x93, 0xf4, 0x92, 0xf3, 0x73, 0xf5, 0xd3, 0xf3, 0xd3, 0xf3, 0xf5, 0xc1, 0xb2, 0x49,
0xa5, 0x69, 0x60, 0x1e, 0x98, 0x03, 0x66, 0x41, 0x74, 0x29, 0xc5, 0x71, 0xb1, 0xbb, 0x83, 0xf4,
0x15, 0x1b, 0x0a, 0xc9, 0x71, 0x31, 0xa6, 0x4b, 0x30, 0x2a, 0x30, 0x6b, 0x70, 0x19, 0x09, 0xe8,
0x41, 0x4c, 0x86, 0x4a, 0xe9, 0xb9, 0x07, 0x31, 0xa6, 0x4b, 0x19, 0x73, 0x31, 0xba, 0x0b, 0x89,
0x71, 0xb1, 0xb9, 0x65, 0xa6, 0xe6, 0xa4, 0x18, 0x02, 0x55, 0x32, 0x6a, 0x30, 0x07, 0xb1, 0xa5,
0x81, 0x79, 0x70, 0x71, 0x23, 0x09, 0x26, 0xa0, 0x38, 0x23, 0x54, 0xdc, 0x08, 0x61, 0xbe, 0x11,
0xcc, 0x7c, 0x46, 0x0c, 0xf3, 0x8d, 0x48, 0x34, 0x9f, 0x19, 0x61, 0xbe, 0x93, 0xc9, 0x89, 0x87,
0x72, 0x0c, 0x17, 0x80, 0xf8, 0x06, 0x10, 0x3f, 0x78, 0x28, 0xc7, 0xf8, 0x01, 0x88, 0x7f, 0x00,
0x71, 0xc3, 0x23, 0x39, 0xc6, 0x15, 0x40, 0xbc, 0x01, 0x88, 0x77, 0x00, 0xf1, 0x89, 0x47, 0x40,
0x75, 0x40, 0xfc, 0x00, 0x88, 0x01, 0x01, 0x00, 0x00, 0xff, 0xff, 0xd2, 0xbc, 0xd6, 0x4b, 0x39,
0x01, 0x00, 0x00,
}
+69
View File
@@ -0,0 +1,69 @@
// Code generated by protoc-gen-gogo.
// source: proto.proto
// DO NOT EDIT!
/*
Package importdedup is a generated protocol buffer package.
It is generated from these files:
proto.proto
It has these top-level messages:
Object
*/
package importdedup
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import subpkg "github.com/gogo/protobuf/test/importdedup/subpkg"
import github_com_gogo_protobuf_test_importdedup_subpkg "github.com/gogo/protobuf/test/importdedup/subpkg"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type Object struct {
CustomField *github_com_gogo_protobuf_test_importdedup_subpkg.CustomType `protobuf:"bytes,1,opt,name=CustomField,json=customField,customtype=github.com/gogo/protobuf/test/importdedup/subpkg.CustomType" json:"CustomField,omitempty"`
SubObject *subpkg.SubObject `protobuf:"bytes,2,opt,name=SubObject,json=subObject" json:"SubObject,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Object) Reset() { *m = Object{} }
func (m *Object) String() string { return proto.CompactTextString(m) }
func (*Object) ProtoMessage() {}
func (*Object) Descriptor() ([]byte, []int) { return fileDescriptorProto, []int{0} }
func (m *Object) GetSubObject() *subpkg.SubObject {
if m != nil {
return m.SubObject
}
return nil
}
func init() {
proto.RegisterType((*Object)(nil), "importdedup.Object")
}
var fileDescriptorProto = []byte{
// 178 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0x2e, 0x28, 0xca, 0x2f,
0xc9, 0xd7, 0x03, 0x93, 0x42, 0xdc, 0x99, 0xb9, 0x05, 0xf9, 0x45, 0x25, 0x29, 0xa9, 0x29, 0xa5,
0x05, 0x52, 0xba, 0xe9, 0x99, 0x25, 0x19, 0xa5, 0x49, 0x7a, 0xc9, 0xf9, 0xb9, 0xfa, 0xe9, 0xf9,
0xe9, 0xf9, 0xfa, 0x60, 0x35, 0x49, 0xa5, 0x69, 0x60, 0x1e, 0x98, 0x03, 0x66, 0x41, 0xf4, 0x4a,
0xd9, 0xe3, 0x54, 0x5e, 0x92, 0x5a, 0x5c, 0xa2, 0x8f, 0x64, 0xb2, 0x7e, 0x71, 0x69, 0x52, 0x41,
0x76, 0x3a, 0x98, 0x42, 0x58, 0xae, 0x34, 0x87, 0x91, 0x8b, 0xcd, 0x3f, 0x29, 0x2b, 0x35, 0xb9,
0x44, 0x28, 0x91, 0x8b, 0xdb, 0xb9, 0xb4, 0xb8, 0x24, 0x3f, 0xd7, 0x2d, 0x33, 0x35, 0x27, 0x45,
0x82, 0x51, 0x81, 0x51, 0x83, 0xc7, 0xc9, 0xfe, 0xd6, 0x3d, 0x79, 0x6b, 0x52, 0x2d, 0xd1, 0x83,
0x98, 0x13, 0x52, 0x59, 0x90, 0x1a, 0xc4, 0x9d, 0x8c, 0x30, 0x53, 0x48, 0x9f, 0x8b, 0x33, 0xb8,
0x34, 0x09, 0x62, 0x9f, 0x04, 0x13, 0xd0, 0x02, 0x6e, 0x23, 0x41, 0x3d, 0xa8, 0x1e, 0xb8, 0x44,
0x10, 0x67, 0x31, 0x8c, 0x09, 0x08, 0x00, 0x00, 0xff, 0xff, 0xf4, 0x33, 0xcb, 0x76, 0x29, 0x01,
0x00, 0x00,
}
+29
View File
@@ -0,0 +1,29 @@
// Copyright (c) 2015, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package subpkg
type CustomType struct{}
+51
View File
@@ -0,0 +1,51 @@
// Code generated by protoc-gen-gogo.
// source: subpkg/subproto.proto
// DO NOT EDIT!
/*
Package subpkg is a generated protocol buffer package.
It is generated from these files:
subpkg/subproto.proto
It has these top-level messages:
SubObject
*/
package subpkg
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type SubObject struct {
XXX_unrecognized []byte `json:"-"`
}
func (m *SubObject) Reset() { *m = SubObject{} }
func (m *SubObject) String() string { return proto.CompactTextString(m) }
func (*SubObject) ProtoMessage() {}
func (*SubObject) Descriptor() ([]byte, []int) { return fileDescriptorSubproto, []int{0} }
func init() {
proto.RegisterType((*SubObject)(nil), "subpkg.SubObject")
}
var fileDescriptorSubproto = []byte{
// 88 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0x12, 0x2d, 0x2e, 0x4d, 0x2a,
0xc8, 0x4e, 0xd7, 0x07, 0x51, 0x45, 0xf9, 0x25, 0xf9, 0x7a, 0x60, 0x52, 0x88, 0x0d, 0x22, 0x2c,
0xa5, 0x9b, 0x9e, 0x59, 0x92, 0x51, 0x9a, 0xa4, 0x97, 0x9c, 0x9f, 0xab, 0x9f, 0x9e, 0x9f, 0x9e,
0xaf, 0x0f, 0x96, 0x4e, 0x2a, 0x4d, 0x03, 0xf3, 0xc0, 0x1c, 0x30, 0x0b, 0xa2, 0x4d, 0x89, 0x9b,
0x8b, 0x33, 0xb8, 0x34, 0xc9, 0x3f, 0x29, 0x2b, 0x35, 0xb9, 0x04, 0x10, 0x00, 0x00, 0xff, 0xff,
0x4e, 0x38, 0xf3, 0x28, 0x5b, 0x00, 0x00, 0x00,
}
@@ -0,0 +1,515 @@
// Code generated by protoc-gen-gogo.
// source: index.proto
// DO NOT EDIT!
/*
Package index is a generated protocol buffer package.
It is generated from these files:
index.proto
It has these top-level messages:
IndexQuery
*/
package index
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import bytes "bytes"
import io "io"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type IndexQuery struct {
Key *string `protobuf:"bytes,1,opt,name=Key,json=key" json:"Key,omitempty"`
Value *string `protobuf:"bytes,2,opt,name=Value,json=value" json:"Value,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *IndexQuery) Reset() { *m = IndexQuery{} }
func (m *IndexQuery) String() string { return proto.CompactTextString(m) }
func (*IndexQuery) ProtoMessage() {}
func (*IndexQuery) Descriptor() ([]byte, []int) { return fileDescriptorIndex, []int{0} }
func (m *IndexQuery) GetKey() string {
if m != nil && m.Key != nil {
return *m.Key
}
return ""
}
func (m *IndexQuery) GetValue() string {
if m != nil && m.Value != nil {
return *m.Value
}
return ""
}
func init() {
proto.RegisterType((*IndexQuery)(nil), "index.IndexQuery")
}
func (this *IndexQuery) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*IndexQuery)
if !ok {
that2, ok := that.(IndexQuery)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Key != nil && that1.Key != nil {
if *this.Key != *that1.Key {
return false
}
} else if this.Key != nil {
return false
} else if that1.Key != nil {
return false
}
if this.Value != nil && that1.Value != nil {
if *this.Value != *that1.Value {
return false
}
} else if this.Value != nil {
return false
} else if that1.Value != nil {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (m *IndexQuery) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *IndexQuery) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if m.Key != nil {
data[i] = 0xa
i++
i = encodeVarintIndex(data, i, uint64(len(*m.Key)))
i += copy(data[i:], *m.Key)
}
if m.Value != nil {
data[i] = 0x12
i++
i = encodeVarintIndex(data, i, uint64(len(*m.Value)))
i += copy(data[i:], *m.Value)
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func encodeFixed64Index(data []byte, offset int, v uint64) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
data[offset+4] = uint8(v >> 32)
data[offset+5] = uint8(v >> 40)
data[offset+6] = uint8(v >> 48)
data[offset+7] = uint8(v >> 56)
return offset + 8
}
func encodeFixed32Index(data []byte, offset int, v uint32) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
return offset + 4
}
func encodeVarintIndex(data []byte, offset int, v uint64) int {
for v >= 1<<7 {
data[offset] = uint8(v&0x7f | 0x80)
v >>= 7
offset++
}
data[offset] = uint8(v)
return offset + 1
}
func NewPopulatedIndexQuery(r randyIndex, easy bool) *IndexQuery {
this := &IndexQuery{}
if r.Intn(10) != 0 {
v1 := randStringIndex(r)
this.Key = &v1
}
if r.Intn(10) != 0 {
v2 := randStringIndex(r)
this.Value = &v2
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedIndex(r, 3)
}
return this
}
type randyIndex interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneIndex(r randyIndex) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringIndex(r randyIndex) string {
v3 := r.Intn(100)
tmps := make([]rune, v3)
for i := 0; i < v3; i++ {
tmps[i] = randUTF8RuneIndex(r)
}
return string(tmps)
}
func randUnrecognizedIndex(r randyIndex, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldIndex(data, r, fieldNumber, wire)
}
return data
}
func randFieldIndex(data []byte, r randyIndex, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateIndex(data, uint64(key))
v4 := r.Int63()
if r.Intn(2) == 0 {
v4 *= -1
}
data = encodeVarintPopulateIndex(data, uint64(v4))
case 1:
data = encodeVarintPopulateIndex(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateIndex(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateIndex(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateIndex(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateIndex(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
func (m *IndexQuery) Size() (n int) {
var l int
_ = l
if m.Key != nil {
l = len(*m.Key)
n += 1 + l + sovIndex(uint64(l))
}
if m.Value != nil {
l = len(*m.Value)
n += 1 + l + sovIndex(uint64(l))
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func sovIndex(x uint64) (n int) {
for {
n++
x >>= 7
if x == 0 {
break
}
}
return n
}
func sozIndex(x uint64) (n int) {
return sovIndex(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (m *IndexQuery) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowIndex
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: IndexQuery: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: IndexQuery: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Key", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowIndex
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLen |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthIndex
}
postIndex := iNdEx + intStringLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
s := string(data[iNdEx:postIndex])
m.Key = &s
iNdEx = postIndex
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowIndex
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLen |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthIndex
}
postIndex := iNdEx + intStringLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
s := string(data[iNdEx:postIndex])
m.Value = &s
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipIndex(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthIndex
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
m.XXX_unrecognized = append(m.XXX_unrecognized, data[iNdEx:iNdEx+skippy]...)
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipIndex(data []byte) (n int, err error) {
l := len(data)
iNdEx := 0
for iNdEx < l {
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowIndex
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
wireType := int(wire & 0x7)
switch wireType {
case 0:
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowIndex
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
iNdEx++
if data[iNdEx-1] < 0x80 {
break
}
}
return iNdEx, nil
case 1:
iNdEx += 8
return iNdEx, nil
case 2:
var length int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowIndex
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
length |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
iNdEx += length
if length < 0 {
return 0, ErrInvalidLengthIndex
}
return iNdEx, nil
case 3:
for {
var innerWire uint64
var start int = iNdEx
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowIndex
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
innerWire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
innerWireType := int(innerWire & 0x7)
if innerWireType == 4 {
break
}
next, err := skipIndex(data[start:])
if err != nil {
return 0, err
}
iNdEx = start + next
}
return iNdEx, nil
case 4:
return iNdEx, nil
case 5:
iNdEx += 4
return iNdEx, nil
default:
return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
}
}
panic("unreachable")
}
var (
ErrInvalidLengthIndex = fmt.Errorf("proto: negative length found during unmarshaling")
ErrIntOverflowIndex = fmt.Errorf("proto: integer overflow")
)
var fileDescriptorIndex = []byte{
// 139 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0xce, 0xcc, 0x4b, 0x49,
0xad, 0xd0, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x62, 0x05, 0x73, 0xa4, 0x74, 0xd3, 0x33, 0x4b,
0x32, 0x4a, 0x93, 0xf4, 0x92, 0xf3, 0x73, 0xf5, 0xd3, 0xf3, 0xd3, 0xf3, 0xf5, 0xc1, 0xb2, 0x49,
0xa5, 0x69, 0x60, 0x1e, 0x98, 0x03, 0x66, 0x41, 0x74, 0x29, 0x99, 0x70, 0x71, 0x79, 0x82, 0xf4,
0x05, 0x96, 0xa6, 0x16, 0x55, 0x0a, 0x09, 0x70, 0x31, 0x7b, 0xa7, 0x56, 0x4a, 0x30, 0x2a, 0x30,
0x6a, 0x70, 0x06, 0x31, 0x67, 0xa7, 0x56, 0x0a, 0x89, 0x70, 0xb1, 0x86, 0x25, 0xe6, 0x94, 0xa6,
0x4a, 0x30, 0x81, 0xc5, 0x58, 0xcb, 0x40, 0x1c, 0x27, 0x89, 0x1f, 0x0f, 0xe5, 0x18, 0x57, 0x3c,
0x92, 0x63, 0xdc, 0x01, 0xc4, 0x27, 0x80, 0xf8, 0x02, 0x10, 0x3f, 0x00, 0x62, 0x40, 0x00, 0x00,
0x00, 0xff, 0xff, 0xed, 0x22, 0xeb, 0x68, 0x93, 0x00, 0x00, 0x00,
}
@@ -0,0 +1,468 @@
// Code generated by protoc-gen-gogo.
// source: indeximport.proto
// DO NOT EDIT!
/*
Package indeximport is a generated protocol buffer package.
It is generated from these files:
indeximport.proto
It has these top-level messages:
IndexQueries
*/
package indeximport
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import index "github.com/gogo/protobuf/test/indeximport-issue72/index"
import _ "github.com/gogo/protobuf/gogoproto"
import bytes "bytes"
import io "io"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type IndexQueries struct {
Queries []*index.IndexQuery `protobuf:"bytes,1,rep,name=Queries,json=queries" json:"Queries,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *IndexQueries) Reset() { *m = IndexQueries{} }
func (m *IndexQueries) String() string { return proto.CompactTextString(m) }
func (*IndexQueries) ProtoMessage() {}
func (*IndexQueries) Descriptor() ([]byte, []int) { return fileDescriptorIndeximport, []int{0} }
func (m *IndexQueries) GetQueries() []*index.IndexQuery {
if m != nil {
return m.Queries
}
return nil
}
func init() {
proto.RegisterType((*IndexQueries)(nil), "indeximport.IndexQueries")
}
func (this *IndexQueries) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*IndexQueries)
if !ok {
that2, ok := that.(IndexQueries)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if len(this.Queries) != len(that1.Queries) {
return false
}
for i := range this.Queries {
if !this.Queries[i].Equal(that1.Queries[i]) {
return false
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (m *IndexQueries) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *IndexQueries) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if len(m.Queries) > 0 {
for _, msg := range m.Queries {
data[i] = 0xa
i++
i = encodeVarintIndeximport(data, i, uint64(msg.Size()))
n, err := msg.MarshalTo(data[i:])
if err != nil {
return 0, err
}
i += n
}
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func encodeFixed64Indeximport(data []byte, offset int, v uint64) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
data[offset+4] = uint8(v >> 32)
data[offset+5] = uint8(v >> 40)
data[offset+6] = uint8(v >> 48)
data[offset+7] = uint8(v >> 56)
return offset + 8
}
func encodeFixed32Indeximport(data []byte, offset int, v uint32) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
return offset + 4
}
func encodeVarintIndeximport(data []byte, offset int, v uint64) int {
for v >= 1<<7 {
data[offset] = uint8(v&0x7f | 0x80)
v >>= 7
offset++
}
data[offset] = uint8(v)
return offset + 1
}
func NewPopulatedIndexQueries(r randyIndeximport, easy bool) *IndexQueries {
this := &IndexQueries{}
if r.Intn(10) != 0 {
v1 := r.Intn(5)
this.Queries = make([]*index.IndexQuery, v1)
for i := 0; i < v1; i++ {
this.Queries[i] = index.NewPopulatedIndexQuery(r, easy)
}
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedIndeximport(r, 2)
}
return this
}
type randyIndeximport interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneIndeximport(r randyIndeximport) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringIndeximport(r randyIndeximport) string {
v2 := r.Intn(100)
tmps := make([]rune, v2)
for i := 0; i < v2; i++ {
tmps[i] = randUTF8RuneIndeximport(r)
}
return string(tmps)
}
func randUnrecognizedIndeximport(r randyIndeximport, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldIndeximport(data, r, fieldNumber, wire)
}
return data
}
func randFieldIndeximport(data []byte, r randyIndeximport, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateIndeximport(data, uint64(key))
v3 := r.Int63()
if r.Intn(2) == 0 {
v3 *= -1
}
data = encodeVarintPopulateIndeximport(data, uint64(v3))
case 1:
data = encodeVarintPopulateIndeximport(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateIndeximport(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateIndeximport(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateIndeximport(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateIndeximport(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
func (m *IndexQueries) Size() (n int) {
var l int
_ = l
if len(m.Queries) > 0 {
for _, e := range m.Queries {
l = e.Size()
n += 1 + l + sovIndeximport(uint64(l))
}
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func sovIndeximport(x uint64) (n int) {
for {
n++
x >>= 7
if x == 0 {
break
}
}
return n
}
func sozIndeximport(x uint64) (n int) {
return sovIndeximport(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (m *IndexQueries) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowIndeximport
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: IndexQueries: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: IndexQueries: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Queries", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowIndeximport
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
msglen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthIndeximport
}
postIndex := iNdEx + msglen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Queries = append(m.Queries, &index.IndexQuery{})
if err := m.Queries[len(m.Queries)-1].Unmarshal(data[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipIndeximport(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthIndeximport
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
m.XXX_unrecognized = append(m.XXX_unrecognized, data[iNdEx:iNdEx+skippy]...)
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipIndeximport(data []byte) (n int, err error) {
l := len(data)
iNdEx := 0
for iNdEx < l {
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowIndeximport
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
wireType := int(wire & 0x7)
switch wireType {
case 0:
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowIndeximport
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
iNdEx++
if data[iNdEx-1] < 0x80 {
break
}
}
return iNdEx, nil
case 1:
iNdEx += 8
return iNdEx, nil
case 2:
var length int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowIndeximport
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
length |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
iNdEx += length
if length < 0 {
return 0, ErrInvalidLengthIndeximport
}
return iNdEx, nil
case 3:
for {
var innerWire uint64
var start int = iNdEx
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowIndeximport
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
innerWire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
innerWireType := int(innerWire & 0x7)
if innerWireType == 4 {
break
}
next, err := skipIndeximport(data[start:])
if err != nil {
return 0, err
}
iNdEx = start + next
}
return iNdEx, nil
case 4:
return iNdEx, nil
case 5:
iNdEx += 4
return iNdEx, nil
default:
return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
}
}
panic("unreachable")
}
var (
ErrInvalidLengthIndeximport = fmt.Errorf("proto: negative length found during unmarshaling")
ErrIntOverflowIndeximport = fmt.Errorf("proto: integer overflow")
)
var fileDescriptorIndeximport = []byte{
// 163 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0x12, 0xcc, 0xcc, 0x4b, 0x49,
0xad, 0xc8, 0xcc, 0x2d, 0xc8, 0x2f, 0x2a, 0xd1, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x46,
0x12, 0x92, 0x72, 0x4e, 0xcf, 0x2c, 0xc9, 0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, 0x4f, 0xcf,
0x4f, 0xcf, 0xd7, 0x07, 0xab, 0x49, 0x2a, 0x4d, 0xd3, 0x2f, 0x49, 0x2d, 0x2e, 0xd1, 0x47, 0x52,
0xaa, 0x9b, 0x59, 0x5c, 0x5c, 0x9a, 0x6a, 0x6e, 0x04, 0x11, 0x83, 0x90, 0x10, 0x13, 0xa5, 0x74,
0x71, 0x1a, 0x02, 0xe2, 0x81, 0x39, 0x60, 0x16, 0x44, 0xb9, 0x92, 0x35, 0x17, 0x8f, 0x27, 0x48,
0x77, 0x60, 0x69, 0x6a, 0x51, 0x66, 0x6a, 0xb1, 0x90, 0x36, 0x17, 0x3b, 0x94, 0x29, 0xc1, 0xa8,
0xc0, 0xac, 0xc1, 0x6d, 0x24, 0xa8, 0x07, 0x31, 0x1d, 0xae, 0xaa, 0x32, 0x88, 0xbd, 0x10, 0xa2,
0xc2, 0x49, 0xe2, 0xc7, 0x43, 0x39, 0xc6, 0x15, 0x8f, 0xe4, 0x18, 0x77, 0x00, 0xf1, 0x09, 0x20,
0xbe, 0x00, 0xc4, 0x0f, 0x80, 0x18, 0x10, 0x00, 0x00, 0xff, 0xff, 0xf1, 0x51, 0xf2, 0x07, 0xeb,
0x00, 0x00, 0x00,
}
+348
View File
@@ -0,0 +1,348 @@
// Code generated by protoc-gen-gogo.
// source: proto.proto
// DO NOT EDIT!
/*
Package issue34 is a generated protocol buffer package.
It is generated from these files:
proto.proto
It has these top-level messages:
Foo
FooWithRepeated
*/
package issue34
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import io "io"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type Foo struct {
Bar []byte `protobuf:"bytes,1,opt,name=bar" json:"bar,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Foo) Reset() { *m = Foo{} }
func (m *Foo) String() string { return proto.CompactTextString(m) }
func (*Foo) ProtoMessage() {}
func (*Foo) Descriptor() ([]byte, []int) { return fileDescriptorProto, []int{0} }
func (m *Foo) GetBar() []byte {
if m != nil {
return m.Bar
}
return nil
}
type FooWithRepeated struct {
Bar [][]byte `protobuf:"bytes,1,rep,name=bar" json:"bar,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *FooWithRepeated) Reset() { *m = FooWithRepeated{} }
func (m *FooWithRepeated) String() string { return proto.CompactTextString(m) }
func (*FooWithRepeated) ProtoMessage() {}
func (*FooWithRepeated) Descriptor() ([]byte, []int) { return fileDescriptorProto, []int{1} }
func (m *FooWithRepeated) GetBar() [][]byte {
if m != nil {
return m.Bar
}
return nil
}
func init() {
proto.RegisterType((*Foo)(nil), "issue34.Foo")
proto.RegisterType((*FooWithRepeated)(nil), "issue34.FooWithRepeated")
}
func (m *Foo) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowProto
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: Foo: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: Foo: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Bar", wireType)
}
var byteLen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowProto
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
byteLen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if byteLen < 0 {
return ErrInvalidLengthProto
}
postIndex := iNdEx + byteLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Bar = append(m.Bar[:0], data[iNdEx:postIndex]...)
if m.Bar == nil {
m.Bar = []byte{}
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipProto(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthProto
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
m.XXX_unrecognized = append(m.XXX_unrecognized, data[iNdEx:iNdEx+skippy]...)
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func (m *FooWithRepeated) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowProto
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: FooWithRepeated: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: FooWithRepeated: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Bar", wireType)
}
var byteLen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowProto
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
byteLen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if byteLen < 0 {
return ErrInvalidLengthProto
}
postIndex := iNdEx + byteLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Bar = append(m.Bar, make([]byte, postIndex-iNdEx))
copy(m.Bar[len(m.Bar)-1], data[iNdEx:postIndex])
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipProto(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthProto
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
m.XXX_unrecognized = append(m.XXX_unrecognized, data[iNdEx:iNdEx+skippy]...)
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipProto(data []byte) (n int, err error) {
l := len(data)
iNdEx := 0
for iNdEx < l {
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProto
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
wireType := int(wire & 0x7)
switch wireType {
case 0:
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProto
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
iNdEx++
if data[iNdEx-1] < 0x80 {
break
}
}
return iNdEx, nil
case 1:
iNdEx += 8
return iNdEx, nil
case 2:
var length int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProto
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
length |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
iNdEx += length
if length < 0 {
return 0, ErrInvalidLengthProto
}
return iNdEx, nil
case 3:
for {
var innerWire uint64
var start int = iNdEx
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProto
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
innerWire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
innerWireType := int(innerWire & 0x7)
if innerWireType == 4 {
break
}
next, err := skipProto(data[start:])
if err != nil {
return 0, err
}
iNdEx = start + next
}
return iNdEx, nil
case 4:
return iNdEx, nil
case 5:
iNdEx += 4
return iNdEx, nil
default:
return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
}
}
panic("unreachable")
}
var (
ErrInvalidLengthProto = fmt.Errorf("proto: negative length found during unmarshaling")
ErrIntOverflowProto = fmt.Errorf("proto: integer overflow")
)
var fileDescriptorProto = []byte{
// 124 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0x2e, 0x28, 0xca, 0x2f,
0xc9, 0xd7, 0x03, 0x93, 0x42, 0xec, 0x99, 0xc5, 0xc5, 0xa5, 0xa9, 0xc6, 0x26, 0x52, 0xba, 0xe9,
0x99, 0x25, 0x19, 0xa5, 0x49, 0x7a, 0xc9, 0xf9, 0xb9, 0xfa, 0xe9, 0xf9, 0xe9, 0xf9, 0xfa, 0x60,
0xf9, 0xa4, 0xd2, 0x34, 0x30, 0x0f, 0xcc, 0x01, 0xb3, 0x20, 0xfa, 0x94, 0xc4, 0xb9, 0x98, 0xdd,
0xf2, 0xf3, 0x85, 0x04, 0xb8, 0x98, 0x93, 0x12, 0x8b, 0x24, 0x18, 0x15, 0x18, 0x35, 0x78, 0x82,
0x40, 0x4c, 0x25, 0x65, 0x2e, 0x7e, 0xa0, 0x44, 0x38, 0xd0, 0xb0, 0xa0, 0xd4, 0x82, 0xd4, 0xc4,
0x92, 0xd4, 0x14, 0x84, 0x22, 0x66, 0xa8, 0x22, 0x27, 0x96, 0x0b, 0x8f, 0xe4, 0x18, 0x01, 0x01,
0x00, 0x00, 0xff, 0xff, 0x00, 0xb2, 0x1b, 0xef, 0x89, 0x00, 0x00, 0x00,
}
+623
View File
@@ -0,0 +1,623 @@
// Code generated by protoc-gen-gogo.
// source: issue42.proto
// DO NOT EDIT!
/*
Package issue42 is a generated protocol buffer package.
It is generated from these files:
issue42.proto
It has these top-level messages:
UnorderedFields
OrderedFields
*/
package issue42
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import io "io"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type UnorderedFields struct {
A *int64 `protobuf:"varint,10,opt,name=A,json=a" json:"A,omitempty"`
B *uint64 `protobuf:"fixed64,1,opt,name=B,json=b" json:"B,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *UnorderedFields) Reset() { *m = UnorderedFields{} }
func (m *UnorderedFields) String() string { return proto.CompactTextString(m) }
func (*UnorderedFields) ProtoMessage() {}
func (*UnorderedFields) Descriptor() ([]byte, []int) { return fileDescriptorIssue42, []int{0} }
func (m *UnorderedFields) GetA() int64 {
if m != nil && m.A != nil {
return *m.A
}
return 0
}
func (m *UnorderedFields) GetB() uint64 {
if m != nil && m.B != nil {
return *m.B
}
return 0
}
type OrderedFields struct {
B *uint64 `protobuf:"fixed64,1,opt,name=B,json=b" json:"B,omitempty"`
A *int64 `protobuf:"varint,10,opt,name=A,json=a" json:"A,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *OrderedFields) Reset() { *m = OrderedFields{} }
func (m *OrderedFields) String() string { return proto.CompactTextString(m) }
func (*OrderedFields) ProtoMessage() {}
func (*OrderedFields) Descriptor() ([]byte, []int) { return fileDescriptorIssue42, []int{1} }
func (m *OrderedFields) GetB() uint64 {
if m != nil && m.B != nil {
return *m.B
}
return 0
}
func (m *OrderedFields) GetA() int64 {
if m != nil && m.A != nil {
return *m.A
}
return 0
}
func init() {
proto.RegisterType((*UnorderedFields)(nil), "issue42.UnorderedFields")
proto.RegisterType((*OrderedFields)(nil), "issue42.OrderedFields")
}
func (m *UnorderedFields) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *UnorderedFields) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if m.B != nil {
data[i] = 0x9
i++
i = encodeFixed64Issue42(data, i, uint64(*m.B))
}
if m.A != nil {
data[i] = 0x50
i++
i = encodeVarintIssue42(data, i, uint64(*m.A))
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func (m *OrderedFields) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *OrderedFields) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if m.B != nil {
data[i] = 0x9
i++
i = encodeFixed64Issue42(data, i, uint64(*m.B))
}
if m.A != nil {
data[i] = 0x50
i++
i = encodeVarintIssue42(data, i, uint64(*m.A))
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func encodeFixed64Issue42(data []byte, offset int, v uint64) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
data[offset+4] = uint8(v >> 32)
data[offset+5] = uint8(v >> 40)
data[offset+6] = uint8(v >> 48)
data[offset+7] = uint8(v >> 56)
return offset + 8
}
func encodeFixed32Issue42(data []byte, offset int, v uint32) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
return offset + 4
}
func encodeVarintIssue42(data []byte, offset int, v uint64) int {
for v >= 1<<7 {
data[offset] = uint8(v&0x7f | 0x80)
v >>= 7
offset++
}
data[offset] = uint8(v)
return offset + 1
}
func NewPopulatedUnorderedFields(r randyIssue42, easy bool) *UnorderedFields {
this := &UnorderedFields{}
if r.Intn(10) != 0 {
v1 := uint64(uint64(r.Uint32()))
this.B = &v1
}
if r.Intn(10) != 0 {
v2 := int64(r.Int63())
if r.Intn(2) == 0 {
v2 *= -1
}
this.A = &v2
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedIssue42(r, 11)
}
return this
}
func NewPopulatedOrderedFields(r randyIssue42, easy bool) *OrderedFields {
this := &OrderedFields{}
if r.Intn(10) != 0 {
v3 := uint64(uint64(r.Uint32()))
this.B = &v3
}
if r.Intn(10) != 0 {
v4 := int64(r.Int63())
if r.Intn(2) == 0 {
v4 *= -1
}
this.A = &v4
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedIssue42(r, 11)
}
return this
}
type randyIssue42 interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneIssue42(r randyIssue42) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringIssue42(r randyIssue42) string {
v5 := r.Intn(100)
tmps := make([]rune, v5)
for i := 0; i < v5; i++ {
tmps[i] = randUTF8RuneIssue42(r)
}
return string(tmps)
}
func randUnrecognizedIssue42(r randyIssue42, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldIssue42(data, r, fieldNumber, wire)
}
return data
}
func randFieldIssue42(data []byte, r randyIssue42, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateIssue42(data, uint64(key))
v6 := r.Int63()
if r.Intn(2) == 0 {
v6 *= -1
}
data = encodeVarintPopulateIssue42(data, uint64(v6))
case 1:
data = encodeVarintPopulateIssue42(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateIssue42(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateIssue42(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateIssue42(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateIssue42(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
func (m *UnorderedFields) Size() (n int) {
var l int
_ = l
if m.B != nil {
n += 9
}
if m.A != nil {
n += 1 + sovIssue42(uint64(*m.A))
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func (m *OrderedFields) Size() (n int) {
var l int
_ = l
if m.B != nil {
n += 9
}
if m.A != nil {
n += 1 + sovIssue42(uint64(*m.A))
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func sovIssue42(x uint64) (n int) {
for {
n++
x >>= 7
if x == 0 {
break
}
}
return n
}
func sozIssue42(x uint64) (n int) {
return sovIssue42(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (m *UnorderedFields) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowIssue42
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: UnorderedFields: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: UnorderedFields: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 1 {
return fmt.Errorf("proto: wrong wireType = %d for field B", wireType)
}
var v uint64
if (iNdEx + 8) > l {
return io.ErrUnexpectedEOF
}
iNdEx += 8
v = uint64(data[iNdEx-8])
v |= uint64(data[iNdEx-7]) << 8
v |= uint64(data[iNdEx-6]) << 16
v |= uint64(data[iNdEx-5]) << 24
v |= uint64(data[iNdEx-4]) << 32
v |= uint64(data[iNdEx-3]) << 40
v |= uint64(data[iNdEx-2]) << 48
v |= uint64(data[iNdEx-1]) << 56
m.B = &v
case 10:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field A", wireType)
}
var v int64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowIssue42
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
v |= (int64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
m.A = &v
default:
iNdEx = preIndex
skippy, err := skipIssue42(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthIssue42
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
m.XXX_unrecognized = append(m.XXX_unrecognized, data[iNdEx:iNdEx+skippy]...)
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func (m *OrderedFields) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowIssue42
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: OrderedFields: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: OrderedFields: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 1 {
return fmt.Errorf("proto: wrong wireType = %d for field B", wireType)
}
var v uint64
if (iNdEx + 8) > l {
return io.ErrUnexpectedEOF
}
iNdEx += 8
v = uint64(data[iNdEx-8])
v |= uint64(data[iNdEx-7]) << 8
v |= uint64(data[iNdEx-6]) << 16
v |= uint64(data[iNdEx-5]) << 24
v |= uint64(data[iNdEx-4]) << 32
v |= uint64(data[iNdEx-3]) << 40
v |= uint64(data[iNdEx-2]) << 48
v |= uint64(data[iNdEx-1]) << 56
m.B = &v
case 10:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field A", wireType)
}
var v int64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowIssue42
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
v |= (int64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
m.A = &v
default:
iNdEx = preIndex
skippy, err := skipIssue42(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthIssue42
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
m.XXX_unrecognized = append(m.XXX_unrecognized, data[iNdEx:iNdEx+skippy]...)
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipIssue42(data []byte) (n int, err error) {
l := len(data)
iNdEx := 0
for iNdEx < l {
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowIssue42
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
wireType := int(wire & 0x7)
switch wireType {
case 0:
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowIssue42
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
iNdEx++
if data[iNdEx-1] < 0x80 {
break
}
}
return iNdEx, nil
case 1:
iNdEx += 8
return iNdEx, nil
case 2:
var length int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowIssue42
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
length |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
iNdEx += length
if length < 0 {
return 0, ErrInvalidLengthIssue42
}
return iNdEx, nil
case 3:
for {
var innerWire uint64
var start int = iNdEx
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowIssue42
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
innerWire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
innerWireType := int(innerWire & 0x7)
if innerWireType == 4 {
break
}
next, err := skipIssue42(data[start:])
if err != nil {
return 0, err
}
iNdEx = start + next
}
return iNdEx, nil
case 4:
return iNdEx, nil
case 5:
iNdEx += 4
return iNdEx, nil
default:
return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
}
}
panic("unreachable")
}
var (
ErrInvalidLengthIssue42 = fmt.Errorf("proto: negative length found during unmarshaling")
ErrIntOverflowIssue42 = fmt.Errorf("proto: integer overflow")
)
var fileDescriptorIssue42 = []byte{
// 140 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0xcd, 0x2c, 0x2e, 0x2e,
0x4d, 0x35, 0x31, 0xd2, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x62, 0x87, 0x72, 0xa5, 0x74, 0xd3,
0x33, 0x4b, 0x32, 0x4a, 0x93, 0xf4, 0x92, 0xf3, 0x73, 0xf5, 0xd3, 0xf3, 0xd3, 0xf3, 0xf5, 0xc1,
0xf2, 0x49, 0xa5, 0x69, 0x60, 0x1e, 0x98, 0x03, 0x66, 0x41, 0xf4, 0x29, 0xe9, 0x72, 0xf1, 0x87,
0xe6, 0xe5, 0x17, 0xa5, 0xa4, 0x16, 0xa5, 0xa6, 0xb8, 0x65, 0xa6, 0xe6, 0xa4, 0x14, 0x0b, 0xf1,
0x70, 0x31, 0x3a, 0x49, 0x30, 0x2a, 0x30, 0x6a, 0xb0, 0x05, 0x31, 0x26, 0x81, 0x78, 0x8e, 0x12,
0x5c, 0x40, 0x1e, 0x73, 0x10, 0x63, 0xa2, 0x92, 0x36, 0x17, 0xaf, 0x3f, 0xb1, 0x8a, 0x9d, 0x04,
0x7e, 0x3c, 0x94, 0x63, 0x3c, 0xf1, 0x48, 0x8e, 0xf1, 0x02, 0x10, 0x3f, 0x00, 0x62, 0x40, 0x00,
0x00, 0x00, 0xff, 0xff, 0xad, 0x9a, 0xd1, 0x5b, 0xb5, 0x00, 0x00, 0x00,
}
+366
View File
@@ -0,0 +1,366 @@
// Code generated by protoc-gen-gogo.
// source: proto.proto
// DO NOT EDIT!
/*
Package proto is a generated protocol buffer package.
It is generated from these files:
proto.proto
It has these top-level messages:
Foo
*/
package proto
import proto1 "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import bytes "bytes"
import io "io"
import github_com_gogo_protobuf_proto "github.com/gogo/protobuf/proto"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto1.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto1.GoGoProtoPackageIsVersion1
type Foo struct {
Bar *uint64 `protobuf:"varint,1,req,name=bar" json:"bar,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Foo) Reset() { *m = Foo{} }
func (m *Foo) String() string { return proto1.CompactTextString(m) }
func (*Foo) ProtoMessage() {}
func (*Foo) Descriptor() ([]byte, []int) { return fileDescriptorProto, []int{0} }
func (m *Foo) GetBar() uint64 {
if m != nil && m.Bar != nil {
return *m.Bar
}
return 0
}
func init() {
proto1.RegisterType((*Foo)(nil), "proto.Foo")
}
func (this *Foo) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Foo)
if !ok {
that2, ok := that.(Foo)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Bar != nil && that1.Bar != nil {
if *this.Bar != *that1.Bar {
return false
}
} else if this.Bar != nil {
return false
} else if that1.Bar != nil {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func NewPopulatedFoo(r randyProto, easy bool) *Foo {
this := &Foo{}
v1 := uint64(uint64(r.Uint32()))
this.Bar = &v1
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedProto(r, 2)
}
return this
}
type randyProto interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneProto(r randyProto) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringProto(r randyProto) string {
v2 := r.Intn(100)
tmps := make([]rune, v2)
for i := 0; i < v2; i++ {
tmps[i] = randUTF8RuneProto(r)
}
return string(tmps)
}
func randUnrecognizedProto(r randyProto, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldProto(data, r, fieldNumber, wire)
}
return data
}
func randFieldProto(data []byte, r randyProto, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateProto(data, uint64(key))
v3 := r.Int63()
if r.Intn(2) == 0 {
v3 *= -1
}
data = encodeVarintPopulateProto(data, uint64(v3))
case 1:
data = encodeVarintPopulateProto(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateProto(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateProto(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateProto(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateProto(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
func (m *Foo) Unmarshal(data []byte) error {
var hasFields [1]uint64
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowProto
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: Foo: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: Foo: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Bar", wireType)
}
var v uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowProto
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
v |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
m.Bar = &v
hasFields[0] |= uint64(0x00000001)
default:
iNdEx = preIndex
skippy, err := skipProto(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthProto
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
m.XXX_unrecognized = append(m.XXX_unrecognized, data[iNdEx:iNdEx+skippy]...)
iNdEx += skippy
}
}
if hasFields[0]&uint64(0x00000001) == 0 {
return github_com_gogo_protobuf_proto.NewRequiredNotSetError("bar")
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipProto(data []byte) (n int, err error) {
l := len(data)
iNdEx := 0
for iNdEx < l {
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProto
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
wireType := int(wire & 0x7)
switch wireType {
case 0:
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProto
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
iNdEx++
if data[iNdEx-1] < 0x80 {
break
}
}
return iNdEx, nil
case 1:
iNdEx += 8
return iNdEx, nil
case 2:
var length int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProto
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
length |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
iNdEx += length
if length < 0 {
return 0, ErrInvalidLengthProto
}
return iNdEx, nil
case 3:
for {
var innerWire uint64
var start int = iNdEx
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProto
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
innerWire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
innerWireType := int(innerWire & 0x7)
if innerWireType == 4 {
break
}
next, err := skipProto(data[start:])
if err != nil {
return 0, err
}
iNdEx = start + next
}
return iNdEx, nil
case 4:
return iNdEx, nil
case 5:
iNdEx += 4
return iNdEx, nil
default:
return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
}
}
panic("unreachable")
}
var (
ErrInvalidLengthProto = fmt.Errorf("proto: negative length found during unmarshaling")
ErrIntOverflowProto = fmt.Errorf("proto: integer overflow")
)
var fileDescriptorProto = []byte{
// 106 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0x2e, 0x28, 0xca, 0x2f,
0xc9, 0xd7, 0x03, 0x93, 0x42, 0xac, 0x60, 0x4a, 0x4a, 0x37, 0x3d, 0xb3, 0x24, 0xa3, 0x34, 0x49,
0x2f, 0x39, 0x3f, 0x57, 0x3f, 0x3d, 0x3f, 0x3d, 0x5f, 0x1f, 0x2c, 0x9c, 0x54, 0x9a, 0x06, 0xe6,
0x81, 0x39, 0x60, 0x16, 0x44, 0x97, 0x92, 0x38, 0x17, 0xb3, 0x5b, 0x7e, 0xbe, 0x90, 0x00, 0x17,
0x73, 0x52, 0x62, 0x91, 0x04, 0xa3, 0x02, 0x93, 0x06, 0x4b, 0x10, 0x88, 0xe9, 0x24, 0xf0, 0xe3,
0xa1, 0x1c, 0xe3, 0x8a, 0x47, 0x72, 0x8c, 0x3b, 0x80, 0xf8, 0x02, 0x10, 0x03, 0x02, 0x00, 0x00,
0xff, 0xff, 0x54, 0x06, 0x1b, 0x76, 0x6e, 0x00, 0x00, 0x00,
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+1
View File
@@ -0,0 +1 @@
package mapsproto2
+136
View File
@@ -0,0 +1,136 @@
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package main
import (
"fmt"
"io/ioutil"
"os"
"os/exec"
"strings"
)
type MixMatch struct {
Old []string
New []string
}
func (this *MixMatch) Regenerate() {
fmt.Printf("mixbench\n")
uuidData, err := ioutil.ReadFile("../uuid.go")
if err != nil {
panic(err)
}
if err = ioutil.WriteFile("./testdata/uuid.go", uuidData, 0666); err != nil {
panic(err)
}
data, err := ioutil.ReadFile("../thetest.proto")
if err != nil {
panic(err)
}
content := string(data)
for i, old := range this.Old {
content = strings.Replace(content, old, this.New[i], -1)
}
if err = ioutil.WriteFile("./testdata/thetest.proto", []byte(content), 0666); err != nil {
panic(err)
}
var regenerate = exec.Command("protoc", "--gogo_out=.", "-I=../../:../../protobuf/:../../../../../:.", "./testdata/thetest.proto")
fmt.Printf("regenerating\n")
out, err := regenerate.CombinedOutput()
fmt.Printf("regenerate output: %v\n", string(out))
if err != nil {
panic(err)
}
}
func (this *MixMatch) Bench(rgx string, outFileName string) {
if err := os.MkdirAll("./testdata", 0777); err != nil {
panic(err)
}
this.Regenerate()
var test = exec.Command("go", "test", "-test.timeout=20m", "-test.v", "-test.run=XXX", "-test.bench="+rgx, "./testdata/")
fmt.Printf("benching\n")
out, err := test.CombinedOutput()
fmt.Printf("bench output: %v\n", string(out))
if err != nil {
panic(err)
}
if err := ioutil.WriteFile(outFileName, out, 0666); err != nil {
panic(err)
}
if err := os.RemoveAll("./testdata"); err != nil {
panic(err)
}
}
func NewMixMatch(marshaler, unmarshaler, unsafe_marshaler, unsafe_unmarshaler bool) *MixMatch {
mm := &MixMatch{}
if marshaler {
mm.Old = append(mm.Old, "option (gogoproto.marshaler_all) = false;")
mm.New = append(mm.New, "option (gogoproto.marshaler_all) = true;")
} else {
mm.Old = append(mm.Old, "option (gogoproto.marshaler_all) = true;")
mm.New = append(mm.New, "option (gogoproto.marshaler_all) = false;")
}
if unmarshaler {
mm.Old = append(mm.Old, "option (gogoproto.unmarshaler_all) = false;")
mm.New = append(mm.New, "option (gogoproto.unmarshaler_all) = true;")
} else {
mm.Old = append(mm.Old, "option (gogoproto.unmarshaler_all) = true;")
mm.New = append(mm.New, "option (gogoproto.unmarshaler_all) = false;")
}
if unsafe_marshaler {
mm.Old = append(mm.Old, "option (gogoproto.unsafe_marshaler_all) = false;")
mm.New = append(mm.New, "option (gogoproto.unsafe_marshaler_all) = true;")
} else {
mm.Old = append(mm.Old, "option (gogoproto.unsafe_marshaler_all) = true;")
mm.New = append(mm.New, "option (gogoproto.unsafe_marshaler_all) = false;")
}
if unsafe_unmarshaler {
mm.Old = append(mm.Old, "option (gogoproto.unsafe_unmarshaler_all) = false;")
mm.New = append(mm.New, "option (gogoproto.unsafe_unmarshaler_all) = true;")
} else {
mm.Old = append(mm.Old, "option (gogoproto.unsafe_unmarshaler_all) = true;")
mm.New = append(mm.New, "option (gogoproto.unsafe_unmarshaler_all) = false;")
}
return mm
}
func main() {
NewMixMatch(true, true, false, false).Bench("ProtoMarshal", "marshaler.txt")
NewMixMatch(false, false, false, false).Bench("ProtoMarshal", "marshal.txt")
NewMixMatch(false, false, true, true).Bench("ProtoMarshal", "unsafe_marshaler.txt")
NewMixMatch(true, true, false, false).Bench("ProtoUnmarshal", "unmarshaler.txt")
NewMixMatch(false, false, false, false).Bench("ProtoUnmarshal", "unmarshal.txt")
NewMixMatch(false, false, true, true).Bench("ProtoUnmarshal", "unsafe_unmarshaler.txt")
fmt.Println("Running benchcmp will show the performance difference between using reflect and generated code for marshalling and unmarshalling of protocol buffers")
fmt.Println("$GOROOT/misc/benchcmp marshal.txt marshaler.txt")
fmt.Println("$GOROOT/misc/benchcmp unmarshal.txt unmarshaler.txt")
fmt.Println("$GOROOT/misc/benchcmp marshal.txt unsafe_marshaler.txt")
fmt.Println("$GOROOT/misc/benchcmp unmarshal.txt unsafe_unmarshaler.txt")
}
+339
View File
@@ -0,0 +1,339 @@
// Code generated by protoc-gen-gogo.
// source: md.proto
// DO NOT EDIT!
/*
Package moredefaults is a generated protocol buffer package.
It is generated from these files:
md.proto
It has these top-level messages:
MoreDefaultsB
MoreDefaultsA
*/
package moredefaults
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import test "github.com/gogo/protobuf/test/example"
import bytes "bytes"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type MoreDefaultsB struct {
Field1 *string `protobuf:"bytes,1,opt,name=Field1,json=field1" json:"Field1,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *MoreDefaultsB) Reset() { *m = MoreDefaultsB{} }
func (m *MoreDefaultsB) String() string { return proto.CompactTextString(m) }
func (*MoreDefaultsB) ProtoMessage() {}
func (*MoreDefaultsB) Descriptor() ([]byte, []int) { return fileDescriptorMd, []int{0} }
func (m *MoreDefaultsB) GetField1() string {
if m != nil && m.Field1 != nil {
return *m.Field1
}
return ""
}
type MoreDefaultsA struct {
Field1 *int64 `protobuf:"varint,1,opt,name=Field1,json=field1,def=1234" json:"Field1,omitempty"`
Field2 int64 `protobuf:"varint,2,opt,name=Field2,json=field2" json:"Field2"`
B1 *MoreDefaultsB `protobuf:"bytes,3,opt,name=B1,json=b1" json:"B1,omitempty"`
B2 MoreDefaultsB `protobuf:"bytes,4,opt,name=B2,json=b2" json:"B2"`
A1 *test.A `protobuf:"bytes,5,opt,name=A1,json=a1" json:"A1,omitempty"`
A2 test.A `protobuf:"bytes,6,opt,name=A2,json=a2" json:"A2"`
XXX_unrecognized []byte `json:"-"`
}
func (m *MoreDefaultsA) Reset() { *m = MoreDefaultsA{} }
func (m *MoreDefaultsA) String() string { return proto.CompactTextString(m) }
func (*MoreDefaultsA) ProtoMessage() {}
func (*MoreDefaultsA) Descriptor() ([]byte, []int) { return fileDescriptorMd, []int{1} }
const Default_MoreDefaultsA_Field1 int64 = 1234
func (m *MoreDefaultsA) GetField1() int64 {
if m != nil && m.Field1 != nil {
return *m.Field1
}
return Default_MoreDefaultsA_Field1
}
func (m *MoreDefaultsA) GetField2() int64 {
if m != nil {
return m.Field2
}
return 0
}
func (m *MoreDefaultsA) GetB1() *MoreDefaultsB {
if m != nil {
return m.B1
}
return nil
}
func (m *MoreDefaultsA) GetB2() MoreDefaultsB {
if m != nil {
return m.B2
}
return MoreDefaultsB{}
}
func (m *MoreDefaultsA) GetA1() *test.A {
if m != nil {
return m.A1
}
return nil
}
func (m *MoreDefaultsA) GetA2() test.A {
if m != nil {
return m.A2
}
return test.A{}
}
func init() {
proto.RegisterType((*MoreDefaultsB)(nil), "moredefaults.MoreDefaultsB")
proto.RegisterType((*MoreDefaultsA)(nil), "moredefaults.MoreDefaultsA")
}
func (this *MoreDefaultsB) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*MoreDefaultsB)
if !ok {
that2, ok := that.(MoreDefaultsB)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Field1 != nil && that1.Field1 != nil {
if *this.Field1 != *that1.Field1 {
return false
}
} else if this.Field1 != nil {
return false
} else if that1.Field1 != nil {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (this *MoreDefaultsA) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*MoreDefaultsA)
if !ok {
that2, ok := that.(MoreDefaultsA)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Field1 != nil && that1.Field1 != nil {
if *this.Field1 != *that1.Field1 {
return false
}
} else if this.Field1 != nil {
return false
} else if that1.Field1 != nil {
return false
}
if this.Field2 != that1.Field2 {
return false
}
if !this.B1.Equal(that1.B1) {
return false
}
if !this.B2.Equal(&that1.B2) {
return false
}
if !this.A1.Equal(that1.A1) {
return false
}
if !this.A2.Equal(&that1.A2) {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func NewPopulatedMoreDefaultsB(r randyMd, easy bool) *MoreDefaultsB {
this := &MoreDefaultsB{}
if r.Intn(10) != 0 {
v1 := randStringMd(r)
this.Field1 = &v1
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedMd(r, 2)
}
return this
}
func NewPopulatedMoreDefaultsA(r randyMd, easy bool) *MoreDefaultsA {
this := &MoreDefaultsA{}
if r.Intn(10) != 0 {
v2 := int64(r.Int63())
if r.Intn(2) == 0 {
v2 *= -1
}
this.Field1 = &v2
}
this.Field2 = int64(r.Int63())
if r.Intn(2) == 0 {
this.Field2 *= -1
}
if r.Intn(10) != 0 {
this.B1 = NewPopulatedMoreDefaultsB(r, easy)
}
v3 := NewPopulatedMoreDefaultsB(r, easy)
this.B2 = *v3
if r.Intn(10) != 0 {
this.A1 = test.NewPopulatedA(r, easy)
}
v4 := test.NewPopulatedA(r, easy)
this.A2 = *v4
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedMd(r, 7)
}
return this
}
type randyMd interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneMd(r randyMd) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringMd(r randyMd) string {
v5 := r.Intn(100)
tmps := make([]rune, v5)
for i := 0; i < v5; i++ {
tmps[i] = randUTF8RuneMd(r)
}
return string(tmps)
}
func randUnrecognizedMd(r randyMd, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldMd(data, r, fieldNumber, wire)
}
return data
}
func randFieldMd(data []byte, r randyMd, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateMd(data, uint64(key))
v6 := r.Int63()
if r.Intn(2) == 0 {
v6 *= -1
}
data = encodeVarintPopulateMd(data, uint64(v6))
case 1:
data = encodeVarintPopulateMd(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateMd(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateMd(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateMd(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateMd(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
var fileDescriptorMd = []byte{
// 252 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0xc8, 0x4d, 0xd1, 0x2b,
0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0xc9, 0xcd, 0x2f, 0x4a, 0x4d, 0x49, 0x4d, 0x4b, 0x2c, 0xcd,
0x29, 0x29, 0x96, 0xd2, 0x4d, 0xcf, 0x2c, 0xc9, 0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, 0x4f,
0xcf, 0x4f, 0xcf, 0xd7, 0x07, 0x2b, 0x4a, 0x2a, 0x4d, 0x03, 0xf3, 0xc0, 0x1c, 0x30, 0x0b, 0xa2,
0x59, 0xca, 0x18, 0xa7, 0xf2, 0x92, 0xd4, 0xe2, 0x12, 0xfd, 0xd4, 0x8a, 0xc4, 0xdc, 0x82, 0x9c,
0x54, 0x18, 0x0d, 0xd1, 0xa4, 0xa4, 0xce, 0xc5, 0xeb, 0x0b, 0xb4, 0xd3, 0x05, 0x6a, 0xa7, 0x93,
0x90, 0x18, 0x17, 0x9b, 0x5b, 0x66, 0x6a, 0x4e, 0x8a, 0xa1, 0x04, 0xa3, 0x02, 0xa3, 0x06, 0x67,
0x10, 0x5b, 0x1a, 0x98, 0xa7, 0xf4, 0x98, 0x11, 0x55, 0xa5, 0xa3, 0x90, 0x0c, 0x8a, 0x4a, 0x66,
0x2b, 0x16, 0x43, 0x23, 0x63, 0x13, 0x98, 0x7a, 0xb8, 0xac, 0x91, 0x04, 0x13, 0x48, 0xd6, 0x89,
0xe5, 0xc4, 0x3d, 0x79, 0x06, 0xa8, 0xac, 0x91, 0x90, 0x36, 0x17, 0x93, 0x93, 0xa1, 0x04, 0x33,
0x50, 0x86, 0xdb, 0x48, 0x5a, 0x0f, 0xd9, 0xd7, 0x7a, 0x28, 0xce, 0x09, 0x62, 0x4a, 0x32, 0x14,
0x32, 0x04, 0x2a, 0x36, 0x92, 0x60, 0x21, 0xa8, 0x18, 0x6a, 0x07, 0x53, 0x92, 0x91, 0x90, 0x38,
0x17, 0x93, 0xa3, 0xa1, 0x04, 0x2b, 0x58, 0x0b, 0xbb, 0x1e, 0xc8, 0xff, 0x7a, 0x8e, 0x41, 0x4c,
0x89, 0x86, 0x42, 0xb2, 0x40, 0x09, 0x23, 0x09, 0x36, 0x14, 0x09, 0x98, 0xbe, 0x44, 0x23, 0x27,
0x81, 0x13, 0x0f, 0xe5, 0x18, 0x7f, 0x00, 0xf1, 0x8a, 0x47, 0x72, 0x8c, 0x3b, 0x80, 0x18, 0x10,
0x00, 0x00, 0xff, 0xff, 0x0f, 0x4e, 0xe8, 0x88, 0x9d, 0x01, 0x00, 0x00,
}
+404
View File
@@ -0,0 +1,404 @@
// Code generated by protoc-gen-gogo.
// source: nopackage.proto
// DO NOT EDIT!
/*
Package nopackage is a generated protocol buffer package.
It is generated from these files:
nopackage.proto
It has these top-level messages:
M
*/
package nopackage
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import io "io"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type M struct {
F map[string]float64 `protobuf:"bytes,1,rep,name=f" json:"f,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"fixed64,2,opt,name=value,proto3"`
}
func (m *M) Reset() { *m = M{} }
func (m *M) String() string { return proto.CompactTextString(m) }
func (*M) ProtoMessage() {}
func (*M) Descriptor() ([]byte, []int) { return fileDescriptorNopackage, []int{0} }
func (m *M) GetF() map[string]float64 {
if m != nil {
return m.F
}
return nil
}
func init() {
proto.RegisterType((*M)(nil), "M")
}
func (m *M) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *M) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if len(m.F) > 0 {
for k := range m.F {
data[i] = 0xa
i++
v := m.F[k]
mapSize := 1 + len(k) + sovNopackage(uint64(len(k))) + 1 + 8
i = encodeVarintNopackage(data, i, uint64(mapSize))
data[i] = 0xa
i++
i = encodeVarintNopackage(data, i, uint64(len(k)))
i += copy(data[i:], k)
data[i] = 0x11
i++
i = encodeFixed64Nopackage(data, i, uint64(math.Float64bits(float64(v))))
}
}
return i, nil
}
func encodeFixed64Nopackage(data []byte, offset int, v uint64) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
data[offset+4] = uint8(v >> 32)
data[offset+5] = uint8(v >> 40)
data[offset+6] = uint8(v >> 48)
data[offset+7] = uint8(v >> 56)
return offset + 8
}
func encodeFixed32Nopackage(data []byte, offset int, v uint32) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
return offset + 4
}
func encodeVarintNopackage(data []byte, offset int, v uint64) int {
for v >= 1<<7 {
data[offset] = uint8(v&0x7f | 0x80)
v >>= 7
offset++
}
data[offset] = uint8(v)
return offset + 1
}
func (m *M) Size() (n int) {
var l int
_ = l
if len(m.F) > 0 {
for k, v := range m.F {
_ = k
_ = v
mapEntrySize := 1 + len(k) + sovNopackage(uint64(len(k))) + 1 + 8
n += mapEntrySize + 1 + sovNopackage(uint64(mapEntrySize))
}
}
return n
}
func sovNopackage(x uint64) (n int) {
for {
n++
x >>= 7
if x == 0 {
break
}
}
return n
}
func sozNopackage(x uint64) (n int) {
return sovNopackage(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (m *M) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowNopackage
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: M: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: M: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field F", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowNopackage
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
msglen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthNopackage
}
postIndex := iNdEx + msglen
if postIndex > l {
return io.ErrUnexpectedEOF
}
var keykey uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowNopackage
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
keykey |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
var stringLenmapkey uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowNopackage
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLenmapkey |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLenmapkey := int(stringLenmapkey)
if intStringLenmapkey < 0 {
return ErrInvalidLengthNopackage
}
postStringIndexmapkey := iNdEx + intStringLenmapkey
if postStringIndexmapkey > l {
return io.ErrUnexpectedEOF
}
mapkey := string(data[iNdEx:postStringIndexmapkey])
iNdEx = postStringIndexmapkey
var valuekey uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowNopackage
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
valuekey |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
var mapvaluetemp uint64
if (iNdEx + 8) > l {
return io.ErrUnexpectedEOF
}
iNdEx += 8
mapvaluetemp = uint64(data[iNdEx-8])
mapvaluetemp |= uint64(data[iNdEx-7]) << 8
mapvaluetemp |= uint64(data[iNdEx-6]) << 16
mapvaluetemp |= uint64(data[iNdEx-5]) << 24
mapvaluetemp |= uint64(data[iNdEx-4]) << 32
mapvaluetemp |= uint64(data[iNdEx-3]) << 40
mapvaluetemp |= uint64(data[iNdEx-2]) << 48
mapvaluetemp |= uint64(data[iNdEx-1]) << 56
mapvalue := math.Float64frombits(mapvaluetemp)
if m.F == nil {
m.F = make(map[string]float64)
}
m.F[mapkey] = mapvalue
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipNopackage(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthNopackage
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipNopackage(data []byte) (n int, err error) {
l := len(data)
iNdEx := 0
for iNdEx < l {
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowNopackage
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
wireType := int(wire & 0x7)
switch wireType {
case 0:
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowNopackage
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
iNdEx++
if data[iNdEx-1] < 0x80 {
break
}
}
return iNdEx, nil
case 1:
iNdEx += 8
return iNdEx, nil
case 2:
var length int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowNopackage
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
length |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
iNdEx += length
if length < 0 {
return 0, ErrInvalidLengthNopackage
}
return iNdEx, nil
case 3:
for {
var innerWire uint64
var start int = iNdEx
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowNopackage
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
innerWire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
innerWireType := int(innerWire & 0x7)
if innerWireType == 4 {
break
}
next, err := skipNopackage(data[start:])
if err != nil {
return 0, err
}
iNdEx = start + next
}
return iNdEx, nil
case 4:
return iNdEx, nil
case 5:
iNdEx += 4
return iNdEx, nil
default:
return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
}
}
panic("unreachable")
}
var (
ErrInvalidLengthNopackage = fmt.Errorf("proto: negative length found during unmarshaling")
ErrIntOverflowNopackage = fmt.Errorf("proto: integer overflow")
)
var fileDescriptorNopackage = []byte{
// 129 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0xcf, 0xcb, 0x2f, 0x48,
0x4c, 0xce, 0x4e, 0x4c, 0x4f, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x57, 0x0a, 0xe2, 0x62, 0xf4,
0x15, 0x12, 0xe7, 0x62, 0x4c, 0x93, 0x60, 0x54, 0x60, 0xd6, 0xe0, 0x36, 0xe2, 0xd4, 0xf3, 0xd5,
0x73, 0x73, 0xcd, 0x2b, 0x29, 0xaa, 0x0c, 0x62, 0x4c, 0x93, 0x32, 0xe1, 0x62, 0x83, 0x70, 0x84,
0x04, 0xb8, 0x98, 0xb3, 0x53, 0x2b, 0x81, 0x8a, 0x18, 0x35, 0x38, 0x83, 0x40, 0x4c, 0x21, 0x11,
0x2e, 0xd6, 0xb2, 0xc4, 0x9c, 0xd2, 0x54, 0x09, 0x26, 0xa0, 0x18, 0x63, 0x10, 0x84, 0x63, 0xc5,
0x64, 0xc1, 0xe8, 0xc4, 0x73, 0xe2, 0x91, 0x1c, 0xe3, 0x05, 0x20, 0x7e, 0x00, 0xc4, 0x49, 0x6c,
0x60, 0x8b, 0x8c, 0x01, 0x01, 0x00, 0x00, 0xff, 0xff, 0x62, 0x62, 0xb2, 0xed, 0x7b, 0x00, 0x00,
0x00,
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+1
View File
@@ -0,0 +1 @@
package one
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+1
View File
@@ -0,0 +1 @@
package oneof3
+411
View File
@@ -0,0 +1,411 @@
// Code generated by protoc-gen-gogo.
// source: oneofembed.proto
// DO NOT EDIT!
/*
Package proto is a generated protocol buffer package.
It is generated from these files:
oneofembed.proto
It has these top-level messages:
Foo
Bar
*/
package proto
import proto1 "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto1.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto1.GoGoProtoPackageIsVersion1
type Foo struct {
*Bar `protobuf:"bytes,1,opt,name=bar,embedded=bar" json:"bar,omitempty"`
}
func (m *Foo) Reset() { *m = Foo{} }
func (m *Foo) String() string { return proto1.CompactTextString(m) }
func (*Foo) ProtoMessage() {}
func (*Foo) Descriptor() ([]byte, []int) { return fileDescriptorOneofembed, []int{0} }
type Bar struct {
// Types that are valid to be assigned to Pick:
// *Bar_A
// *Bar_B
Pick isBar_Pick `protobuf_oneof:"pick"`
}
func (m *Bar) Reset() { *m = Bar{} }
func (m *Bar) String() string { return proto1.CompactTextString(m) }
func (*Bar) ProtoMessage() {}
func (*Bar) Descriptor() ([]byte, []int) { return fileDescriptorOneofembed, []int{1} }
type isBar_Pick interface {
isBar_Pick()
Equal(interface{}) bool
}
type Bar_A struct {
A bool `protobuf:"varint,11,opt,name=a,proto3,oneof"`
}
type Bar_B struct {
B bool `protobuf:"varint,12,opt,name=b,proto3,oneof"`
}
func (*Bar_A) isBar_Pick() {}
func (*Bar_B) isBar_Pick() {}
func (m *Bar) GetPick() isBar_Pick {
if m != nil {
return m.Pick
}
return nil
}
func (m *Bar) GetA() bool {
if x, ok := m.GetPick().(*Bar_A); ok {
return x.A
}
return false
}
func (m *Bar) GetB() bool {
if x, ok := m.GetPick().(*Bar_B); ok {
return x.B
}
return false
}
// XXX_OneofFuncs is for the internal use of the proto package.
func (*Bar) XXX_OneofFuncs() (func(msg proto1.Message, b *proto1.Buffer) error, func(msg proto1.Message, tag, wire int, b *proto1.Buffer) (bool, error), func(msg proto1.Message) (n int), []interface{}) {
return _Bar_OneofMarshaler, _Bar_OneofUnmarshaler, _Bar_OneofSizer, []interface{}{
(*Bar_A)(nil),
(*Bar_B)(nil),
}
}
func _Bar_OneofMarshaler(msg proto1.Message, b *proto1.Buffer) error {
m := msg.(*Bar)
// pick
switch x := m.Pick.(type) {
case *Bar_A:
t := uint64(0)
if x.A {
t = 1
}
_ = b.EncodeVarint(11<<3 | proto1.WireVarint)
_ = b.EncodeVarint(t)
case *Bar_B:
t := uint64(0)
if x.B {
t = 1
}
_ = b.EncodeVarint(12<<3 | proto1.WireVarint)
_ = b.EncodeVarint(t)
case nil:
default:
return fmt.Errorf("Bar.Pick has unexpected type %T", x)
}
return nil
}
func _Bar_OneofUnmarshaler(msg proto1.Message, tag, wire int, b *proto1.Buffer) (bool, error) {
m := msg.(*Bar)
switch tag {
case 11: // pick.a
if wire != proto1.WireVarint {
return true, proto1.ErrInternalBadWireType
}
x, err := b.DecodeVarint()
m.Pick = &Bar_A{x != 0}
return true, err
case 12: // pick.b
if wire != proto1.WireVarint {
return true, proto1.ErrInternalBadWireType
}
x, err := b.DecodeVarint()
m.Pick = &Bar_B{x != 0}
return true, err
default:
return false, nil
}
}
func _Bar_OneofSizer(msg proto1.Message) (n int) {
m := msg.(*Bar)
// pick
switch x := m.Pick.(type) {
case *Bar_A:
n += proto1.SizeVarint(11<<3 | proto1.WireVarint)
n += 1
case *Bar_B:
n += proto1.SizeVarint(12<<3 | proto1.WireVarint)
n += 1
case nil:
default:
panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
}
return n
}
func init() {
proto1.RegisterType((*Foo)(nil), "proto.Foo")
proto1.RegisterType((*Bar)(nil), "proto.Bar")
}
func (this *Foo) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Foo)
if !ok {
that2, ok := that.(Foo)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if !this.Bar.Equal(that1.Bar) {
return false
}
return true
}
func (this *Bar) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Bar)
if !ok {
that2, ok := that.(Bar)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if that1.Pick == nil {
if this.Pick != nil {
return false
}
} else if this.Pick == nil {
return false
} else if !this.Pick.Equal(that1.Pick) {
return false
}
return true
}
func (this *Bar_A) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Bar_A)
if !ok {
that2, ok := that.(Bar_A)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.A != that1.A {
return false
}
return true
}
func (this *Bar_B) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Bar_B)
if !ok {
that2, ok := that.(Bar_B)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.B != that1.B {
return false
}
return true
}
func NewPopulatedFoo(r randyOneofembed, easy bool) *Foo {
this := &Foo{}
if r.Intn(10) != 0 {
this.Bar = NewPopulatedBar(r, easy)
}
if !easy && r.Intn(10) != 0 {
}
return this
}
func NewPopulatedBar(r randyOneofembed, easy bool) *Bar {
this := &Bar{}
oneofNumber_Pick := []int32{11, 12}[r.Intn(2)]
switch oneofNumber_Pick {
case 11:
this.Pick = NewPopulatedBar_A(r, easy)
case 12:
this.Pick = NewPopulatedBar_B(r, easy)
}
if !easy && r.Intn(10) != 0 {
}
return this
}
func NewPopulatedBar_A(r randyOneofembed, easy bool) *Bar_A {
this := &Bar_A{}
this.A = bool(bool(r.Intn(2) == 0))
return this
}
func NewPopulatedBar_B(r randyOneofembed, easy bool) *Bar_B {
this := &Bar_B{}
this.B = bool(bool(r.Intn(2) == 0))
return this
}
type randyOneofembed interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneOneofembed(r randyOneofembed) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringOneofembed(r randyOneofembed) string {
v1 := r.Intn(100)
tmps := make([]rune, v1)
for i := 0; i < v1; i++ {
tmps[i] = randUTF8RuneOneofembed(r)
}
return string(tmps)
}
func randUnrecognizedOneofembed(r randyOneofembed, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldOneofembed(data, r, fieldNumber, wire)
}
return data
}
func randFieldOneofembed(data []byte, r randyOneofembed, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateOneofembed(data, uint64(key))
v2 := r.Int63()
if r.Intn(2) == 0 {
v2 *= -1
}
data = encodeVarintPopulateOneofembed(data, uint64(v2))
case 1:
data = encodeVarintPopulateOneofembed(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateOneofembed(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateOneofembed(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateOneofembed(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateOneofembed(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
var fileDescriptorOneofembed = []byte{
// 167 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0x12, 0xc8, 0xcf, 0x4b, 0xcd,
0x4f, 0x4b, 0xcd, 0x4d, 0x4a, 0x4d, 0xd1, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x62, 0x05, 0x53,
0x52, 0xba, 0xe9, 0x99, 0x25, 0x19, 0xa5, 0x49, 0x7a, 0xc9, 0xf9, 0xb9, 0xfa, 0xe9, 0xf9, 0xe9,
0xf9, 0xfa, 0x60, 0xe1, 0xa4, 0xd2, 0x34, 0x30, 0x0f, 0xcc, 0x01, 0xb3, 0x20, 0xba, 0x94, 0x34,
0xb9, 0x98, 0xdd, 0xf2, 0xf3, 0x85, 0x94, 0xb8, 0x98, 0x93, 0x12, 0x8b, 0x24, 0x18, 0x15, 0x18,
0x35, 0xb8, 0x8d, 0xb8, 0x20, 0x72, 0x7a, 0x4e, 0x89, 0x45, 0x4e, 0x2c, 0x17, 0xee, 0xc9, 0x33,
0x06, 0x81, 0x24, 0x95, 0x74, 0xb9, 0x98, 0x81, 0x22, 0x42, 0x7c, 0x5c, 0x8c, 0x89, 0x12, 0xdc,
0x40, 0x85, 0x1c, 0x1e, 0x0c, 0x41, 0x8c, 0x89, 0x20, 0x7e, 0x92, 0x04, 0x0f, 0x8c, 0x9f, 0xe4,
0xc4, 0xc6, 0xc5, 0x52, 0x90, 0x99, 0x9c, 0xed, 0xc4, 0xf3, 0xe3, 0xa1, 0x1c, 0xe3, 0x8a, 0x47,
0x72, 0x8c, 0x3b, 0x80, 0x38, 0x89, 0x0d, 0x6c, 0xa4, 0x31, 0x20, 0x00, 0x00, 0xff, 0xff, 0x56,
0x58, 0x05, 0x27, 0xb8, 0x00, 0x00, 0x00,
}
+1
View File
@@ -0,0 +1 @@
package packed
File diff suppressed because it is too large Load Diff
+616
View File
@@ -0,0 +1,616 @@
// Code generated by protoc-gen-gogo.
// source: protosize.proto
// DO NOT EDIT!
/*
Package protosize is a generated protocol buffer package.
It is generated from these files:
protosize.proto
It has these top-level messages:
SizeMessage
*/
package protosize
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import bytes "bytes"
import io "io"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type SizeMessage struct {
Size *int64 `protobuf:"varint,1,opt,name=size" json:"size,omitempty"`
ProtoSize_ *int64 `protobuf:"varint,2,opt,name=proto_size,json=protoSize" json:"proto_size,omitempty"`
Equal_ *bool `protobuf:"varint,3,opt,name=Equal,json=equal" json:"Equal,omitempty"`
String_ *string `protobuf:"bytes,4,opt,name=String,json=string" json:"String,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *SizeMessage) Reset() { *m = SizeMessage{} }
func (m *SizeMessage) String() string { return proto.CompactTextString(m) }
func (*SizeMessage) ProtoMessage() {}
func (*SizeMessage) Descriptor() ([]byte, []int) { return fileDescriptorProtosize, []int{0} }
func (m *SizeMessage) GetSize() int64 {
if m != nil && m.Size != nil {
return *m.Size
}
return 0
}
func (m *SizeMessage) GetProtoSize_() int64 {
if m != nil && m.ProtoSize_ != nil {
return *m.ProtoSize_
}
return 0
}
func (m *SizeMessage) GetEqual_() bool {
if m != nil && m.Equal_ != nil {
return *m.Equal_
}
return false
}
func (m *SizeMessage) GetString_() string {
if m != nil && m.String_ != nil {
return *m.String_
}
return ""
}
func init() {
proto.RegisterType((*SizeMessage)(nil), "protosize.SizeMessage")
}
func (this *SizeMessage) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*SizeMessage)
if !ok {
that2, ok := that.(SizeMessage)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Size != nil && that1.Size != nil {
if *this.Size != *that1.Size {
return false
}
} else if this.Size != nil {
return false
} else if that1.Size != nil {
return false
}
if this.ProtoSize_ != nil && that1.ProtoSize_ != nil {
if *this.ProtoSize_ != *that1.ProtoSize_ {
return false
}
} else if this.ProtoSize_ != nil {
return false
} else if that1.ProtoSize_ != nil {
return false
}
if this.Equal_ != nil && that1.Equal_ != nil {
if *this.Equal_ != *that1.Equal_ {
return false
}
} else if this.Equal_ != nil {
return false
} else if that1.Equal_ != nil {
return false
}
if this.String_ != nil && that1.String_ != nil {
if *this.String_ != *that1.String_ {
return false
}
} else if this.String_ != nil {
return false
} else if that1.String_ != nil {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (m *SizeMessage) Marshal() (data []byte, err error) {
size := m.ProtoSize()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *SizeMessage) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if m.Size != nil {
data[i] = 0x8
i++
i = encodeVarintProtosize(data, i, uint64(*m.Size))
}
if m.ProtoSize_ != nil {
data[i] = 0x10
i++
i = encodeVarintProtosize(data, i, uint64(*m.ProtoSize_))
}
if m.Equal_ != nil {
data[i] = 0x18
i++
if *m.Equal_ {
data[i] = 1
} else {
data[i] = 0
}
i++
}
if m.String_ != nil {
data[i] = 0x22
i++
i = encodeVarintProtosize(data, i, uint64(len(*m.String_)))
i += copy(data[i:], *m.String_)
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func encodeFixed64Protosize(data []byte, offset int, v uint64) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
data[offset+4] = uint8(v >> 32)
data[offset+5] = uint8(v >> 40)
data[offset+6] = uint8(v >> 48)
data[offset+7] = uint8(v >> 56)
return offset + 8
}
func encodeFixed32Protosize(data []byte, offset int, v uint32) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
return offset + 4
}
func encodeVarintProtosize(data []byte, offset int, v uint64) int {
for v >= 1<<7 {
data[offset] = uint8(v&0x7f | 0x80)
v >>= 7
offset++
}
data[offset] = uint8(v)
return offset + 1
}
func NewPopulatedSizeMessage(r randyProtosize, easy bool) *SizeMessage {
this := &SizeMessage{}
if r.Intn(10) != 0 {
v1 := int64(r.Int63())
if r.Intn(2) == 0 {
v1 *= -1
}
this.Size = &v1
}
if r.Intn(10) != 0 {
v2 := int64(r.Int63())
if r.Intn(2) == 0 {
v2 *= -1
}
this.ProtoSize_ = &v2
}
if r.Intn(10) != 0 {
v3 := bool(bool(r.Intn(2) == 0))
this.Equal_ = &v3
}
if r.Intn(10) != 0 {
v4 := randStringProtosize(r)
this.String_ = &v4
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedProtosize(r, 5)
}
return this
}
type randyProtosize interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneProtosize(r randyProtosize) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringProtosize(r randyProtosize) string {
v5 := r.Intn(100)
tmps := make([]rune, v5)
for i := 0; i < v5; i++ {
tmps[i] = randUTF8RuneProtosize(r)
}
return string(tmps)
}
func randUnrecognizedProtosize(r randyProtosize, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldProtosize(data, r, fieldNumber, wire)
}
return data
}
func randFieldProtosize(data []byte, r randyProtosize, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateProtosize(data, uint64(key))
v6 := r.Int63()
if r.Intn(2) == 0 {
v6 *= -1
}
data = encodeVarintPopulateProtosize(data, uint64(v6))
case 1:
data = encodeVarintPopulateProtosize(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateProtosize(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateProtosize(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateProtosize(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateProtosize(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
func (m *SizeMessage) ProtoSize() (n int) {
var l int
_ = l
if m.Size != nil {
n += 1 + sovProtosize(uint64(*m.Size))
}
if m.ProtoSize_ != nil {
n += 1 + sovProtosize(uint64(*m.ProtoSize_))
}
if m.Equal_ != nil {
n += 2
}
if m.String_ != nil {
l = len(*m.String_)
n += 1 + l + sovProtosize(uint64(l))
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func sovProtosize(x uint64) (n int) {
for {
n++
x >>= 7
if x == 0 {
break
}
}
return n
}
func sozProtosize(x uint64) (n int) {
return sovProtosize(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (m *SizeMessage) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowProtosize
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: SizeMessage: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: SizeMessage: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Size", wireType)
}
var v int64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowProtosize
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
v |= (int64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
m.Size = &v
case 2:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field ProtoSize_", wireType)
}
var v int64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowProtosize
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
v |= (int64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
m.ProtoSize_ = &v
case 3:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Equal_", wireType)
}
var v int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowProtosize
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
v |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
b := bool(v != 0)
m.Equal_ = &b
case 4:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field String_", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowProtosize
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLen |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthProtosize
}
postIndex := iNdEx + intStringLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
s := string(data[iNdEx:postIndex])
m.String_ = &s
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipProtosize(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthProtosize
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
m.XXX_unrecognized = append(m.XXX_unrecognized, data[iNdEx:iNdEx+skippy]...)
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipProtosize(data []byte) (n int, err error) {
l := len(data)
iNdEx := 0
for iNdEx < l {
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProtosize
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
wireType := int(wire & 0x7)
switch wireType {
case 0:
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProtosize
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
iNdEx++
if data[iNdEx-1] < 0x80 {
break
}
}
return iNdEx, nil
case 1:
iNdEx += 8
return iNdEx, nil
case 2:
var length int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProtosize
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
length |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
iNdEx += length
if length < 0 {
return 0, ErrInvalidLengthProtosize
}
return iNdEx, nil
case 3:
for {
var innerWire uint64
var start int = iNdEx
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowProtosize
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
innerWire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
innerWireType := int(innerWire & 0x7)
if innerWireType == 4 {
break
}
next, err := skipProtosize(data[start:])
if err != nil {
return 0, err
}
iNdEx = start + next
}
return iNdEx, nil
case 4:
return iNdEx, nil
case 5:
iNdEx += 4
return iNdEx, nil
default:
return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
}
}
panic("unreachable")
}
var (
ErrInvalidLengthProtosize = fmt.Errorf("proto: negative length found during unmarshaling")
ErrIntOverflowProtosize = fmt.Errorf("proto: integer overflow")
)
var fileDescriptorProtosize = []byte{
// 177 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0x2f, 0x28, 0xca, 0x2f,
0xc9, 0x2f, 0xce, 0xac, 0x4a, 0xd5, 0x03, 0xb3, 0x84, 0x38, 0xe1, 0x02, 0x52, 0xba, 0xe9, 0x99,
0x25, 0x19, 0xa5, 0x49, 0x7a, 0xc9, 0xf9, 0xb9, 0xfa, 0xe9, 0xf9, 0xe9, 0xf9, 0xfa, 0x60, 0xa9,
0xa4, 0xd2, 0x34, 0x30, 0x0f, 0xcc, 0x01, 0xb3, 0x20, 0x3a, 0x95, 0xf2, 0xb8, 0xb8, 0x83, 0x81,
0xda, 0x7c, 0x53, 0x8b, 0x8b, 0x13, 0xd3, 0x53, 0x85, 0x84, 0xb8, 0x58, 0x40, 0xa6, 0x48, 0x30,
0x2a, 0x30, 0x6a, 0x30, 0x07, 0x81, 0xd9, 0x42, 0xb2, 0x5c, 0x5c, 0x60, 0xb5, 0xf1, 0x60, 0x19,
0x26, 0xb0, 0x0c, 0xc4, 0x42, 0x90, 0x4e, 0x21, 0x11, 0x2e, 0x56, 0xd7, 0xc2, 0xd2, 0xc4, 0x1c,
0x09, 0x66, 0xa0, 0x0c, 0x47, 0x10, 0x6b, 0x2a, 0x88, 0x23, 0x24, 0xc6, 0xc5, 0x16, 0x5c, 0x52,
0x94, 0x99, 0x97, 0x2e, 0xc1, 0x02, 0x14, 0xe6, 0x0c, 0x62, 0x2b, 0x06, 0xf3, 0x9c, 0x24, 0x7e,
0x3c, 0x94, 0x63, 0x5c, 0xf1, 0x48, 0x8e, 0x71, 0x07, 0x10, 0x9f, 0x00, 0xe2, 0x0b, 0x40, 0xbc,
0xe0, 0xb1, 0x1c, 0x23, 0x20, 0x00, 0x00, 0xff, 0xff, 0xdf, 0x5d, 0x65, 0x12, 0xd5, 0x00, 0x00,
0x00,
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,563 @@
// Code generated by protoc-gen-gogo.
// source: sizeunderscore.proto
// DO NOT EDIT!
/*
Package sizeunderscore is a generated protocol buffer package.
It is generated from these files:
sizeunderscore.proto
It has these top-level messages:
SizeMessage
*/
package sizeunderscore
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import bytes "bytes"
import io "io"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type SizeMessage struct {
Size_ *int64 `protobuf:"varint,1,opt,name=size" json:"size,omitempty"`
Equal_ *bool `protobuf:"varint,2,opt,name=Equal,json=equal" json:"Equal,omitempty"`
String_ *string `protobuf:"bytes,3,opt,name=String,json=string" json:"String,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *SizeMessage) Reset() { *m = SizeMessage{} }
func (m *SizeMessage) String() string { return proto.CompactTextString(m) }
func (*SizeMessage) ProtoMessage() {}
func (*SizeMessage) Descriptor() ([]byte, []int) { return fileDescriptorSizeunderscore, []int{0} }
func (m *SizeMessage) GetSize_() int64 {
if m != nil && m.Size_ != nil {
return *m.Size_
}
return 0
}
func (m *SizeMessage) GetEqual_() bool {
if m != nil && m.Equal_ != nil {
return *m.Equal_
}
return false
}
func (m *SizeMessage) GetString_() string {
if m != nil && m.String_ != nil {
return *m.String_
}
return ""
}
func init() {
proto.RegisterType((*SizeMessage)(nil), "sizeunderscore.SizeMessage")
}
func (this *SizeMessage) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*SizeMessage)
if !ok {
that2, ok := that.(SizeMessage)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Size_ != nil && that1.Size_ != nil {
if *this.Size_ != *that1.Size_ {
return false
}
} else if this.Size_ != nil {
return false
} else if that1.Size_ != nil {
return false
}
if this.Equal_ != nil && that1.Equal_ != nil {
if *this.Equal_ != *that1.Equal_ {
return false
}
} else if this.Equal_ != nil {
return false
} else if that1.Equal_ != nil {
return false
}
if this.String_ != nil && that1.String_ != nil {
if *this.String_ != *that1.String_ {
return false
}
} else if this.String_ != nil {
return false
} else if that1.String_ != nil {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (m *SizeMessage) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *SizeMessage) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if m.Size_ != nil {
data[i] = 0x8
i++
i = encodeVarintSizeunderscore(data, i, uint64(*m.Size_))
}
if m.Equal_ != nil {
data[i] = 0x10
i++
if *m.Equal_ {
data[i] = 1
} else {
data[i] = 0
}
i++
}
if m.String_ != nil {
data[i] = 0x1a
i++
i = encodeVarintSizeunderscore(data, i, uint64(len(*m.String_)))
i += copy(data[i:], *m.String_)
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func encodeFixed64Sizeunderscore(data []byte, offset int, v uint64) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
data[offset+4] = uint8(v >> 32)
data[offset+5] = uint8(v >> 40)
data[offset+6] = uint8(v >> 48)
data[offset+7] = uint8(v >> 56)
return offset + 8
}
func encodeFixed32Sizeunderscore(data []byte, offset int, v uint32) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
return offset + 4
}
func encodeVarintSizeunderscore(data []byte, offset int, v uint64) int {
for v >= 1<<7 {
data[offset] = uint8(v&0x7f | 0x80)
v >>= 7
offset++
}
data[offset] = uint8(v)
return offset + 1
}
func NewPopulatedSizeMessage(r randySizeunderscore, easy bool) *SizeMessage {
this := &SizeMessage{}
if r.Intn(10) != 0 {
v1 := int64(r.Int63())
if r.Intn(2) == 0 {
v1 *= -1
}
this.Size_ = &v1
}
if r.Intn(10) != 0 {
v2 := bool(bool(r.Intn(2) == 0))
this.Equal_ = &v2
}
if r.Intn(10) != 0 {
v3 := randStringSizeunderscore(r)
this.String_ = &v3
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedSizeunderscore(r, 4)
}
return this
}
type randySizeunderscore interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneSizeunderscore(r randySizeunderscore) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringSizeunderscore(r randySizeunderscore) string {
v4 := r.Intn(100)
tmps := make([]rune, v4)
for i := 0; i < v4; i++ {
tmps[i] = randUTF8RuneSizeunderscore(r)
}
return string(tmps)
}
func randUnrecognizedSizeunderscore(r randySizeunderscore, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldSizeunderscore(data, r, fieldNumber, wire)
}
return data
}
func randFieldSizeunderscore(data []byte, r randySizeunderscore, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateSizeunderscore(data, uint64(key))
v5 := r.Int63()
if r.Intn(2) == 0 {
v5 *= -1
}
data = encodeVarintPopulateSizeunderscore(data, uint64(v5))
case 1:
data = encodeVarintPopulateSizeunderscore(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateSizeunderscore(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateSizeunderscore(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateSizeunderscore(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateSizeunderscore(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
func (m *SizeMessage) Size() (n int) {
var l int
_ = l
if m.Size_ != nil {
n += 1 + sovSizeunderscore(uint64(*m.Size_))
}
if m.Equal_ != nil {
n += 2
}
if m.String_ != nil {
l = len(*m.String_)
n += 1 + l + sovSizeunderscore(uint64(l))
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func sovSizeunderscore(x uint64) (n int) {
for {
n++
x >>= 7
if x == 0 {
break
}
}
return n
}
func sozSizeunderscore(x uint64) (n int) {
return sovSizeunderscore(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (m *SizeMessage) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowSizeunderscore
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: SizeMessage: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: SizeMessage: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Size_", wireType)
}
var v int64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowSizeunderscore
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
v |= (int64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
m.Size_ = &v
case 2:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Equal_", wireType)
}
var v int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowSizeunderscore
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
v |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
b := bool(v != 0)
m.Equal_ = &b
case 3:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field String_", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowSizeunderscore
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLen |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthSizeunderscore
}
postIndex := iNdEx + intStringLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
s := string(data[iNdEx:postIndex])
m.String_ = &s
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipSizeunderscore(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthSizeunderscore
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
m.XXX_unrecognized = append(m.XXX_unrecognized, data[iNdEx:iNdEx+skippy]...)
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipSizeunderscore(data []byte) (n int, err error) {
l := len(data)
iNdEx := 0
for iNdEx < l {
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowSizeunderscore
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
wireType := int(wire & 0x7)
switch wireType {
case 0:
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowSizeunderscore
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
iNdEx++
if data[iNdEx-1] < 0x80 {
break
}
}
return iNdEx, nil
case 1:
iNdEx += 8
return iNdEx, nil
case 2:
var length int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowSizeunderscore
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
length |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
iNdEx += length
if length < 0 {
return 0, ErrInvalidLengthSizeunderscore
}
return iNdEx, nil
case 3:
for {
var innerWire uint64
var start int = iNdEx
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowSizeunderscore
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
innerWire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
innerWireType := int(innerWire & 0x7)
if innerWireType == 4 {
break
}
next, err := skipSizeunderscore(data[start:])
if err != nil {
return 0, err
}
iNdEx = start + next
}
return iNdEx, nil
case 4:
return iNdEx, nil
case 5:
iNdEx += 4
return iNdEx, nil
default:
return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
}
}
panic("unreachable")
}
var (
ErrInvalidLengthSizeunderscore = fmt.Errorf("proto: negative length found during unmarshaling")
ErrIntOverflowSizeunderscore = fmt.Errorf("proto: integer overflow")
)
var fileDescriptorSizeunderscore = []byte{
// 169 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0x12, 0x29, 0xce, 0xac, 0x4a,
0x2d, 0xcd, 0x4b, 0x49, 0x2d, 0x2a, 0x4e, 0xce, 0x2f, 0x4a, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9,
0x17, 0xe2, 0x43, 0x15, 0x95, 0xd2, 0x4d, 0xcf, 0x2c, 0xc9, 0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf,
0xd5, 0x4f, 0xcf, 0x4f, 0xcf, 0xd7, 0x07, 0x2b, 0x4b, 0x2a, 0x4d, 0x03, 0xf3, 0xc0, 0x1c, 0x30,
0x0b, 0xa2, 0x5d, 0xc9, 0x9f, 0x8b, 0x3b, 0x18, 0x68, 0x80, 0x6f, 0x6a, 0x71, 0x71, 0x62, 0x7a,
0xaa, 0x90, 0x10, 0x17, 0x0b, 0xc8, 0x3c, 0x09, 0x46, 0x05, 0x46, 0x0d, 0xe6, 0x20, 0x30, 0x5b,
0x48, 0x84, 0x8b, 0xd5, 0xb5, 0xb0, 0x34, 0x31, 0x47, 0x82, 0x09, 0x28, 0xc8, 0x11, 0xc4, 0x9a,
0x0a, 0xe2, 0x08, 0x89, 0x71, 0xb1, 0x05, 0x97, 0x14, 0x65, 0xe6, 0xa5, 0x4b, 0x30, 0x03, 0x85,
0x39, 0x83, 0xd8, 0x8a, 0xc1, 0x3c, 0x27, 0x89, 0x1f, 0x0f, 0xe5, 0x18, 0x57, 0x3c, 0x92, 0x63,
0xdc, 0x01, 0xc4, 0x27, 0x80, 0xf8, 0x02, 0x10, 0x3f, 0x00, 0x62, 0x40, 0x00, 0x00, 0x00, 0xff,
0xff, 0x63, 0xb6, 0xaa, 0x05, 0xc0, 0x00, 0x00, 0x00,
}
+1
View File
@@ -0,0 +1 @@
package tags
+185
View File
@@ -0,0 +1,185 @@
// Code generated by protoc-gen-gogo.
// source: tags.proto
// DO NOT EDIT!
/*
Package tags is a generated protocol buffer package.
It is generated from these files:
tags.proto
It has these top-level messages:
Outside
Inside
*/
package tags
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type Outside struct {
*Inside `protobuf:"bytes,1,opt,name=Inside,json=inside,embedded=Inside" json:""`
Field2 *string `protobuf:"bytes,2,opt,name=Field2,json=field2" json:"MyField2" xml:",comment"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Outside) Reset() { *m = Outside{} }
func (m *Outside) String() string { return proto.CompactTextString(m) }
func (*Outside) ProtoMessage() {}
func (*Outside) Descriptor() ([]byte, []int) { return fileDescriptorTags, []int{0} }
func (m *Outside) GetField2() string {
if m != nil && m.Field2 != nil {
return *m.Field2
}
return ""
}
type Inside struct {
Field1 *string `protobuf:"bytes,1,opt,name=Field1,json=field1" json:"MyField1" xml:",chardata"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Inside) Reset() { *m = Inside{} }
func (m *Inside) String() string { return proto.CompactTextString(m) }
func (*Inside) ProtoMessage() {}
func (*Inside) Descriptor() ([]byte, []int) { return fileDescriptorTags, []int{1} }
func (m *Inside) GetField1() string {
if m != nil && m.Field1 != nil {
return *m.Field1
}
return ""
}
func init() {
proto.RegisterType((*Outside)(nil), "tags.Outside")
proto.RegisterType((*Inside)(nil), "tags.Inside")
}
func NewPopulatedOutside(r randyTags, easy bool) *Outside {
this := &Outside{}
if r.Intn(10) != 0 {
this.Inside = NewPopulatedInside(r, easy)
}
if r.Intn(10) != 0 {
v1 := randStringTags(r)
this.Field2 = &v1
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedTags(r, 3)
}
return this
}
func NewPopulatedInside(r randyTags, easy bool) *Inside {
this := &Inside{}
if r.Intn(10) != 0 {
v2 := randStringTags(r)
this.Field1 = &v2
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedTags(r, 2)
}
return this
}
type randyTags interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneTags(r randyTags) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringTags(r randyTags) string {
v3 := r.Intn(100)
tmps := make([]rune, v3)
for i := 0; i < v3; i++ {
tmps[i] = randUTF8RuneTags(r)
}
return string(tmps)
}
func randUnrecognizedTags(r randyTags, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldTags(data, r, fieldNumber, wire)
}
return data
}
func randFieldTags(data []byte, r randyTags, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateTags(data, uint64(key))
v4 := r.Int63()
if r.Intn(2) == 0 {
v4 *= -1
}
data = encodeVarintPopulateTags(data, uint64(v4))
case 1:
data = encodeVarintPopulateTags(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateTags(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateTags(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateTags(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateTags(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
var fileDescriptorTags = []byte{
// 202 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0x2a, 0x49, 0x4c, 0x2f,
0xd6, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x62, 0x01, 0xb1, 0xa5, 0x74, 0xd3, 0x33, 0x4b, 0x32,
0x4a, 0x93, 0xf4, 0x92, 0xf3, 0x73, 0xf5, 0xd3, 0xf3, 0xd3, 0xf3, 0xf5, 0xc1, 0x92, 0x49, 0xa5,
0x69, 0x60, 0x1e, 0x98, 0x03, 0x66, 0x41, 0x34, 0x29, 0x15, 0x72, 0xb1, 0xfb, 0x97, 0x96, 0x14,
0x67, 0xa6, 0xa4, 0x0a, 0xe9, 0x71, 0xb1, 0x79, 0xe6, 0x81, 0x58, 0x12, 0x8c, 0x0a, 0x8c, 0x1a,
0xdc, 0x46, 0x3c, 0x7a, 0x60, 0xc3, 0x21, 0x62, 0x4e, 0x1c, 0x17, 0xee, 0xc9, 0x33, 0xbe, 0xba,
0x27, 0xcf, 0x10, 0xc4, 0x96, 0x09, 0x16, 0x11, 0x32, 0xe3, 0x62, 0x73, 0xcb, 0x4c, 0xcd, 0x49,
0x31, 0x92, 0x60, 0x02, 0xaa, 0xe7, 0x74, 0x92, 0x03, 0xca, 0x72, 0xf8, 0x56, 0x42, 0xc4, 0x3e,
0xdd, 0x93, 0xe7, 0xab, 0xc8, 0xcd, 0xb1, 0x52, 0xd2, 0x01, 0x3a, 0x24, 0x37, 0x35, 0xaf, 0x44,
0x29, 0x88, 0x2d, 0x0d, 0x2c, 0xa3, 0xe4, 0x08, 0xb3, 0x47, 0xc8, 0x1c, 0x6a, 0x82, 0x21, 0xd8,
0x46, 0x4e, 0x27, 0x79, 0x24, 0x13, 0x0c, 0x81, 0x26, 0xf0, 0x43, 0x4d, 0xc8, 0x48, 0x2c, 0x4a,
0x49, 0x2c, 0x49, 0x84, 0x19, 0x61, 0xe8, 0xc4, 0xf2, 0xe3, 0xa1, 0x1c, 0x23, 0x20, 0x00, 0x00,
0xff, 0xff, 0xd1, 0x94, 0x7c, 0x45, 0xfd, 0x00, 0x00, 0x00,
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More