github.com/whiteCcinn/protobuf-go@v1.0.9/internal/testprotos/legacy/proto2_20160519_a4ab9ec5/test.proto (about)

     1  // Copyright 2018 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  syntax = "proto2";
     6  
     7  package google.golang.org.proto2_20160519;
     8  option go_package = "github.com/whiteCcinn/protobuf-go/internal/testprotos/legacy/proto2_20160519_a4ab9ec5";
     9  
    10  enum SiblingEnum {
    11  	ALPHA   = 0;
    12  	BRAVO   = 10;
    13  	CHARLIE = 200;
    14  }
    15  
    16  message SiblingMessage {
    17  	optional string  f1 = 1;
    18  	required string  f2 = 2;
    19  	repeated string  f3 = 3;
    20  	optional Message f4 = 4;
    21  }
    22  
    23  message Message {
    24  	enum ChildEnum {
    25  		ALPHA   = 0;
    26  		BRAVO   = 1;
    27  		CHARLIE = 2;
    28  	}
    29  	message ChildMessage {
    30  		optional string  f1 = 1;
    31  		required string  f2 = 2;
    32  		repeated string  f3 = 3;
    33  	    optional Message f4 = 4;
    34  	}
    35  	optional group NamedGroup = 1 {
    36  		optional string  f1 = 1;
    37  		required string  f2 = 2;
    38  		repeated string  f3 = 3;
    39  	    optional Message f4 = 4;
    40  	}
    41  
    42  	// Optional fields.
    43  	optional bool     optional_bool     = 100;
    44  	optional int32    optional_int32    = 101;
    45  	optional sint32   optional_sint32   = 102;
    46  	optional uint32   optional_uint32   = 103;
    47  	optional int64    optional_int64    = 104;
    48  	optional sint64   optional_sint64   = 105;
    49  	optional uint64   optional_uint64   = 106;
    50  	optional fixed32  optional_fixed32  = 107;
    51  	optional sfixed32 optional_sfixed32 = 108;
    52  	optional float    optional_float    = 109;
    53  	optional fixed64  optional_fixed64  = 110;
    54  	optional sfixed64 optional_sfixed64 = 111;
    55  	optional double   optional_double   = 112;
    56  	optional string   optional_string   = 113;
    57  	optional bytes    optional_bytes    = 114;
    58  
    59  	optional ChildEnum      optional_child_enum      = 115;
    60  	optional ChildMessage   optional_child_message   = 116;
    61  	optional NamedGroup     optional_named_group     = 117;
    62  	optional SiblingEnum    optional_sibling_enum    = 118;
    63  	optional SiblingMessage optional_sibling_message = 119;
    64  	optional group OptionalGroup = 120 {
    65  		optional string f1 = 1;
    66  		required string f2 = 2;
    67  		repeated string f3 = 3;
    68  	}
    69  
    70  	// Optional default fields.
    71  	optional bool      defaulted_bool     = 200 [default = true];
    72  	optional int32     defaulted_int32    = 201 [default = -12345];
    73  	optional sint32    defaulted_sint32   = 202 [default = -3200];
    74  	optional uint32    defaulted_uint32   = 203 [default = 3200];
    75  	optional int64     defaulted_int64    = 204 [default = -123456789];
    76  	optional sint64    defaulted_sint64   = 205 [default = -6400];
    77  	optional uint64    defaulted_uint64   = 206 [default = 6400];
    78  	optional fixed32   defaulted_fixed32  = 207 [default = 320000];
    79  	optional sfixed32  defaulted_sfixed32 = 208 [default = -320000];
    80  	optional float     defaulted_float    = 209 [default = 3.14159];
    81  	optional fixed64   defaulted_fixed64  = 210 [default = 640000];
    82  	optional sfixed64  defaulted_sfixed64 = 211 [default = -640000];
    83  	optional double    defaulted_double   = 212 [default = 3.14159265359];
    84  	optional string    defaulted_string   = 213 [default = "hello, \"world!\"\n"];
    85  	optional bytes     defaulted_bytes    = 214 [default = "dead\xde\xad\xbe\xefbeef"];
    86  
    87  	optional ChildEnum   defaulted_child_enum   = 215 [default = ALPHA];
    88  	optional SiblingEnum defaulted_sibling_enum = 216 [default = ALPHA];
    89  
    90  	// Required fields.
    91  	required bool     required_bool     = 300;
    92  	required int32    required_int32    = 301;
    93  	required sint32   required_sint32   = 302;
    94  	required uint32   required_uint32   = 303;
    95  	required int64    required_int64    = 304;
    96  	required sint64   required_sint64   = 305;
    97  	required uint64   required_uint64   = 306;
    98  	required fixed32  required_fixed32  = 307;
    99  	required sfixed32 required_sfixed32 = 308;
   100  	required float    required_float    = 309;
   101  	required fixed64  required_fixed64  = 310;
   102  	required sfixed64 required_sfixed64 = 311;
   103  	required double   required_double   = 312;
   104  	required string   required_string   = 313;
   105  	required bytes    required_bytes    = 314;
   106  
   107  	required ChildEnum      required_child_enum      = 315;
   108  	required ChildMessage   required_child_message   = 316;
   109  	required NamedGroup     required_named_group     = 317;
   110  	required SiblingEnum    required_sibling_enum    = 318;
   111  	required SiblingMessage required_sibling_message = 319;
   112  	required group RequiredGroup = 320 {
   113  		optional string f1 = 1;
   114  		required string f2 = 2;
   115  		repeated string f3 = 3;
   116  	}
   117  	// Required default fields.
   118  	required bool      required_defaulted_bool     = 400 [default = true];
   119  	required int32     required_defaulted_int32    = 401 [default = -12345];
   120  	required sint32    required_defaulted_sint32   = 402 [default = -3200];
   121  	required uint32    required_defaulted_uint32   = 403 [default = 3200];
   122  	required int64     required_defaulted_int64    = 404 [default = -123456789];
   123  	required sint64    required_defaulted_sint64   = 405 [default = -6400];
   124  	required uint64    required_defaulted_uint64   = 406 [default = 6400];
   125  	required fixed32   required_defaulted_fixed32  = 407 [default = 320000];
   126  	required sfixed32  required_defaulted_sfixed32 = 408 [default = -320000];
   127  	required float     required_defaulted_float    = 409 [default = 3.14159];
   128  	required fixed64   required_defaulted_fixed64  = 410 [default = 640000];
   129  	required sfixed64  required_defaulted_sfixed64 = 411 [default = -640000];
   130  	required double    required_defaulted_double   = 412 [default = 3.14159265359];
   131  	required string    required_defaulted_string   = 413 [default = "hello, \"world!\"\n"];
   132  	required bytes     required_defaulted_bytes    = 414 [default = "dead\xde\xad\xbe\xefbeef"];
   133  
   134  	required ChildEnum   required_defaulted_child_enum   = 415 [default = ALPHA];
   135  	required SiblingEnum required_defaulted_sibling_enum = 416 [default = ALPHA];
   136  
   137  	// Repeated fields.
   138  	repeated bool     repeated_bool     = 500;
   139  	repeated int32    repeated_int32    = 501;
   140  	repeated sint32   repeated_sint32   = 502;
   141  	repeated uint32   repeated_uint32   = 503;
   142  	repeated int64    repeated_int64    = 504;
   143  	repeated sint64   repeated_sint64   = 505;
   144  	repeated uint64   repeated_uint64   = 506;
   145  	repeated fixed32  repeated_fixed32  = 507;
   146  	repeated sfixed32 repeated_sfixed32 = 508;
   147  	repeated float    repeated_float    = 509;
   148  	repeated fixed64  repeated_fixed64  = 510;
   149  	repeated sfixed64 repeated_sfixed64 = 511;
   150  	repeated double   repeated_double   = 512;
   151  	repeated string   repeated_string   = 513;
   152  	repeated bytes    repeated_bytes    = 514;
   153  
   154  	repeated ChildEnum      repeated_child_enum      = 515;
   155  	repeated ChildMessage   repeated_child_message   = 516;
   156  	repeated NamedGroup     repeated_named_group     = 517;
   157  	repeated SiblingEnum    repeated_sibling_enum    = 518;
   158  	repeated SiblingMessage repeated_sibling_message = 519;
   159  	repeated group RepeatedGroup = 520 {
   160  		optional string f1 = 1;
   161  		required string f2 = 2;
   162  		repeated string f3 = 3;
   163  	}
   164  
   165  	// Map fields.
   166  	map<bool, bool>     map_bool_bool     = 600;
   167  	map<bool, int32>    map_bool_int32    = 601;
   168  	map<bool, sint32>   map_bool_sint32   = 602;
   169  	map<bool, uint32>   map_bool_uint32   = 603;
   170  	map<bool, int64>    map_bool_int64    = 604;
   171  	map<bool, sint64>   map_bool_sint64   = 605;
   172  	map<bool, uint64>   map_bool_uint64   = 606;
   173  	map<bool, fixed32>  map_bool_fixed32  = 607;
   174  	map<bool, sfixed32> map_bool_sfixed32 = 608;
   175  	map<bool, float>    map_bool_float    = 609;
   176  	map<bool, fixed64>  map_bool_fixed64  = 610;
   177  	map<bool, sfixed64> map_bool_sfixed64 = 611;
   178  	map<bool, double>   map_bool_double   = 612;
   179  	map<bool, string>   map_bool_string   = 613;
   180  	map<bool, bytes>    map_bool_bytes    = 614;
   181  
   182  	map<bool, ChildEnum>      map_bool_child_enum      = 615;
   183  	map<bool, ChildMessage>   map_bool_child_message   = 616;
   184  	map<bool, NamedGroup>     map_bool_named_group     = 617;
   185  	map<bool, SiblingEnum>    map_bool_sibling_enum    = 618;
   186  	map<bool, SiblingMessage> map_bool_sibling_message = 619;
   187  
   188  	map<int32, bool>   map_int32_bool   = 620;
   189  	map<sint32, bool>  map_sint32_bool  = 621;
   190  	map<uint32, bool>  map_uint32_bool  = 622;
   191  	map<int64, bool>   map_int64_bool   = 623;
   192  	map<sint64, bool>  map_sint64_bool  = 624;
   193  	map<uint64, bool>  map_uint64_bool  = 625;
   194  	map<fixed32, bool> map_fixed32_bool = 626;
   195  	map<string, bool>  map_string_bool  = 627;
   196  
   197  	// Oneof fields.
   198  	oneof oneof_union {
   199  		bool     oneof_bool     = 700;
   200  		int32    oneof_int32    = 701;
   201  		sint32   oneof_sint32   = 702;
   202  		uint32   oneof_uint32   = 703;
   203  		int64    oneof_int64    = 704;
   204  		sint64   oneof_sint64   = 705;
   205  		uint64   oneof_uint64   = 706;
   206  		fixed32  oneof_fixed32  = 707;
   207  		sfixed32 oneof_sfixed32 = 708;
   208  		float    oneof_float    = 709;
   209  		fixed64  oneof_fixed64  = 710;
   210  		sfixed64 oneof_sfixed64 = 711;
   211  		double   oneof_double   = 712;
   212  		string   oneof_string   = 713;
   213  		bytes    oneof_bytes    = 714;
   214  
   215  		ChildEnum      oneof_child_enum      = 715;
   216  		ChildMessage   oneof_child_message   = 716;
   217  		NamedGroup     oneof_named_group     = 717;
   218  		SiblingEnum    oneof_sibling_enum    = 718;
   219  		SiblingMessage oneof_sibling_message = 719;
   220  		group OneofGroup = 720 {
   221  			optional string f1 = 1;
   222  			required string f2 = 2;
   223  			repeated string f3 = 3;
   224  		}
   225  
   226  		string oneof_string1 = 721;
   227  		string oneof_string2 = 722;
   228  		string oneof_string3 = 723;
   229  	}
   230  
   231  	// Oneof default fields.
   232  	oneof oneof_defaulted_union {
   233  		bool      oneof_defaulted_bool     = 800 [default = true];
   234  		int32     oneof_defaulted_int32    = 801 [default = -12345];
   235  		sint32    oneof_defaulted_sint32   = 802 [default = -3200];
   236  		uint32    oneof_defaulted_uint32   = 803 [default = 3200];
   237  		int64     oneof_defaulted_int64    = 804 [default = -123456789];
   238  		sint64    oneof_defaulted_sint64   = 805 [default = -6400];
   239  		uint64    oneof_defaulted_uint64   = 806 [default = 6400];
   240  		fixed32   oneof_defaulted_fixed32  = 807 [default = 320000];
   241  		sfixed32  oneof_defaulted_sfixed32 = 808 [default = -320000];
   242  		float     oneof_defaulted_float    = 809 [default = 3.14159];
   243  		fixed64   oneof_defaulted_fixed64  = 810 [default = 640000];
   244  		sfixed64  oneof_defaulted_sfixed64 = 811 [default = -640000];
   245  		double    oneof_defaulted_double   = 812 [default = 3.14159265359];
   246  		string    oneof_defaulted_string   = 813 [default = "hello, \"world!\"\n"];
   247  		bytes     oneof_defaulted_bytes    = 814 [default = "dead\xde\xad\xbe\xefbeef"];
   248  
   249  		ChildEnum   oneof_defaulted_child_enum   = 815 [default = ALPHA];
   250  		SiblingEnum oneof_defaulted_sibling_enum = 816 [default = ALPHA];
   251  	}
   252  
   253  	// Extension fields.
   254  	extend Message {
   255  		// Optional fields.
   256  		optional bool     extension_optional_bool     = 10000;
   257  		optional int32    extension_optional_int32    = 10001;
   258  		optional sint32   extension_optional_sint32   = 10002;
   259  		optional uint32   extension_optional_uint32   = 10003;
   260  		optional int64    extension_optional_int64    = 10004;
   261  		optional sint64   extension_optional_sint64   = 10005;
   262  		optional uint64   extension_optional_uint64   = 10006;
   263  		optional fixed32  extension_optional_fixed32  = 10007;
   264  		optional sfixed32 extension_optional_sfixed32 = 10008;
   265  		optional float    extension_optional_float    = 10009;
   266  		optional fixed64  extension_optional_fixed64  = 10010;
   267  		optional sfixed64 extension_optional_sfixed64 = 10011;
   268  		optional double   extension_optional_double   = 10012;
   269  		optional string   extension_optional_string   = 10013;
   270  		optional bytes    extension_optional_bytes    = 10014;
   271  
   272  		optional ChildEnum      extension_optional_child_enum      = 10015;
   273  		optional ChildMessage   extension_optional_child_message   = 10016;
   274  		optional NamedGroup     extension_optional_named_group     = 10017;
   275  		optional SiblingEnum    extension_optional_sibling_enum    = 10018;
   276  		optional SiblingMessage extension_optional_sibling_message = 10019;
   277  		optional group ExtensionOptionalGroup = 10020 {
   278  			optional string f1 = 1;
   279  			required string f2 = 2;
   280  			repeated string f3 = 3;
   281  		}
   282  
   283  		// Optional default fields.
   284  		optional bool      extension_defaulted_bool     = 20000 [default = true];
   285  		optional int32     extension_defaulted_int32    = 20001 [default = -12345];
   286  		optional sint32    extension_defaulted_sint32   = 20002 [default = -3200];
   287  		optional uint32    extension_defaulted_uint32   = 20003 [default = 3200];
   288  		optional int64     extension_defaulted_int64    = 20004 [default = -123456789];
   289  		optional sint64    extension_defaulted_sint64   = 20005 [default = -6400];
   290  		optional uint64    extension_defaulted_uint64   = 20006 [default = 6400];
   291  		optional fixed32   extension_defaulted_fixed32  = 20007 [default = 320000];
   292  		optional sfixed32  extension_defaulted_sfixed32 = 20008 [default = -320000];
   293  		optional float     extension_defaulted_float    = 20009 [default = 3.14159];
   294  		optional fixed64   extension_defaulted_fixed64  = 20010 [default = 640000];
   295  		optional sfixed64  extension_defaulted_sfixed64 = 20011 [default = -640000];
   296  		optional double    extension_defaulted_double   = 20012 [default = 3.14159265359];
   297  		optional string    extension_defaulted_string   = 20013 [default = "hello, \"world!\"\n"];
   298  		optional bytes     extension_defaulted_bytes    = 20014 [default = "dead\xde\xad\xbe\xefbeef"];
   299  
   300  		optional ChildEnum   extension_defaulted_child_enum   = 20015 [default = ALPHA];
   301  		optional SiblingEnum extension_defaulted_sibling_enum = 20016 [default = ALPHA];
   302  
   303  		// Repeated fields.
   304  		repeated bool     extension_repeated_bool     = 30000;
   305  		repeated int32    extension_repeated_int32    = 30001;
   306  		repeated sint32   extension_repeated_sint32   = 30002;
   307  		repeated uint32   extension_repeated_uint32   = 30003;
   308  		repeated int64    extension_repeated_int64    = 30004;
   309  		repeated sint64   extension_repeated_sint64   = 30005;
   310  		repeated uint64   extension_repeated_uint64   = 30006;
   311  		repeated fixed32  extension_repeated_fixed32  = 30007;
   312  		repeated sfixed32 extension_repeated_sfixed32 = 30008;
   313  		repeated float    extension_repeated_float    = 30009;
   314  		repeated fixed64  extension_repeated_fixed64  = 30010;
   315  		repeated sfixed64 extension_repeated_sfixed64 = 30011;
   316  		repeated double   extension_repeated_double   = 30012;
   317  		repeated string   extension_repeated_string   = 30013;
   318  		repeated bytes    extension_repeated_bytes    = 30014;
   319  
   320  		repeated ChildEnum      extension_repeated_child_enum      = 30015;
   321  		repeated ChildMessage   extension_repeated_child_message   = 30016;
   322  		repeated NamedGroup     extension_repeated_named_group     = 30017;
   323  		repeated SiblingEnum    extension_repeated_sibling_enum    = 30018;
   324  		repeated SiblingMessage extension_repeated_sibling_message = 30019;
   325  		repeated group ExtensionRepeatedGroup = 30020 {
   326  			optional string f1 = 1;
   327  			required string f2 = 2;
   328  			repeated string f3 = 3;
   329  		}
   330  	}
   331  
   332  	extensions 10000 to max;
   333  }