• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Protocol Buffers - Google's data interchange format
2// Copyright 2023 Google LLC.  All rights reserved.
3//
4// Use of this source code is governed by a BSD-style
5// license that can be found in the LICENSE file or at
6// https://developers.google.com/open-source/licenses/bsd
7
8syntax = "proto2";
9
10package upb_test;
11
12message MapTest {
13  map<string, double> map_string_double = 1;
14}
15
16message MessageName {
17  optional int32 field1 = 1;
18  optional int32 field2 = 2;
19}
20
21message HelloRequest {
22  optional uint32 id = 1;
23  optional uint32 random_name_a0 = 2;
24  optional uint32 random_name_a1 = 3;
25  optional uint32 random_name_a2 = 4;
26  optional uint32 random_name_a3 = 5;
27  optional uint32 random_name_a4 = 6;
28  optional uint32 random_name_a5 = 7;
29  optional uint32 random_name_a6 = 8;
30  optional uint32 random_name_a7 = 9;
31  optional uint32 random_name_a8 = 10;
32  optional uint32 random_name_a9 = 11;
33  optional uint32 random_name_b0 = 12;
34  optional uint32 random_name_b1 = 13;
35  optional uint32 random_name_b2 = 14;
36  optional uint32 random_name_b3 = 15;
37  optional uint32 random_name_b4 = 16;
38  optional uint32 random_name_b5 = 17;
39  optional uint32 random_name_b6 = 18;
40  optional uint32 random_name_b7 = 19;
41  optional uint32 random_name_b8 = 20;
42  optional uint32 random_name_b9 = 21;
43  optional uint32 random_name_c0 = 22;
44  optional uint32 random_name_c1 = 23;
45  optional uint32 random_name_c2 = 24;
46  optional uint32 random_name_c3 = 25;
47  optional uint32 random_name_c4 = 26;
48  optional uint32 random_name_c5 = 27;
49  optional uint32 random_name_c6 = 28;
50  optional uint32 random_name_c7 = 29;
51  optional uint32 random_name_c8 = 30;
52  optional uint32 random_name_c9 = 31;
53  optional string version = 32;
54}
55
56message EmptyMessageWithExtensions {
57  // Reserved for unknown fields/extensions test.
58  reserved 1000 to max;
59}
60
61message ModelWithExtensions {
62  optional int32 random_int32 = 3;
63  optional string random_name = 4;
64  repeated int32 repeated_int32 = 5;
65  // Reserved for unknown fields/extensions test.
66  extensions 1000 to max;
67}
68
69message ModelExtension1 {
70  extend ModelWithExtensions {
71    optional ModelExtension1 model_ext = 1547;
72  }
73  optional string str = 25;
74}
75
76message ModelExtension2 {
77  extend ModelWithExtensions {
78    optional ModelExtension2 model_ext = 4135;
79    optional ModelExtension2 model_ext_2 = 4136;
80    optional ModelExtension2 model_ext_3 = 4137;
81    optional ModelExtension2 model_ext_4 = 4138;
82    optional ModelExtension2 model_ext_5 = 4139;
83  }
84  optional int32 i = 9;
85}
86
87message ModelWithSubMessages {
88  optional int32 id = 4;
89  optional ModelWithExtensions optional_child = 5;
90  repeated ModelWithExtensions items = 6;
91}
92
93message ModelWithMaps {
94  optional int32 id = 1;
95  map<string, bytes> map_sb = 2;
96  map<string, string> map_ss = 3;
97  map<int32, int32> map_ii = 4;
98  map<int32, ModelWithExtensions> map_im = 5;
99}
100
101message ExtremeDefaults {
102  optional int64 int64_min = 1 [default = -9223372036854775808];
103}
104