unittest_extras_lite.proto 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. syntax = "proto2";
  2. package protobuf_unittest_extra;
  3. option csharp_namespace = "Google.ProtocolBuffers.TestProtos";
  4. option optimize_for = LITE_RUNTIME;
  5. option java_package = "com.google.protobuf";
  6. message TestRequiredLite {
  7. required int32 d = 1;
  8. required ExtraEnum en = 2 [default = DEFAULT];
  9. }
  10. enum ExtraEnum {
  11. DEFAULT = 10;
  12. EXLITE_FOO = 7;
  13. EXLITE_BAR = 8;
  14. EXLITE_BAZ = 9;
  15. }
  16. message TestInteropPersonLite {
  17. required string name = 1;
  18. required int32 id = 2;
  19. optional string email = 3;
  20. repeated int32 codes = 10 [packed=true];
  21. enum PhoneType {
  22. MOBILE = 0;
  23. HOME = 1;
  24. WORK = 2;
  25. }
  26. message PhoneNumber {
  27. required string number = 1;
  28. optional PhoneType type = 2 [default = HOME];
  29. }
  30. repeated PhoneNumber phone = 4;
  31. repeated group Addresses = 5 {
  32. required string address = 1;
  33. optional string address2 = 2;
  34. required string city = 3;
  35. required string state = 4;
  36. required fixed32 zip = 5;
  37. }
  38. extensions 100 to 199;
  39. }
  40. message TestInteropEmployeeIdLite {
  41. required string number = 1;
  42. }
  43. extend TestInteropPersonLite {
  44. // Note: changed from required to optional, as required fields are not
  45. // permitted in extensions. (The fact that this was allowed in protogen
  46. // before was almost certainly a bug.)
  47. optional TestInteropEmployeeIdLite employee_id_lite = 126;
  48. }
  49. /* Removed from unittest_lite.proto and added back here */
  50. message TestUnpackedExtensionsLite {
  51. extensions 1 to max;
  52. }
  53. message TestUnpackedTypesLite {
  54. repeated int32 unpacked_int32 = 90;
  55. repeated int64 unpacked_int64 = 91;
  56. repeated uint32 unpacked_uint32 = 92;
  57. repeated uint64 unpacked_uint64 = 93;
  58. repeated sint32 unpacked_sint32 = 94;
  59. repeated sint64 unpacked_sint64 = 95;
  60. repeated fixed32 unpacked_fixed32 = 96;
  61. repeated fixed64 unpacked_fixed64 = 97;
  62. repeated sfixed32 unpacked_sfixed32 = 98;
  63. repeated sfixed64 unpacked_sfixed64 = 99;
  64. repeated float unpacked_float = 100;
  65. repeated double unpacked_double = 101;
  66. repeated bool unpacked_bool = 102;
  67. repeated UnpackedTypesForeignEnumLite unpacked_enum = 103;
  68. }
  69. extend TestUnpackedExtensionsLite {
  70. repeated int32 unpacked_int32_extension_lite = 90;
  71. repeated int64 unpacked_int64_extension_lite = 91;
  72. repeated uint32 unpacked_uint32_extension_lite = 92;
  73. repeated uint64 unpacked_uint64_extension_lite = 93;
  74. repeated sint32 unpacked_sint32_extension_lite = 94;
  75. repeated sint64 unpacked_sint64_extension_lite = 95;
  76. repeated fixed32 unpacked_fixed32_extension_lite = 96;
  77. repeated fixed64 unpacked_fixed64_extension_lite = 97;
  78. repeated sfixed32 unpacked_sfixed32_extension_lite = 98;
  79. repeated sfixed64 unpacked_sfixed64_extension_lite = 99;
  80. repeated float unpacked_float_extension_lite = 100;
  81. repeated double unpacked_double_extension_lite = 101;
  82. repeated bool unpacked_bool_extension_lite = 102;
  83. repeated UnpackedTypesForeignEnumLite unpacked_enum_extension_lite = 103;
  84. }
  85. enum UnpackedTypesForeignEnumLite {
  86. FOREIGN_LITE_FOO = 4;
  87. FOREIGN_LITE_BAR = 5;
  88. FOREIGN_LITE_BAZ = 6;
  89. }
  90. message BucketOfBytes {
  91. optional bytes value = 1;
  92. }
  93. message BucketOfBytesEx {
  94. optional bytes value = 1;
  95. optional bytes value2 = 255;
  96. }