627 lines
22 KiB
Protocol Buffer
627 lines
22 KiB
Protocol Buffer
|
// Protocol Buffers for Go with Gadgets
|
||
|
//
|
||
|
// Copyright (c) 2013, The GoGo Authors. 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.
|
||
|
|
||
|
syntax = "proto2";
|
||
|
package test;
|
||
|
|
||
|
import "github.com/gogo/protobuf/gogoproto/gogo.proto";
|
||
|
|
||
|
option (gogoproto.goproto_stringer_all) = false;
|
||
|
option (gogoproto.goproto_enum_prefix_all) = false;
|
||
|
option (gogoproto.goproto_getters_all) = false;
|
||
|
|
||
|
option (gogoproto.equal_all) = true;
|
||
|
option (gogoproto.verbose_equal_all) = true;
|
||
|
option (gogoproto.stringer_all) = true;
|
||
|
option (gogoproto.gostring_all) = true;
|
||
|
option (gogoproto.face_all) = true;
|
||
|
option (gogoproto.description_all) = true;
|
||
|
|
||
|
option (gogoproto.testgen_all) = true;
|
||
|
option (gogoproto.populate_all) = true;
|
||
|
option (gogoproto.benchgen_all) = true;
|
||
|
option (gogoproto.unmarshaler_all) = true;
|
||
|
option (gogoproto.marshaler_all) = false;
|
||
|
option (gogoproto.sizer_all) = true;
|
||
|
option (gogoproto.protosizer_all) = false;
|
||
|
|
||
|
option (gogoproto.goproto_enum_stringer_all) = false;
|
||
|
option (gogoproto.enum_stringer_all) = true;
|
||
|
|
||
|
option (gogoproto.unsafe_marshaler_all) = false;
|
||
|
option (gogoproto.unsafe_unmarshaler_all) = false;
|
||
|
|
||
|
option (gogoproto.compare_all) = true;
|
||
|
|
||
|
message NidOptNative {
|
||
|
optional double Field1 = 1 [(gogoproto.nullable) = false];
|
||
|
optional float Field2 = 2 [(gogoproto.nullable) = false];
|
||
|
optional int32 Field3 = 3 [(gogoproto.nullable) = false];
|
||
|
optional int64 Field4 = 4 [(gogoproto.nullable) = false];
|
||
|
optional uint32 Field5 = 5 [(gogoproto.nullable) = false];
|
||
|
optional uint64 Field6 = 6 [(gogoproto.nullable) = false];
|
||
|
optional sint32 Field7 = 7 [(gogoproto.nullable) = false];
|
||
|
optional sint64 Field8 = 8 [(gogoproto.nullable) = false];
|
||
|
optional fixed32 Field9 = 9 [(gogoproto.nullable) = false];
|
||
|
optional sfixed32 Field10 = 10 [(gogoproto.nullable) = false];
|
||
|
optional fixed64 Field11 = 11 [(gogoproto.nullable) = false];
|
||
|
optional sfixed64 Field12 = 12 [(gogoproto.nullable) = false];
|
||
|
optional bool Field13 = 13 [(gogoproto.nullable) = false];
|
||
|
optional string Field14 = 14 [(gogoproto.nullable) = false];
|
||
|
optional bytes Field15 = 15 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message NinOptNative {
|
||
|
optional double Field1 = 1;
|
||
|
optional float Field2 = 2;
|
||
|
optional int32 Field3 = 3;
|
||
|
optional int64 Field4 = 4;
|
||
|
optional uint32 Field5 = 5;
|
||
|
optional uint64 Field6 = 6;
|
||
|
optional sint32 Field7 = 7;
|
||
|
optional sint64 Field8 = 8;
|
||
|
optional fixed32 Field9 = 9;
|
||
|
optional sfixed32 Field10 = 10;
|
||
|
optional fixed64 Field11 = 11;
|
||
|
optional sfixed64 Field12 = 12;
|
||
|
optional bool Field13 = 13;
|
||
|
optional string Field14 = 14;
|
||
|
optional bytes Field15 = 15;
|
||
|
}
|
||
|
|
||
|
message NidRepNative {
|
||
|
repeated double Field1 = 1 [(gogoproto.nullable) = false];
|
||
|
repeated float Field2 = 2 [(gogoproto.nullable) = false];
|
||
|
repeated int32 Field3 = 3 [(gogoproto.nullable) = false];
|
||
|
repeated int64 Field4 = 4 [(gogoproto.nullable) = false];
|
||
|
repeated uint32 Field5 = 5 [(gogoproto.nullable) = false];
|
||
|
repeated uint64 Field6 = 6 [(gogoproto.nullable) = false];
|
||
|
repeated sint32 Field7 = 7 [(gogoproto.nullable) = false];
|
||
|
repeated sint64 Field8 = 8 [(gogoproto.nullable) = false];
|
||
|
repeated fixed32 Field9 = 9 [(gogoproto.nullable) = false];
|
||
|
repeated sfixed32 Field10 = 10 [(gogoproto.nullable) = false];
|
||
|
repeated fixed64 Field11 = 11 [(gogoproto.nullable) = false];
|
||
|
repeated sfixed64 Field12 = 12 [(gogoproto.nullable) = false];
|
||
|
repeated bool Field13 = 13 [(gogoproto.nullable) = false];
|
||
|
repeated string Field14 = 14 [(gogoproto.nullable) = false];
|
||
|
repeated bytes Field15 = 15 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message NinRepNative {
|
||
|
repeated double Field1 = 1;
|
||
|
repeated float Field2 = 2;
|
||
|
repeated int32 Field3 = 3;
|
||
|
repeated int64 Field4 = 4;
|
||
|
repeated uint32 Field5 = 5;
|
||
|
repeated uint64 Field6 = 6;
|
||
|
repeated sint32 Field7 = 7;
|
||
|
repeated sint64 Field8 = 8;
|
||
|
repeated fixed32 Field9 = 9;
|
||
|
repeated sfixed32 Field10 = 10;
|
||
|
repeated fixed64 Field11 = 11;
|
||
|
repeated sfixed64 Field12 = 12;
|
||
|
repeated bool Field13 = 13;
|
||
|
repeated string Field14 = 14;
|
||
|
repeated bytes Field15 = 15;
|
||
|
}
|
||
|
|
||
|
message NidRepPackedNative {
|
||
|
repeated double Field1 = 1 [(gogoproto.nullable) = false, packed = true];
|
||
|
repeated float Field2 = 2 [(gogoproto.nullable) = false, packed = true];
|
||
|
repeated int32 Field3 = 3 [(gogoproto.nullable) = false, packed = true];
|
||
|
repeated int64 Field4 = 4 [(gogoproto.nullable) = false, packed = true];
|
||
|
repeated uint32 Field5 = 5 [(gogoproto.nullable) = false, packed = true];
|
||
|
repeated uint64 Field6 = 6 [(gogoproto.nullable) = false, packed = true];
|
||
|
repeated sint32 Field7 = 7 [(gogoproto.nullable) = false, packed = true];
|
||
|
repeated sint64 Field8 = 8 [(gogoproto.nullable) = false, packed = true];
|
||
|
repeated fixed32 Field9 = 9 [(gogoproto.nullable) = false, packed = true];
|
||
|
repeated sfixed32 Field10 = 10 [(gogoproto.nullable) = false, packed = true];
|
||
|
repeated fixed64 Field11 = 11 [(gogoproto.nullable) = false, packed = true];
|
||
|
repeated sfixed64 Field12 = 12 [(gogoproto.nullable) = false, packed = true];
|
||
|
repeated bool Field13 = 13 [(gogoproto.nullable) = false, packed = true];
|
||
|
}
|
||
|
|
||
|
message NinRepPackedNative {
|
||
|
repeated double Field1 = 1 [packed = true];
|
||
|
repeated float Field2 = 2 [packed = true];
|
||
|
repeated int32 Field3 = 3 [packed = true];
|
||
|
repeated int64 Field4 = 4 [packed = true];
|
||
|
repeated uint32 Field5 = 5 [packed = true];
|
||
|
repeated uint64 Field6 = 6 [packed = true];
|
||
|
repeated sint32 Field7 = 7 [packed = true];
|
||
|
repeated sint64 Field8 = 8 [packed = true];
|
||
|
repeated fixed32 Field9 = 9 [packed = true];
|
||
|
repeated sfixed32 Field10 = 10 [packed = true];
|
||
|
repeated fixed64 Field11 = 11 [packed = true];
|
||
|
repeated sfixed64 Field12 = 12 [packed = true];
|
||
|
repeated bool Field13 = 13 [packed = true];
|
||
|
}
|
||
|
|
||
|
message NidOptStruct {
|
||
|
optional double Field1 = 1 [(gogoproto.nullable) = false];
|
||
|
optional float Field2 = 2 [(gogoproto.nullable) = false];
|
||
|
optional NidOptNative Field3 = 3 [(gogoproto.nullable) = false];
|
||
|
optional NinOptNative Field4 = 4 [(gogoproto.nullable) = false];
|
||
|
optional uint64 Field6 = 6 [(gogoproto.nullable) = false];
|
||
|
optional sint32 Field7 = 7 [(gogoproto.nullable) = false];
|
||
|
optional NidOptNative Field8 = 8 [(gogoproto.nullable) = false];
|
||
|
optional bool Field13 = 13 [(gogoproto.nullable) = false];
|
||
|
optional string Field14 = 14 [(gogoproto.nullable) = false];
|
||
|
optional bytes Field15 = 15 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message NinOptStruct {
|
||
|
optional double Field1 = 1;
|
||
|
optional float Field2 = 2;
|
||
|
optional NidOptNative Field3 = 3;
|
||
|
optional NinOptNative Field4 = 4;
|
||
|
optional uint64 Field6 = 6;
|
||
|
optional sint32 Field7 = 7;
|
||
|
optional NidOptNative Field8 = 8;
|
||
|
optional bool Field13 = 13;
|
||
|
optional string Field14 = 14;
|
||
|
optional bytes Field15 = 15;
|
||
|
}
|
||
|
|
||
|
message NidRepStruct {
|
||
|
repeated double Field1 = 1 [(gogoproto.nullable) = false];
|
||
|
repeated float Field2 = 2 [(gogoproto.nullable) = false];
|
||
|
repeated NidOptNative Field3 = 3 [(gogoproto.nullable) = false];
|
||
|
repeated NinOptNative Field4 = 4 [(gogoproto.nullable) = false];
|
||
|
repeated uint64 Field6 = 6 [(gogoproto.nullable) = false];
|
||
|
repeated sint32 Field7 = 7 [(gogoproto.nullable) = false];
|
||
|
repeated NidOptNative Field8 = 8 [(gogoproto.nullable) = false];
|
||
|
repeated bool Field13 = 13 [(gogoproto.nullable) = false];
|
||
|
repeated string Field14 = 14 [(gogoproto.nullable) = false];
|
||
|
repeated bytes Field15 = 15 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message NinRepStruct {
|
||
|
repeated double Field1 = 1;
|
||
|
repeated float Field2 = 2;
|
||
|
repeated NidOptNative Field3 = 3;
|
||
|
repeated NinOptNative Field4 = 4;
|
||
|
repeated uint64 Field6 = 6;
|
||
|
repeated sint32 Field7 = 7;
|
||
|
repeated NidOptNative Field8 = 8;
|
||
|
repeated bool Field13 = 13;
|
||
|
repeated string Field14 = 14;
|
||
|
repeated bytes Field15 = 15;
|
||
|
}
|
||
|
|
||
|
message NidEmbeddedStruct {
|
||
|
optional NidOptNative Field1 = 1 [(gogoproto.embed) = true];
|
||
|
optional NidOptNative Field200 = 200 [(gogoproto.nullable) = false];
|
||
|
optional bool Field210 = 210 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message NinEmbeddedStruct {
|
||
|
optional NidOptNative Field1 = 1 [(gogoproto.embed) = true];
|
||
|
optional NidOptNative Field200 = 200;
|
||
|
optional bool Field210 = 210;
|
||
|
}
|
||
|
|
||
|
message NidNestedStruct {
|
||
|
optional NidOptStruct Field1 = 1 [(gogoproto.nullable) = false];
|
||
|
repeated NidRepStruct Field2 = 2 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message NinNestedStruct {
|
||
|
optional NinOptStruct Field1 = 1;
|
||
|
repeated NinRepStruct Field2 = 2;
|
||
|
}
|
||
|
|
||
|
message NidOptCustom {
|
||
|
optional bytes Id = 1 [(gogoproto.customtype) = "Uuid", (gogoproto.nullable) = false];
|
||
|
optional bytes Value = 2 [(gogoproto.customtype) = "github.com/gogo/protobuf/test/custom.Uint128", (gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message CustomDash {
|
||
|
optional bytes Value = 1 [(gogoproto.customtype) = "github.com/gogo/protobuf/test/custom-dash-type.Bytes"];
|
||
|
}
|
||
|
|
||
|
message NinOptCustom {
|
||
|
optional bytes Id = 1 [(gogoproto.customtype) = "Uuid"];
|
||
|
optional bytes Value = 2 [(gogoproto.customtype) = "github.com/gogo/protobuf/test/custom.Uint128"];
|
||
|
}
|
||
|
|
||
|
message NidRepCustom {
|
||
|
repeated bytes Id = 1 [(gogoproto.customtype) = "Uuid", (gogoproto.nullable) = false];
|
||
|
repeated bytes Value = 2 [(gogoproto.customtype) = "github.com/gogo/protobuf/test/custom.Uint128", (gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message NinRepCustom {
|
||
|
repeated bytes Id = 1 [(gogoproto.customtype) = "Uuid"];
|
||
|
repeated bytes Value = 2 [(gogoproto.customtype) = "github.com/gogo/protobuf/test/custom.Uint128"];
|
||
|
}
|
||
|
|
||
|
message NinOptNativeUnion {
|
||
|
option (gogoproto.onlyone) = true;
|
||
|
optional double Field1 = 1;
|
||
|
optional float Field2 = 2;
|
||
|
optional int32 Field3 = 3;
|
||
|
optional int64 Field4 = 4;
|
||
|
optional uint32 Field5 = 5;
|
||
|
optional uint64 Field6 = 6;
|
||
|
optional bool Field13 = 13;
|
||
|
optional string Field14 = 14;
|
||
|
optional bytes Field15 = 15;
|
||
|
}
|
||
|
|
||
|
message NinOptStructUnion {
|
||
|
option (gogoproto.onlyone) = true;
|
||
|
optional double Field1 = 1;
|
||
|
optional float Field2 = 2;
|
||
|
optional NidOptNative Field3 = 3;
|
||
|
optional NinOptNative Field4 = 4;
|
||
|
optional uint64 Field6 = 6;
|
||
|
optional sint32 Field7 = 7;
|
||
|
optional bool Field13 = 13;
|
||
|
optional string Field14 = 14;
|
||
|
optional bytes Field15 = 15;
|
||
|
}
|
||
|
|
||
|
message NinEmbeddedStructUnion {
|
||
|
option (gogoproto.onlyone) = true;
|
||
|
optional NidOptNative Field1 = 1 [(gogoproto.embed) = true];
|
||
|
optional NinOptNative Field200 = 200;
|
||
|
optional bool Field210 = 210;
|
||
|
}
|
||
|
|
||
|
message NinNestedStructUnion {
|
||
|
option (gogoproto.onlyone) = true;
|
||
|
optional NinOptNativeUnion Field1 = 1;
|
||
|
optional NinOptStructUnion Field2 = 2;
|
||
|
optional NinEmbeddedStructUnion Field3 = 3;
|
||
|
}
|
||
|
|
||
|
message Tree {
|
||
|
option (gogoproto.onlyone) = true;
|
||
|
optional OrBranch Or = 1;
|
||
|
optional AndBranch And = 2;
|
||
|
optional Leaf Leaf = 3;
|
||
|
}
|
||
|
|
||
|
message OrBranch {
|
||
|
optional Tree Left = 1 [(gogoproto.nullable) = false];
|
||
|
optional Tree Right = 2 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message AndBranch {
|
||
|
optional Tree Left = 1 [(gogoproto.nullable) = false];
|
||
|
optional Tree Right = 2 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message Leaf {
|
||
|
optional int64 Value = 1 [(gogoproto.nullable) = false];
|
||
|
optional string StrValue = 2 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message DeepTree {
|
||
|
option (gogoproto.onlyone) = true;
|
||
|
optional ADeepBranch Down = 1;
|
||
|
optional AndDeepBranch And = 2;
|
||
|
optional DeepLeaf Leaf = 3;
|
||
|
}
|
||
|
|
||
|
message ADeepBranch {
|
||
|
optional DeepTree Down = 2 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message AndDeepBranch {
|
||
|
optional DeepTree Left = 1 [(gogoproto.nullable) = false];
|
||
|
optional DeepTree Right = 2 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message DeepLeaf {
|
||
|
optional Tree Tree = 1 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message Nil {
|
||
|
|
||
|
}
|
||
|
|
||
|
enum TheTestEnum {
|
||
|
A = 0;
|
||
|
B = 1;
|
||
|
C = 2;
|
||
|
}
|
||
|
|
||
|
enum AnotherTestEnum {
|
||
|
option (gogoproto.goproto_enum_prefix) = false;
|
||
|
D = 10;
|
||
|
E = 11;
|
||
|
}
|
||
|
|
||
|
// YetAnotherTestEnum is used to test cross-package import of custom name
|
||
|
// fields and default resolution.
|
||
|
enum YetAnotherTestEnum {
|
||
|
option (gogoproto.goproto_enum_prefix) = false;
|
||
|
AA = 0;
|
||
|
BB = 1 [(gogoproto.enumvalue_customname) = "BetterYetBB"];
|
||
|
}
|
||
|
|
||
|
// YetAnotherTestEnum is used to test cross-package import of custom name
|
||
|
// fields and default resolution.
|
||
|
enum YetYetAnotherTestEnum {
|
||
|
option (gogoproto.goproto_enum_prefix) = true;
|
||
|
CC = 0;
|
||
|
DD = 1 [(gogoproto.enumvalue_customname) = "BetterYetDD"];
|
||
|
}
|
||
|
|
||
|
message NidOptEnum {
|
||
|
optional TheTestEnum Field1 = 1 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message NinOptEnum {
|
||
|
optional TheTestEnum Field1 = 1;
|
||
|
optional YetAnotherTestEnum Field2 = 2;
|
||
|
optional YetYetAnotherTestEnum Field3 = 3;
|
||
|
}
|
||
|
|
||
|
message NidRepEnum {
|
||
|
repeated TheTestEnum Field1 = 1 [(gogoproto.nullable) = false];
|
||
|
repeated YetAnotherTestEnum Field2 = 2 [(gogoproto.nullable) = false];
|
||
|
repeated YetYetAnotherTestEnum Field3 = 3 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message NinRepEnum {
|
||
|
repeated TheTestEnum Field1 = 1;
|
||
|
repeated YetAnotherTestEnum Field2 = 2;
|
||
|
repeated YetYetAnotherTestEnum Field3 = 3;
|
||
|
}
|
||
|
|
||
|
message NinOptEnumDefault {
|
||
|
option (gogoproto.goproto_getters) = true;
|
||
|
option (gogoproto.face) = false;
|
||
|
optional TheTestEnum Field1 = 1 [default=C];
|
||
|
optional YetAnotherTestEnum Field2 = 2 [default=BB];
|
||
|
optional YetYetAnotherTestEnum Field3 = 3 [default=CC];
|
||
|
}
|
||
|
|
||
|
message AnotherNinOptEnum {
|
||
|
optional AnotherTestEnum Field1 = 1;
|
||
|
optional YetAnotherTestEnum Field2 = 2;
|
||
|
optional YetYetAnotherTestEnum Field3 = 3;
|
||
|
}
|
||
|
|
||
|
message AnotherNinOptEnumDefault {
|
||
|
option (gogoproto.goproto_getters) = true;
|
||
|
option (gogoproto.face) = false;
|
||
|
optional AnotherTestEnum Field1 = 1 [default=E];
|
||
|
optional YetAnotherTestEnum Field2 = 2 [default=BB];
|
||
|
optional YetYetAnotherTestEnum Field3 = 3 [default=CC];
|
||
|
}
|
||
|
|
||
|
|
||
|
message Timer {
|
||
|
optional sfixed64 Time1 = 1 [(gogoproto.nullable) = false];
|
||
|
optional sfixed64 Time2 = 2 [(gogoproto.nullable) = false];
|
||
|
optional bytes Data = 3 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message MyExtendable {
|
||
|
option (gogoproto.face) = false;
|
||
|
optional int64 Field1 = 1;
|
||
|
extensions 100 to 199;
|
||
|
}
|
||
|
|
||
|
extend MyExtendable {
|
||
|
optional double FieldA = 100;
|
||
|
optional NinOptNative FieldB = 101;
|
||
|
optional NinEmbeddedStruct FieldC = 102;
|
||
|
repeated int64 FieldD = 104;
|
||
|
repeated NinOptNative FieldE = 105;
|
||
|
}
|
||
|
|
||
|
message OtherExtenable {
|
||
|
option (gogoproto.face) = false;
|
||
|
optional int64 Field2 = 2;
|
||
|
extensions 14 to 16;
|
||
|
optional int64 Field13 = 13;
|
||
|
extensions 10 to 12;
|
||
|
optional MyExtendable M = 1;
|
||
|
}
|
||
|
|
||
|
message NestedDefinition {
|
||
|
optional int64 Field1 = 1;
|
||
|
message NestedMessage {
|
||
|
optional fixed64 NestedField1 = 1;
|
||
|
optional NestedNestedMsg NNM = 2;
|
||
|
message NestedNestedMsg {
|
||
|
optional string NestedNestedField1 = 10;
|
||
|
}
|
||
|
}
|
||
|
enum NestedEnum {
|
||
|
TYPE_NESTED = 1;
|
||
|
}
|
||
|
optional NestedEnum EnumField = 2;
|
||
|
optional NestedMessage.NestedNestedMsg NNM = 3;
|
||
|
optional NestedMessage NM = 4;
|
||
|
}
|
||
|
|
||
|
message NestedScope {
|
||
|
optional NestedDefinition.NestedMessage.NestedNestedMsg A = 1;
|
||
|
optional NestedDefinition.NestedEnum B = 2;
|
||
|
optional NestedDefinition.NestedMessage C = 3;
|
||
|
}
|
||
|
|
||
|
message NinOptNativeDefault {
|
||
|
option (gogoproto.goproto_getters) = true;
|
||
|
option (gogoproto.face) = false;
|
||
|
optional double Field1 = 1 [default = 1234.1234];
|
||
|
optional float Field2 = 2 [default = 1234.1234];
|
||
|
optional int32 Field3 = 3 [default = 1234];
|
||
|
optional int64 Field4 = 4 [default = 1234];
|
||
|
optional uint32 Field5 = 5 [default = 1234];
|
||
|
optional uint64 Field6 = 6 [default = 1234];
|
||
|
optional sint32 Field7 = 7 [default = 1234];
|
||
|
optional sint64 Field8 = 8 [default = 1234];
|
||
|
optional fixed32 Field9 = 9 [default = 1234];
|
||
|
optional sfixed32 Field10 = 10 [default = 1234];
|
||
|
optional fixed64 Field11 = 11 [default = 1234];
|
||
|
optional sfixed64 Field12 = 12 [default = 1234];
|
||
|
optional bool Field13 = 13 [default = true];
|
||
|
optional string Field14 = 14 [default = "1234"];
|
||
|
optional bytes Field15 = 15;
|
||
|
}
|
||
|
|
||
|
message CustomContainer {
|
||
|
optional NidOptCustom CustomStruct = 1 [(gogoproto.nullable) = false];
|
||
|
}
|
||
|
|
||
|
message CustomNameNidOptNative {
|
||
|
optional double Field1 = 1 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldA"];
|
||
|
optional float Field2 = 2 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldB"];
|
||
|
optional int32 Field3 = 3 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldC"];
|
||
|
optional int64 Field4 = 4 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldD"];
|
||
|
optional uint32 Field5 = 5 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldE"];
|
||
|
optional uint64 Field6 = 6 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldF"];
|
||
|
optional sint32 Field7 = 7 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldG"];
|
||
|
optional sint64 Field8 = 8 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldH"];
|
||
|
optional fixed32 Field9 = 9 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldI"];
|
||
|
optional sfixed32 Field10 = 10 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldJ"];
|
||
|
optional fixed64 Field11 = 11 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldK"];
|
||
|
optional sfixed64 Field12 = 12 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldL"];
|
||
|
optional bool Field13 = 13 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldM"];
|
||
|
optional string Field14 = 14 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldN"];
|
||
|
optional bytes Field15 = 15 [(gogoproto.nullable) = false, (gogoproto.customname) = "FieldO"];
|
||
|
}
|
||
|
|
||
|
message CustomNameNinOptNative {
|
||
|
optional double Field1 = 1 [(gogoproto.customname) = "FieldA"];
|
||
|
optional float Field2 = 2 [(gogoproto.customname) = "FieldB"];
|
||
|
optional int32 Field3 = 3 [(gogoproto.customname) = "FieldC"];
|
||
|
optional int64 Field4 = 4 [(gogoproto.customname) = "FieldD"];
|
||
|
optional uint32 Field5 = 5 [(gogoproto.customname) = "FieldE"];
|
||
|
optional uint64 Field6 = 6 [(gogoproto.customname) = "FieldF"];
|
||
|
optional sint32 Field7 = 7 [(gogoproto.customname) = "FieldG"];
|
||
|
optional sint64 Field8 = 8 [(gogoproto.customname) = "FieldH"];
|
||
|
optional fixed32 Field9 = 9 [(gogoproto.customname) = "FieldI"];
|
||
|
optional sfixed32 Field10 = 10 [(gogoproto.customname) = "FieldJ"];
|
||
|
optional fixed64 Field11 = 11 [(gogoproto.customname) = "FieldK"];
|
||
|
optional sfixed64 Field12 = 12 [(gogoproto.customname) = "FielL"];
|
||
|
optional bool Field13 = 13 [(gogoproto.customname) = "FieldM"];
|
||
|
optional string Field14 = 14 [(gogoproto.customname) = "FieldN"];
|
||
|
optional bytes Field15 = 15 [(gogoproto.customname) = "FieldO"];
|
||
|
}
|
||
|
|
||
|
message CustomNameNinRepNative {
|
||
|
repeated double Field1 = 1 [(gogoproto.customname) = "FieldA"];
|
||
|
repeated float Field2 = 2 [(gogoproto.customname) = "FieldB"];
|
||
|
repeated int32 Field3 = 3 [(gogoproto.customname) = "FieldC"];
|
||
|
repeated int64 Field4 = 4 [(gogoproto.customname) = "FieldD"];
|
||
|
repeated uint32 Field5 = 5 [(gogoproto.customname) = "FieldE"];
|
||
|
repeated uint64 Field6 = 6 [(gogoproto.customname) = "FieldF"];
|
||
|
repeated sint32 Field7 = 7 [(gogoproto.customname) = "FieldG"];
|
||
|
repeated sint64 Field8 = 8 [(gogoproto.customname) = "FieldH"];
|
||
|
repeated fixed32 Field9 = 9 [(gogoproto.customname) = "FieldI"];
|
||
|
repeated sfixed32 Field10 = 10 [(gogoproto.customname) = "FieldJ"];
|
||
|
repeated fixed64 Field11 = 11 [(gogoproto.customname) = "FieldK"];
|
||
|
repeated sfixed64 Field12 = 12 [(gogoproto.customname) = "FieldL"];
|
||
|
repeated bool Field13 = 13 [(gogoproto.customname) = "FieldM"];
|
||
|
repeated string Field14 = 14 [(gogoproto.customname) = "FieldN"];
|
||
|
repeated bytes Field15 = 15 [(gogoproto.customname) = "FieldO"];
|
||
|
}
|
||
|
|
||
|
message CustomNameNinStruct {
|
||
|
optional double Field1 = 1 [(gogoproto.customname) = "FieldA"];
|
||
|
optional float Field2 = 2 [(gogoproto.customname) = "FieldB"];
|
||
|
optional NidOptNative Field3 = 3 [(gogoproto.customname) = "FieldC"];
|
||
|
repeated NinOptNative Field4 = 4 [(gogoproto.customname) = "FieldD"];
|
||
|
optional uint64 Field6 = 6 [(gogoproto.customname) = "FieldE"];
|
||
|
optional sint32 Field7 = 7 [(gogoproto.customname) = "FieldF"];
|
||
|
optional NidOptNative Field8 = 8 [(gogoproto.customname) = "FieldG"];
|
||
|
optional bool Field13 = 13 [(gogoproto.customname) = "FieldH"];
|
||
|
optional string Field14 = 14 [(gogoproto.customname) = "FieldI"];
|
||
|
optional bytes Field15 = 15 [(gogoproto.customname) = "FieldJ"];
|
||
|
}
|
||
|
|
||
|
message CustomNameCustomType {
|
||
|
optional bytes Id = 1 [(gogoproto.customname) = "FieldA", (gogoproto.customtype) = "Uuid"];
|
||
|
optional bytes Value = 2 [(gogoproto.customname) = "FieldB", (gogoproto.customtype) = "github.com/gogo/protobuf/test/custom.Uint128"];
|
||
|
repeated bytes Ids = 3 [(gogoproto.customname) = "FieldC", (gogoproto.customtype) = "Uuid"];
|
||
|
repeated bytes Values = 4 [(gogoproto.customname) = "FieldD", (gogoproto.customtype) = "github.com/gogo/protobuf/test/custom.Uint128"];
|
||
|
}
|
||
|
|
||
|
message CustomNameNinEmbeddedStructUnion {
|
||
|
option (gogoproto.onlyone) = true;
|
||
|
optional NidOptNative Field1 = 1 [(gogoproto.embed) = true];
|
||
|
optional NinOptNative Field200 = 200 [(gogoproto.customname) = "FieldA"];
|
||
|
optional bool Field210 = 210 [(gogoproto.customname) = "FieldB"];
|
||
|
}
|
||
|
|
||
|
message CustomNameEnum {
|
||
|
optional TheTestEnum Field1 = 1 [(gogoproto.customname) = "FieldA"];
|
||
|
repeated TheTestEnum Field2 = 2 [(gogoproto.customname) = "FieldB"];
|
||
|
}
|
||
|
|
||
|
message NoExtensionsMap {
|
||
|
option (gogoproto.face) = false;
|
||
|
option (gogoproto.goproto_extensions_map) = false;
|
||
|
optional int64 Field1 = 1;
|
||
|
extensions 100 to 199;
|
||
|
}
|
||
|
|
||
|
extend NoExtensionsMap {
|
||
|
optional double FieldA1 = 100;
|
||
|
optional NinOptNative FieldB1 = 101;
|
||
|
optional NinEmbeddedStruct FieldC1 = 102;
|
||
|
}
|
||
|
|
||
|
message Unrecognized {
|
||
|
option (gogoproto.goproto_unrecognized) = false;
|
||
|
optional string Field1 = 1;
|
||
|
}
|
||
|
|
||
|
message UnrecognizedWithInner {
|
||
|
message Inner {
|
||
|
option (gogoproto.goproto_unrecognized) = false;
|
||
|
optional uint32 Field1 = 1;
|
||
|
}
|
||
|
|
||
|
repeated Inner embedded = 1;
|
||
|
optional string Field2 = 2;
|
||
|
}
|
||
|
|
||
|
message UnrecognizedWithEmbed {
|
||
|
message Embedded {
|
||
|
option (gogoproto.goproto_unrecognized) = false;
|
||
|
optional uint32 Field1 = 1;
|
||
|
}
|
||
|
|
||
|
optional Embedded embedded = 1 [(gogoproto.embed) = true, (gogoproto.nullable) = false];
|
||
|
optional string Field2 = 2;
|
||
|
}
|
||
|
|
||
|
message Node {
|
||
|
optional string Label = 1;
|
||
|
repeated Node Children = 2;
|
||
|
}
|
||
|
|