protobufjs 5.0.1 → 5.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/.travis.yml +2 -1
  2. package/README.md +144 -22
  3. package/bin/pbjs +2 -2
  4. package/bower.json +2 -2
  5. package/cli/pbjs/targets/amd.js +1 -1
  6. package/cli/pbjs/targets/json.js +8 -0
  7. package/cli/pbjs/util.js +1 -1
  8. package/cli/pbjs.js +1 -1
  9. package/dist/protobuf-light.js +166 -128
  10. package/dist/protobuf-light.min.js +88 -81
  11. package/dist/protobuf-light.min.js.gz +0 -0
  12. package/dist/protobuf-light.min.map +4 -4
  13. package/dist/protobuf.js +171 -129
  14. package/dist/protobuf.min.js +106 -98
  15. package/dist/protobuf.min.js.gz +0 -0
  16. package/dist/protobuf.min.map +4 -4
  17. package/docs/ProtoBuf.Builder.Message.html +1408 -971
  18. package/docs/ProtoBuf.Builder.Service.html +266 -197
  19. package/docs/ProtoBuf.Builder.html +758 -542
  20. package/docs/ProtoBuf.DotProto.Parser.html +223 -161
  21. package/docs/ProtoBuf.DotProto.Tokenizer.html +344 -248
  22. package/docs/ProtoBuf.DotProto.html +20 -12
  23. package/docs/ProtoBuf.Element.html +554 -554
  24. package/docs/ProtoBuf.Map.html +158 -123
  25. package/docs/ProtoBuf.Reflect.Element.html +286 -143
  26. package/docs/ProtoBuf.Reflect.Enum.Value.html +329 -228
  27. package/docs/ProtoBuf.Reflect.Enum.html +757 -537
  28. package/docs/ProtoBuf.Reflect.Extension.html +73 -56
  29. package/docs/ProtoBuf.Reflect.Message.ExtensionField.html +1013 -740
  30. package/docs/ProtoBuf.Reflect.Message.Field.html +926 -649
  31. package/docs/ProtoBuf.Reflect.Message.OneOf.html +327 -245
  32. package/docs/ProtoBuf.Reflect.Message.html +915 -651
  33. package/docs/ProtoBuf.Reflect.Namespace.html +648 -447
  34. package/docs/ProtoBuf.Reflect.Service.Method.html +363 -251
  35. package/docs/ProtoBuf.Reflect.Service.RPCMethod.html +545 -397
  36. package/docs/ProtoBuf.Reflect.Service.html +721 -511
  37. package/docs/ProtoBuf.Reflect.T.html +268 -197
  38. package/docs/ProtoBuf.Reflect.html +20 -12
  39. package/docs/ProtoBuf.Util.html +169 -118
  40. package/docs/ProtoBuf.html +840 -628
  41. package/docs/ProtoBuf.js.html +177 -134
  42. package/docs/fonts/OpenSans-Bold-webfont.eot +0 -0
  43. package/docs/fonts/OpenSans-Bold-webfont.svg +1830 -0
  44. package/docs/fonts/OpenSans-Bold-webfont.woff +0 -0
  45. package/docs/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
  46. package/docs/fonts/OpenSans-BoldItalic-webfont.svg +1830 -0
  47. package/docs/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
  48. package/docs/fonts/OpenSans-Italic-webfont.eot +0 -0
  49. package/docs/fonts/OpenSans-Italic-webfont.svg +1830 -0
  50. package/docs/fonts/OpenSans-Italic-webfont.woff +0 -0
  51. package/docs/fonts/OpenSans-Light-webfont.eot +0 -0
  52. package/docs/fonts/OpenSans-Light-webfont.svg +1831 -0
  53. package/docs/fonts/OpenSans-Light-webfont.woff +0 -0
  54. package/docs/fonts/OpenSans-LightItalic-webfont.eot +0 -0
  55. package/docs/fonts/OpenSans-LightItalic-webfont.svg +1835 -0
  56. package/docs/fonts/OpenSans-LightItalic-webfont.woff +0 -0
  57. package/docs/fonts/OpenSans-Regular-webfont.eot +0 -0
  58. package/docs/fonts/OpenSans-Regular-webfont.svg +1831 -0
  59. package/docs/fonts/OpenSans-Regular-webfont.woff +0 -0
  60. package/docs/index.html +7 -5
  61. package/docs/styles/jsdoc-default.css +95 -75
  62. package/docs/styles/prettify-tomorrow.css +1 -1
  63. package/examples/protoify/json.js +123 -123
  64. package/examples/protoify/json.json +123 -123
  65. package/examples/websocket/server.js +4 -4
  66. package/externs/protobuf.js +1 -1
  67. package/jsdoc.json +1 -1
  68. package/package.json +2 -2
  69. package/scripts/build.js +53 -53
  70. package/src/ProtoBuf/Builder/Message.js +9 -5
  71. package/src/ProtoBuf/Builder.js +19 -2
  72. package/src/ProtoBuf/DotProto/Parser.js +5 -1
  73. package/src/ProtoBuf/Reflect/Element.js +13 -1
  74. package/src/ProtoBuf/Reflect/Message/Field.js +2 -2
  75. package/src/ProtoBuf/Reflect/Message.js +6 -1
  76. package/src/ProtoBuf/Util.js +116 -116
  77. package/src/bower.json +1 -1
  78. package/src/google/protobuf/descriptor.json +27 -1
  79. package/tests/bench.txt +373 -373
  80. package/tests/complex.json +8 -1
  81. package/tests/custom-options.json +169 -169
  82. package/tests/extend.json +71 -71
  83. package/tests/imports.json +83 -83
  84. package/tests/nodeunit-browser/nodeunit.css +70 -70
  85. package/tests/nodeunit-browser/nodeunit.js +2108 -2108
  86. package/tests/options.json +32 -32
  87. package/tests/proto2js/Bar.json +46 -46
  88. package/tests/suite.js +43 -1
  89. package/sandbox/gapi/googleapis/google/api/annotations.proto +0 -29
  90. package/sandbox/gapi/googleapis/google/api/http.proto +0 -245
  91. package/sandbox/gapi/googleapis/google/datastore/v1beta3/datastore.proto +0 -281
  92. package/sandbox/gapi/googleapis/google/datastore/v1beta3/entity.proto +0 -189
  93. package/sandbox/gapi/googleapis/google/datastore/v1beta3/query.proto +0 -281
  94. package/sandbox/gapi/googleapis/google/longrunning/operations.proto +0 -144
  95. package/sandbox/gapi/googleapis/google/protobuf/any.proto +0 -98
  96. package/sandbox/gapi/googleapis/google/protobuf/any_test.proto +0 -41
  97. package/sandbox/gapi/googleapis/google/protobuf/api.proto +0 -201
  98. package/sandbox/gapi/googleapis/google/protobuf/descriptor.proto +0 -773
  99. package/sandbox/gapi/googleapis/google/protobuf/duration.proto +0 -95
  100. package/sandbox/gapi/googleapis/google/protobuf/empty.proto +0 -50
  101. package/sandbox/gapi/googleapis/google/protobuf/field_mask.proto +0 -167
  102. package/sandbox/gapi/googleapis/google/protobuf/map_lite_unittest.proto +0 -130
  103. package/sandbox/gapi/googleapis/google/protobuf/map_proto2_unittest.proto +0 -60
  104. package/sandbox/gapi/googleapis/google/protobuf/map_unittest.proto +0 -129
  105. package/sandbox/gapi/googleapis/google/protobuf/map_unittest_proto3.proto +0 -120
  106. package/sandbox/gapi/googleapis/google/protobuf/source_context.proto +0 -47
  107. package/sandbox/gapi/googleapis/google/protobuf/struct.proto +0 -94
  108. package/sandbox/gapi/googleapis/google/protobuf/timestamp.proto +0 -107
  109. package/sandbox/gapi/googleapis/google/protobuf/type.proto +0 -176
  110. package/sandbox/gapi/googleapis/google/protobuf/unittest.proto +0 -878
  111. package/sandbox/gapi/googleapis/google/protobuf/unittest_arena.proto +0 -46
  112. package/sandbox/gapi/googleapis/google/protobuf/unittest_custom_options.proto +0 -394
  113. package/sandbox/gapi/googleapis/google/protobuf/unittest_drop_unknown_fields.proto +0 -58
  114. package/sandbox/gapi/googleapis/google/protobuf/unittest_embed_optimize_for.proto +0 -51
  115. package/sandbox/gapi/googleapis/google/protobuf/unittest_empty.proto +0 -38
  116. package/sandbox/gapi/googleapis/google/protobuf/unittest_enormous_descriptor.proto +0 -1048
  117. package/sandbox/gapi/googleapis/google/protobuf/unittest_import.proto +0 -66
  118. package/sandbox/gapi/googleapis/google/protobuf/unittest_import_lite.proto +0 -52
  119. package/sandbox/gapi/googleapis/google/protobuf/unittest_import_proto3.proto +0 -68
  120. package/sandbox/gapi/googleapis/google/protobuf/unittest_import_public.proto +0 -41
  121. package/sandbox/gapi/googleapis/google/protobuf/unittest_import_public_lite.proto +0 -43
  122. package/sandbox/gapi/googleapis/google/protobuf/unittest_import_public_proto3.proto +0 -42
  123. package/sandbox/gapi/googleapis/google/protobuf/unittest_lite.proto +0 -385
  124. package/sandbox/gapi/googleapis/google/protobuf/unittest_lite_imports_nonlite.proto +0 -44
  125. package/sandbox/gapi/googleapis/google/protobuf/unittest_mset.proto +0 -82
  126. package/sandbox/gapi/googleapis/google/protobuf/unittest_mset_wire_format.proto +0 -52
  127. package/sandbox/gapi/googleapis/google/protobuf/unittest_no_arena.proto +0 -202
  128. package/sandbox/gapi/googleapis/google/protobuf/unittest_no_arena_import.proto +0 -37
  129. package/sandbox/gapi/googleapis/google/protobuf/unittest_no_arena_lite.proto +0 -42
  130. package/sandbox/gapi/googleapis/google/protobuf/unittest_no_field_presence.proto +0 -138
  131. package/sandbox/gapi/googleapis/google/protobuf/unittest_no_generic_services.proto +0 -54
  132. package/sandbox/gapi/googleapis/google/protobuf/unittest_optimize_for.proto +0 -67
  133. package/sandbox/gapi/googleapis/google/protobuf/unittest_preserve_unknown_enum.proto +0 -71
  134. package/sandbox/gapi/googleapis/google/protobuf/unittest_preserve_unknown_enum2.proto +0 -50
  135. package/sandbox/gapi/googleapis/google/protobuf/unittest_proto3.proto +0 -388
  136. package/sandbox/gapi/googleapis/google/protobuf/unittest_proto3_arena.proto +0 -206
  137. package/sandbox/gapi/googleapis/google/protobuf/unittest_well_known_types.proto +0 -112
  138. package/sandbox/gapi/googleapis/google/protobuf/unknown_enum_test.proto +0 -62
  139. package/sandbox/gapi/googleapis/google/protobuf/wrappers.proto +0 -117
  140. package/sandbox/gapi/googleapis/google/rpc/code.proto +0 -190
  141. package/sandbox/gapi/googleapis/google/rpc/error_details.proto +0 -157
  142. package/sandbox/gapi/googleapis/google/rpc/status.proto +0 -90
  143. package/sandbox/gapi/googleapis/google/type/color.proto +0 -163
  144. package/sandbox/gapi/googleapis/google/type/date.proto +0 -43
  145. package/sandbox/gapi/googleapis/google/type/dayofweek.proto +0 -50
  146. package/sandbox/gapi/googleapis/google/type/latlng.proto +0 -36
  147. package/sandbox/gapi/googleapis/google/type/money.proto +0 -40
  148. package/sandbox/gapi/googleapis/google/type/timeofday.proto +0 -42
  149. package/sandbox/gapi/test.js +0 -17
  150. package/sandbox/gapi/test.proto +0 -12
  151. package/sandbox/issue146/MyOptions.proto +0 -28
  152. package/sandbox/issue146/Sample.proto +0 -21
  153. package/sandbox/issue146/main.js +0 -3
  154. package/sandbox/issue147/enum.proto +0 -8
  155. package/sandbox/issue147/main.js +0 -3
  156. package/sandbox/issue182/commands.proto +0 -10
  157. package/sandbox/issue182/execute.js +0 -22
  158. package/sandbox/issue182/session_commands.proto +0 -14
  159. package/sandbox/issue289/A.proto +0 -8
  160. package/sandbox/issue289/B.proto +0 -8
  161. package/sandbox/issue289/common.proto +0 -5
  162. package/sandbox/issue289/main.js +0 -7
  163. package/sandbox/issue300/IAuth.proto +0 -14
  164. package/sandbox/issue300/Request.proto +0 -14
  165. package/sandbox/issue300/main.js +0 -26
  166. package/sandbox/issue347/index.js +0 -27
  167. package/sandbox/issue355/main.proto +0 -15
  168. package/sandbox/issue42/innerextend.proto +0 -18
  169. package/sandbox/issue42/main.js +0 -8
  170. package/sandbox/issue42/outerextend.proto +0 -17
@@ -1,8 +1,10 @@
1
1
  {
2
2
  "package": "Game.Cars",
3
+ "syntax": "proto2",
3
4
  "messages": [
4
5
  {
5
6
  "name": "Car",
7
+ "syntax": "proto2",
6
8
  "fields": [
7
9
  {
8
10
  "rule": "required",
@@ -29,6 +31,7 @@
29
31
  "messages": [
30
32
  {
31
33
  "name": "Vendor",
34
+ "syntax": "proto2",
32
35
  "fields": [
33
36
  {
34
37
  "rule": "required",
@@ -52,6 +55,7 @@
52
55
  "messages": [
53
56
  {
54
57
  "name": "Address",
58
+ "syntax": "proto2",
55
59
  "fields": [
56
60
  {
57
61
  "rule": "required",
@@ -65,6 +69,7 @@
65
69
  },
66
70
  {
67
71
  "name": "Holder",
72
+ "syntax": "proto2",
68
73
  "fields": [
69
74
  {
70
75
  "rule": "optional",
@@ -90,6 +95,7 @@
90
95
  "enums": [
91
96
  {
92
97
  "name": "Speed",
98
+ "syntax": "proto2",
93
99
  "values": [
94
100
  {
95
101
  "name": "FAST",
@@ -103,5 +109,6 @@
103
109
  }
104
110
  ]
105
111
  }
106
- ]
112
+ ],
113
+ "isNamespace": true
107
114
  }
@@ -1,169 +1,169 @@
1
- {
2
- "package": null,
3
- "messages": [
4
- {
5
- "ref": "google.protobuf.FileOptions",
6
- "fields": [
7
- {
8
- "rule": "optional",
9
- "options": {},
10
- "type": "string",
11
- "name": "my_file_option",
12
- "id": 50000
13
- }
14
- ]
15
- },
16
- {
17
- "ref": "google.protobuf.MessageOptions",
18
- "fields": [
19
- {
20
- "rule": "optional",
21
- "options": {},
22
- "type": "int32",
23
- "name": "my_message_option",
24
- "id": 50001
25
- }
26
- ]
27
- },
28
- {
29
- "ref": "google.protobuf.FieldOptions",
30
- "fields": [
31
- {
32
- "rule": "optional",
33
- "options": {},
34
- "type": "float",
35
- "name": "my_field_option",
36
- "id": 50002
37
- }
38
- ]
39
- },
40
- {
41
- "ref": "google.protobuf.EnumOptions",
42
- "fields": [
43
- {
44
- "rule": "optional",
45
- "options": {},
46
- "type": "bool",
47
- "name": "my_enum_option",
48
- "id": 50003
49
- }
50
- ]
51
- },
52
- {
53
- "ref": "google.protobuf.EnumValueOptions",
54
- "fields": [
55
- {
56
- "rule": "optional",
57
- "options": {},
58
- "type": "uint32",
59
- "name": "my_enum_value_option",
60
- "id": 50004
61
- }
62
- ]
63
- },
64
- {
65
- "ref": "google.protobuf.ServiceOptions",
66
- "fields": [
67
- {
68
- "rule": "optional",
69
- "options": {},
70
- "type": "MyEnum",
71
- "name": "my_service_option",
72
- "id": 50005
73
- }
74
- ]
75
- },
76
- {
77
- "ref": "google.protobuf.MethodOptions",
78
- "fields": [
79
- {
80
- "rule": "optional",
81
- "options": {},
82
- "type": "MyMessage",
83
- "name": "my_method_option",
84
- "id": 50006
85
- }
86
- ]
87
- },
88
- {
89
- "name": "MyMessage",
90
- "fields": [
91
- {
92
- "rule": "optional",
93
- "options": {
94
- "(my_field_option)": 4.5
95
- },
96
- "type": "int32",
97
- "name": "foo",
98
- "id": 1
99
- },
100
- {
101
- "rule": "optional",
102
- "options": {},
103
- "type": "string",
104
- "name": "bar",
105
- "id": 2
106
- }
107
- ],
108
- "enums": [],
109
- "messages": [],
110
- "options": {
111
- "(my_message_option)": 1234
112
- }
113
- },
114
- {
115
- "name": "RequestType",
116
- "fields": [],
117
- "enums": [],
118
- "messages": [],
119
- "options": {}
120
- },
121
- {
122
- "name": "ResponseType",
123
- "fields": [],
124
- "enums": [],
125
- "messages": [],
126
- "options": {}
127
- }
128
- ],
129
- "enums": [
130
- {
131
- "name": "MyEnum",
132
- "values": [
133
- {
134
- "name": "FOO",
135
- "id": 1
136
- },
137
- {
138
- "name": "BAR",
139
- "id": 2
140
- }
141
- ],
142
- "options": {
143
- "(my_enum_option)": true
144
- }
145
- }
146
- ],
147
- "imports": [],
148
- "options": {
149
- "(my_file_option)": "Hello world!"
150
- },
151
- "services": [
152
- {
153
- "name": "MyService",
154
- "rpc": {
155
- "MyMethod": {
156
- "request": "RequestType",
157
- "response": "ResponseType",
158
- "options": {
159
- "(my_method_option).foo": 567,
160
- "(my_method_option).bar": "Some string"
161
- }
162
- }
163
- },
164
- "options": {
165
- "(my_service_option)": "FOO"
166
- }
167
- }
168
- ]
169
- }
1
+ {
2
+ "package": null,
3
+ "messages": [
4
+ {
5
+ "ref": "google.protobuf.FileOptions",
6
+ "fields": [
7
+ {
8
+ "rule": "optional",
9
+ "options": {},
10
+ "type": "string",
11
+ "name": "my_file_option",
12
+ "id": 50000
13
+ }
14
+ ]
15
+ },
16
+ {
17
+ "ref": "google.protobuf.MessageOptions",
18
+ "fields": [
19
+ {
20
+ "rule": "optional",
21
+ "options": {},
22
+ "type": "int32",
23
+ "name": "my_message_option",
24
+ "id": 50001
25
+ }
26
+ ]
27
+ },
28
+ {
29
+ "ref": "google.protobuf.FieldOptions",
30
+ "fields": [
31
+ {
32
+ "rule": "optional",
33
+ "options": {},
34
+ "type": "float",
35
+ "name": "my_field_option",
36
+ "id": 50002
37
+ }
38
+ ]
39
+ },
40
+ {
41
+ "ref": "google.protobuf.EnumOptions",
42
+ "fields": [
43
+ {
44
+ "rule": "optional",
45
+ "options": {},
46
+ "type": "bool",
47
+ "name": "my_enum_option",
48
+ "id": 50003
49
+ }
50
+ ]
51
+ },
52
+ {
53
+ "ref": "google.protobuf.EnumValueOptions",
54
+ "fields": [
55
+ {
56
+ "rule": "optional",
57
+ "options": {},
58
+ "type": "uint32",
59
+ "name": "my_enum_value_option",
60
+ "id": 50004
61
+ }
62
+ ]
63
+ },
64
+ {
65
+ "ref": "google.protobuf.ServiceOptions",
66
+ "fields": [
67
+ {
68
+ "rule": "optional",
69
+ "options": {},
70
+ "type": "MyEnum",
71
+ "name": "my_service_option",
72
+ "id": 50005
73
+ }
74
+ ]
75
+ },
76
+ {
77
+ "ref": "google.protobuf.MethodOptions",
78
+ "fields": [
79
+ {
80
+ "rule": "optional",
81
+ "options": {},
82
+ "type": "MyMessage",
83
+ "name": "my_method_option",
84
+ "id": 50006
85
+ }
86
+ ]
87
+ },
88
+ {
89
+ "name": "MyMessage",
90
+ "fields": [
91
+ {
92
+ "rule": "optional",
93
+ "options": {
94
+ "(my_field_option)": 4.5
95
+ },
96
+ "type": "int32",
97
+ "name": "foo",
98
+ "id": 1
99
+ },
100
+ {
101
+ "rule": "optional",
102
+ "options": {},
103
+ "type": "string",
104
+ "name": "bar",
105
+ "id": 2
106
+ }
107
+ ],
108
+ "enums": [],
109
+ "messages": [],
110
+ "options": {
111
+ "(my_message_option)": 1234
112
+ }
113
+ },
114
+ {
115
+ "name": "RequestType",
116
+ "fields": [],
117
+ "enums": [],
118
+ "messages": [],
119
+ "options": {}
120
+ },
121
+ {
122
+ "name": "ResponseType",
123
+ "fields": [],
124
+ "enums": [],
125
+ "messages": [],
126
+ "options": {}
127
+ }
128
+ ],
129
+ "enums": [
130
+ {
131
+ "name": "MyEnum",
132
+ "values": [
133
+ {
134
+ "name": "FOO",
135
+ "id": 1
136
+ },
137
+ {
138
+ "name": "BAR",
139
+ "id": 2
140
+ }
141
+ ],
142
+ "options": {
143
+ "(my_enum_option)": true
144
+ }
145
+ }
146
+ ],
147
+ "imports": [],
148
+ "options": {
149
+ "(my_file_option)": "Hello world!"
150
+ },
151
+ "services": [
152
+ {
153
+ "name": "MyService",
154
+ "rpc": {
155
+ "MyMethod": {
156
+ "request": "RequestType",
157
+ "response": "ResponseType",
158
+ "options": {
159
+ "(my_method_option).foo": 567,
160
+ "(my_method_option).bar": "Some string"
161
+ }
162
+ }
163
+ },
164
+ "options": {
165
+ "(my_service_option)": "FOO"
166
+ }
167
+ }
168
+ ]
169
+ }
package/tests/extend.json CHANGED
@@ -1,71 +1,71 @@
1
- {
2
- "package": null,
3
- "messages": [
4
- {
5
- "ref": "google.protobuf.MessageOptions",
6
- "fields": [
7
- {
8
- "rule": "optional",
9
- "options": {},
10
- "type": "int32",
11
- "name": "foo",
12
- "id": 1001
13
- }
14
- ]
15
- },
16
- {
17
- "name": "Foo",
18
- "fields": [],
19
- "enums": [],
20
- "messages": [],
21
- "options": {},
22
- "extensions": [
23
- 2,
24
- 536870911
25
- ]
26
- },
27
- {
28
- "ref": "Foo",
29
- "fields": [
30
- {
31
- "rule": "optional",
32
- "options": {},
33
- "type": "string",
34
- "name": "bar",
35
- "id": 2
36
- }
37
- ]
38
- },
39
- {
40
- "name": "Bar",
41
- "fields": [],
42
- "enums": [],
43
- "messages": [
44
- {
45
- "name": "Foo",
46
- "fields": [],
47
- "enums": [],
48
- "messages": [],
49
- "options": {}
50
- },
51
- {
52
- "ref": "Foo",
53
- "fields": [
54
- {
55
- "rule": "optional",
56
- "options": {},
57
- "type": "Foo",
58
- "name": "foo",
59
- "id": 3
60
- }
61
- ]
62
- }
63
- ],
64
- "options": {}
65
- }
66
- ],
67
- "enums": [],
68
- "imports": [],
69
- "options": {},
70
- "services": []
71
- }
1
+ {
2
+ "package": null,
3
+ "messages": [
4
+ {
5
+ "ref": "google.protobuf.MessageOptions",
6
+ "fields": [
7
+ {
8
+ "rule": "optional",
9
+ "options": {},
10
+ "type": "int32",
11
+ "name": "foo",
12
+ "id": 1001
13
+ }
14
+ ]
15
+ },
16
+ {
17
+ "name": "Foo",
18
+ "fields": [],
19
+ "enums": [],
20
+ "messages": [],
21
+ "options": {},
22
+ "extensions": [
23
+ 2,
24
+ 536870911
25
+ ]
26
+ },
27
+ {
28
+ "ref": "Foo",
29
+ "fields": [
30
+ {
31
+ "rule": "optional",
32
+ "options": {},
33
+ "type": "string",
34
+ "name": "bar",
35
+ "id": 2
36
+ }
37
+ ]
38
+ },
39
+ {
40
+ "name": "Bar",
41
+ "fields": [],
42
+ "enums": [],
43
+ "messages": [
44
+ {
45
+ "name": "Foo",
46
+ "fields": [],
47
+ "enums": [],
48
+ "messages": [],
49
+ "options": {}
50
+ },
51
+ {
52
+ "ref": "Foo",
53
+ "fields": [
54
+ {
55
+ "rule": "optional",
56
+ "options": {},
57
+ "type": "Foo",
58
+ "name": "foo",
59
+ "id": 3
60
+ }
61
+ ]
62
+ }
63
+ ],
64
+ "options": {}
65
+ }
66
+ ],
67
+ "enums": [],
68
+ "imports": [],
69
+ "options": {},
70
+ "services": []
71
+ }