fields.proto 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  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. syntax = "proto2";
  5. package goproto.protoc.proto2;
  6. option go_package = "google.golang.org/protobuf/cmd/protoc-gen-go/testdata/proto2";
  7. message FieldTestMessage {
  8. optional bool optional_bool = 1;
  9. optional Enum optional_enum = 2;
  10. optional int32 optional_int32 = 3;
  11. optional sint32 optional_sint32 = 4;
  12. optional uint32 optional_uint32 = 5;
  13. optional int64 optional_int64 = 6;
  14. optional sint64 optional_sint64 = 7;
  15. optional uint64 optional_uint64 = 8;
  16. optional sfixed32 optional_sfixed32 = 9;
  17. optional fixed32 optional_fixed32 = 10;
  18. optional float optional_float = 11;
  19. optional sfixed64 optional_sfixed64 = 12;
  20. optional fixed64 optional_fixed64 = 13;
  21. optional double optional_double = 14;
  22. optional string optional_string = 15;
  23. optional bytes optional_bytes = 16;
  24. optional Message optional_Message = 17;
  25. optional group OptionalGroup = 18 {
  26. optional string optional_group = 19;
  27. }
  28. required bool required_bool = 101;
  29. required Enum required_enum = 102;
  30. required int32 required_int32 = 103;
  31. required sint32 required_sint32 = 104;
  32. required uint32 required_uint32 = 105;
  33. required int64 required_int64 = 106;
  34. required sint64 required_sint64 = 107;
  35. required uint64 required_uint64 = 108;
  36. required sfixed32 required_sfixed32 = 109;
  37. required fixed32 required_fixed32 = 110;
  38. required float required_float = 111;
  39. required sfixed64 required_sfixed64 = 112;
  40. required fixed64 required_fixed64 = 113;
  41. required double required_double = 114;
  42. required string required_string = 115;
  43. required bytes required_bytes = 116;
  44. required Message required_Message = 117;
  45. required group RequiredGroup = 118 {
  46. required string required_group = 119;
  47. }
  48. repeated bool repeated_bool = 201;
  49. repeated Enum repeated_enum = 202;
  50. repeated int32 repeated_int32 = 203;
  51. repeated sint32 repeated_sint32 = 204;
  52. repeated uint32 repeated_uint32 = 205;
  53. repeated int64 repeated_int64 = 206;
  54. repeated sint64 repeated_sint64 = 207;
  55. repeated uint64 repeated_uint64 = 208;
  56. repeated sfixed32 repeated_sfixed32 = 209;
  57. repeated fixed32 repeated_fixed32 = 210;
  58. repeated float repeated_float = 211;
  59. repeated sfixed64 repeated_sfixed64 = 212;
  60. repeated fixed64 repeated_fixed64 = 213;
  61. repeated double repeated_double = 214;
  62. repeated string repeated_string = 215;
  63. repeated bytes repeated_bytes = 216;
  64. repeated Message repeated_Message = 217;
  65. repeated group RepeatedGroup = 218 {
  66. repeated string repeated_group = 219;
  67. }
  68. optional bool default_bool = 301 [default=true];
  69. optional Enum default_enum = 302 [default=ONE];
  70. optional int32 default_int32 = 303 [default=1];
  71. optional sint32 default_sint32 = 304 [default=1];
  72. optional uint32 default_uint32 = 305 [default=1];
  73. optional int64 default_int64 = 306 [default=1];
  74. optional sint64 default_sint64 = 307 [default=1];
  75. optional uint64 default_uint64 = 308 [default=1];
  76. optional sfixed32 default_sfixed32 = 309 [default=1];
  77. optional fixed32 default_fixed32 = 310 [default=1];
  78. optional float default_float = 311 [default=3.14];
  79. optional sfixed64 default_sfixed64 = 312 [default=1];
  80. optional fixed64 default_fixed64 = 313 [default=1];
  81. optional double default_double = 314 [default=3.1415];
  82. optional string default_string = 315 [default="hello,\"world!\"\n"];
  83. optional bytes default_bytes = 316 [default="hello,\xde\xad\xbe\xef"];
  84. optional string default_zero_string = 350 [default=""];
  85. optional bytes default_zero_bytes = 351 [default=""];
  86. optional float default_float_neginf = 400 [default=-inf];
  87. optional float default_float_posinf = 401 [default=inf];
  88. optional float default_float_nan = 402 [default=nan];
  89. optional double default_double_neginf = 403 [default=-inf];
  90. optional double default_double_posinf = 404 [default=inf];
  91. optional double default_double_nan = 405 [default=nan];
  92. map<int32, int64> map_int32_int64 = 500;
  93. map<string,Message> map_string_message = 501;
  94. map<fixed64,Enum> map_fixed64_enum = 502;
  95. oneof oneof_field {
  96. bool oneof_bool = 601;
  97. Enum oneof_enum = 602;
  98. int32 oneof_int32 = 603;
  99. sint32 oneof_sint32 = 604;
  100. uint32 oneof_uint32 = 605;
  101. int64 oneof_int64 = 606;
  102. sint64 oneof_sint64 = 607;
  103. uint64 oneof_uint64 = 608;
  104. sfixed32 oneof_sfixed32 = 609;
  105. fixed32 oneof_fixed32 = 610;
  106. float oneof_float = 611;
  107. sfixed64 oneof_sfixed64 = 612;
  108. fixed64 oneof_fixed64 = 613;
  109. double oneof_double = 614;
  110. string oneof_string = 615;
  111. bytes oneof_bytes = 616;
  112. Message oneof_Message = 617;
  113. group OneofGroup = 618 {
  114. optional string oneof_group_field = 619;
  115. }
  116. int32 oneof_largest_tag = 536870911;
  117. }
  118. oneof oneof_two {
  119. int32 oneof_two_1 = 700;
  120. int64 oneof_two_2 = 701;
  121. }
  122. enum Enum {
  123. ZERO = 0;
  124. ONE = 1;
  125. }
  126. message Message {}
  127. reserved 10000, 10001;
  128. reserved "TEN_THOUSAND", "TEN_THOUSAND_AND_ONE";
  129. }