You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

3958 lines
161 KiB

  1. // Protocol Buffers - Google's data interchange format
  2. // Copyright 2008 Google Inc. All rights reserved.
  3. // https://developers.google.com/protocol-buffers/
  4. //
  5. // Redistribution and use in source and binary forms, with or without
  6. // modification, are permitted provided that the following conditions are
  7. // met:
  8. //
  9. // * Redistributions of source code must retain the above copyright
  10. // notice, this list of conditions and the following disclaimer.
  11. // * Redistributions in binary form must reproduce the above
  12. // copyright notice, this list of conditions and the following disclaimer
  13. // in the documentation and/or other materials provided with the
  14. // distribution.
  15. // * Neither the name of Google Inc. nor the names of its
  16. // contributors may be used to endorse or promote products derived from
  17. // this software without specific prior written permission.
  18. //
  19. // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  20. // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  21. // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  22. // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  23. // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  24. // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  25. // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  26. // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  27. // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  28. // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  29. // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  30. // Author: kenton@google.com (Kenton Varda)
  31. // Based on original Protocol Buffers design by
  32. // Sanjay Ghemawat, Jeff Dean, and others.
  33. //
  34. // The messages in this file describe the definitions found in .proto files.
  35. // A valid .proto file can be translated directly to a FileDescriptorProto
  36. // without any other information (e.g. without reading its imports).
  37. // Code generated by protoc-gen-go. DO NOT EDIT.
  38. // source: google/protobuf/descriptor.proto
  39. package descriptorpb
  40. import (
  41. protoreflect "google.golang.org/protobuf/reflect/protoreflect"
  42. protoimpl "google.golang.org/protobuf/runtime/protoimpl"
  43. reflect "reflect"
  44. sync "sync"
  45. )
  46. type FieldDescriptorProto_Type int32
  47. const (
  48. // 0 is reserved for errors.
  49. // Order is weird for historical reasons.
  50. FieldDescriptorProto_TYPE_DOUBLE FieldDescriptorProto_Type = 1
  51. FieldDescriptorProto_TYPE_FLOAT FieldDescriptorProto_Type = 2
  52. // Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT64 if
  53. // negative values are likely.
  54. FieldDescriptorProto_TYPE_INT64 FieldDescriptorProto_Type = 3
  55. FieldDescriptorProto_TYPE_UINT64 FieldDescriptorProto_Type = 4
  56. // Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT32 if
  57. // negative values are likely.
  58. FieldDescriptorProto_TYPE_INT32 FieldDescriptorProto_Type = 5
  59. FieldDescriptorProto_TYPE_FIXED64 FieldDescriptorProto_Type = 6
  60. FieldDescriptorProto_TYPE_FIXED32 FieldDescriptorProto_Type = 7
  61. FieldDescriptorProto_TYPE_BOOL FieldDescriptorProto_Type = 8
  62. FieldDescriptorProto_TYPE_STRING FieldDescriptorProto_Type = 9
  63. // Tag-delimited aggregate.
  64. // Group type is deprecated and not supported in proto3. However, Proto3
  65. // implementations should still be able to parse the group wire format and
  66. // treat group fields as unknown fields.
  67. FieldDescriptorProto_TYPE_GROUP FieldDescriptorProto_Type = 10
  68. FieldDescriptorProto_TYPE_MESSAGE FieldDescriptorProto_Type = 11 // Length-delimited aggregate.
  69. // New in version 2.
  70. FieldDescriptorProto_TYPE_BYTES FieldDescriptorProto_Type = 12
  71. FieldDescriptorProto_TYPE_UINT32 FieldDescriptorProto_Type = 13
  72. FieldDescriptorProto_TYPE_ENUM FieldDescriptorProto_Type = 14
  73. FieldDescriptorProto_TYPE_SFIXED32 FieldDescriptorProto_Type = 15
  74. FieldDescriptorProto_TYPE_SFIXED64 FieldDescriptorProto_Type = 16
  75. FieldDescriptorProto_TYPE_SINT32 FieldDescriptorProto_Type = 17 // Uses ZigZag encoding.
  76. FieldDescriptorProto_TYPE_SINT64 FieldDescriptorProto_Type = 18 // Uses ZigZag encoding.
  77. )
  78. // Enum value maps for FieldDescriptorProto_Type.
  79. var (
  80. FieldDescriptorProto_Type_name = map[int32]string{
  81. 1: "TYPE_DOUBLE",
  82. 2: "TYPE_FLOAT",
  83. 3: "TYPE_INT64",
  84. 4: "TYPE_UINT64",
  85. 5: "TYPE_INT32",
  86. 6: "TYPE_FIXED64",
  87. 7: "TYPE_FIXED32",
  88. 8: "TYPE_BOOL",
  89. 9: "TYPE_STRING",
  90. 10: "TYPE_GROUP",
  91. 11: "TYPE_MESSAGE",
  92. 12: "TYPE_BYTES",
  93. 13: "TYPE_UINT32",
  94. 14: "TYPE_ENUM",
  95. 15: "TYPE_SFIXED32",
  96. 16: "TYPE_SFIXED64",
  97. 17: "TYPE_SINT32",
  98. 18: "TYPE_SINT64",
  99. }
  100. FieldDescriptorProto_Type_value = map[string]int32{
  101. "TYPE_DOUBLE": 1,
  102. "TYPE_FLOAT": 2,
  103. "TYPE_INT64": 3,
  104. "TYPE_UINT64": 4,
  105. "TYPE_INT32": 5,
  106. "TYPE_FIXED64": 6,
  107. "TYPE_FIXED32": 7,
  108. "TYPE_BOOL": 8,
  109. "TYPE_STRING": 9,
  110. "TYPE_GROUP": 10,
  111. "TYPE_MESSAGE": 11,
  112. "TYPE_BYTES": 12,
  113. "TYPE_UINT32": 13,
  114. "TYPE_ENUM": 14,
  115. "TYPE_SFIXED32": 15,
  116. "TYPE_SFIXED64": 16,
  117. "TYPE_SINT32": 17,
  118. "TYPE_SINT64": 18,
  119. }
  120. )
  121. func (x FieldDescriptorProto_Type) Enum() *FieldDescriptorProto_Type {
  122. p := new(FieldDescriptorProto_Type)
  123. *p = x
  124. return p
  125. }
  126. func (x FieldDescriptorProto_Type) String() string {
  127. return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
  128. }
  129. func (FieldDescriptorProto_Type) Descriptor() protoreflect.EnumDescriptor {
  130. return file_google_protobuf_descriptor_proto_enumTypes[0].Descriptor()
  131. }
  132. func (FieldDescriptorProto_Type) Type() protoreflect.EnumType {
  133. return &file_google_protobuf_descriptor_proto_enumTypes[0]
  134. }
  135. func (x FieldDescriptorProto_Type) Number() protoreflect.EnumNumber {
  136. return protoreflect.EnumNumber(x)
  137. }
  138. // Deprecated: Do not use.
  139. func (x *FieldDescriptorProto_Type) UnmarshalJSON(b []byte) error {
  140. num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
  141. if err != nil {
  142. return err
  143. }
  144. *x = FieldDescriptorProto_Type(num)
  145. return nil
  146. }
  147. // Deprecated: Use FieldDescriptorProto_Type.Descriptor instead.
  148. func (FieldDescriptorProto_Type) EnumDescriptor() ([]byte, []int) {
  149. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{4, 0}
  150. }
  151. type FieldDescriptorProto_Label int32
  152. const (
  153. // 0 is reserved for errors
  154. FieldDescriptorProto_LABEL_OPTIONAL FieldDescriptorProto_Label = 1
  155. FieldDescriptorProto_LABEL_REQUIRED FieldDescriptorProto_Label = 2
  156. FieldDescriptorProto_LABEL_REPEATED FieldDescriptorProto_Label = 3
  157. )
  158. // Enum value maps for FieldDescriptorProto_Label.
  159. var (
  160. FieldDescriptorProto_Label_name = map[int32]string{
  161. 1: "LABEL_OPTIONAL",
  162. 2: "LABEL_REQUIRED",
  163. 3: "LABEL_REPEATED",
  164. }
  165. FieldDescriptorProto_Label_value = map[string]int32{
  166. "LABEL_OPTIONAL": 1,
  167. "LABEL_REQUIRED": 2,
  168. "LABEL_REPEATED": 3,
  169. }
  170. )
  171. func (x FieldDescriptorProto_Label) Enum() *FieldDescriptorProto_Label {
  172. p := new(FieldDescriptorProto_Label)
  173. *p = x
  174. return p
  175. }
  176. func (x FieldDescriptorProto_Label) String() string {
  177. return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
  178. }
  179. func (FieldDescriptorProto_Label) Descriptor() protoreflect.EnumDescriptor {
  180. return file_google_protobuf_descriptor_proto_enumTypes[1].Descriptor()
  181. }
  182. func (FieldDescriptorProto_Label) Type() protoreflect.EnumType {
  183. return &file_google_protobuf_descriptor_proto_enumTypes[1]
  184. }
  185. func (x FieldDescriptorProto_Label) Number() protoreflect.EnumNumber {
  186. return protoreflect.EnumNumber(x)
  187. }
  188. // Deprecated: Do not use.
  189. func (x *FieldDescriptorProto_Label) UnmarshalJSON(b []byte) error {
  190. num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
  191. if err != nil {
  192. return err
  193. }
  194. *x = FieldDescriptorProto_Label(num)
  195. return nil
  196. }
  197. // Deprecated: Use FieldDescriptorProto_Label.Descriptor instead.
  198. func (FieldDescriptorProto_Label) EnumDescriptor() ([]byte, []int) {
  199. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{4, 1}
  200. }
  201. // Generated classes can be optimized for speed or code size.
  202. type FileOptions_OptimizeMode int32
  203. const (
  204. FileOptions_SPEED FileOptions_OptimizeMode = 1 // Generate complete code for parsing, serialization,
  205. // etc.
  206. FileOptions_CODE_SIZE FileOptions_OptimizeMode = 2 // Use ReflectionOps to implement these methods.
  207. FileOptions_LITE_RUNTIME FileOptions_OptimizeMode = 3 // Generate code using MessageLite and the lite runtime.
  208. )
  209. // Enum value maps for FileOptions_OptimizeMode.
  210. var (
  211. FileOptions_OptimizeMode_name = map[int32]string{
  212. 1: "SPEED",
  213. 2: "CODE_SIZE",
  214. 3: "LITE_RUNTIME",
  215. }
  216. FileOptions_OptimizeMode_value = map[string]int32{
  217. "SPEED": 1,
  218. "CODE_SIZE": 2,
  219. "LITE_RUNTIME": 3,
  220. }
  221. )
  222. func (x FileOptions_OptimizeMode) Enum() *FileOptions_OptimizeMode {
  223. p := new(FileOptions_OptimizeMode)
  224. *p = x
  225. return p
  226. }
  227. func (x FileOptions_OptimizeMode) String() string {
  228. return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
  229. }
  230. func (FileOptions_OptimizeMode) Descriptor() protoreflect.EnumDescriptor {
  231. return file_google_protobuf_descriptor_proto_enumTypes[2].Descriptor()
  232. }
  233. func (FileOptions_OptimizeMode) Type() protoreflect.EnumType {
  234. return &file_google_protobuf_descriptor_proto_enumTypes[2]
  235. }
  236. func (x FileOptions_OptimizeMode) Number() protoreflect.EnumNumber {
  237. return protoreflect.EnumNumber(x)
  238. }
  239. // Deprecated: Do not use.
  240. func (x *FileOptions_OptimizeMode) UnmarshalJSON(b []byte) error {
  241. num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
  242. if err != nil {
  243. return err
  244. }
  245. *x = FileOptions_OptimizeMode(num)
  246. return nil
  247. }
  248. // Deprecated: Use FileOptions_OptimizeMode.Descriptor instead.
  249. func (FileOptions_OptimizeMode) EnumDescriptor() ([]byte, []int) {
  250. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{10, 0}
  251. }
  252. type FieldOptions_CType int32
  253. const (
  254. // Default mode.
  255. FieldOptions_STRING FieldOptions_CType = 0
  256. FieldOptions_CORD FieldOptions_CType = 1
  257. FieldOptions_STRING_PIECE FieldOptions_CType = 2
  258. )
  259. // Enum value maps for FieldOptions_CType.
  260. var (
  261. FieldOptions_CType_name = map[int32]string{
  262. 0: "STRING",
  263. 1: "CORD",
  264. 2: "STRING_PIECE",
  265. }
  266. FieldOptions_CType_value = map[string]int32{
  267. "STRING": 0,
  268. "CORD": 1,
  269. "STRING_PIECE": 2,
  270. }
  271. )
  272. func (x FieldOptions_CType) Enum() *FieldOptions_CType {
  273. p := new(FieldOptions_CType)
  274. *p = x
  275. return p
  276. }
  277. func (x FieldOptions_CType) String() string {
  278. return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
  279. }
  280. func (FieldOptions_CType) Descriptor() protoreflect.EnumDescriptor {
  281. return file_google_protobuf_descriptor_proto_enumTypes[3].Descriptor()
  282. }
  283. func (FieldOptions_CType) Type() protoreflect.EnumType {
  284. return &file_google_protobuf_descriptor_proto_enumTypes[3]
  285. }
  286. func (x FieldOptions_CType) Number() protoreflect.EnumNumber {
  287. return protoreflect.EnumNumber(x)
  288. }
  289. // Deprecated: Do not use.
  290. func (x *FieldOptions_CType) UnmarshalJSON(b []byte) error {
  291. num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
  292. if err != nil {
  293. return err
  294. }
  295. *x = FieldOptions_CType(num)
  296. return nil
  297. }
  298. // Deprecated: Use FieldOptions_CType.Descriptor instead.
  299. func (FieldOptions_CType) EnumDescriptor() ([]byte, []int) {
  300. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{12, 0}
  301. }
  302. type FieldOptions_JSType int32
  303. const (
  304. // Use the default type.
  305. FieldOptions_JS_NORMAL FieldOptions_JSType = 0
  306. // Use JavaScript strings.
  307. FieldOptions_JS_STRING FieldOptions_JSType = 1
  308. // Use JavaScript numbers.
  309. FieldOptions_JS_NUMBER FieldOptions_JSType = 2
  310. )
  311. // Enum value maps for FieldOptions_JSType.
  312. var (
  313. FieldOptions_JSType_name = map[int32]string{
  314. 0: "JS_NORMAL",
  315. 1: "JS_STRING",
  316. 2: "JS_NUMBER",
  317. }
  318. FieldOptions_JSType_value = map[string]int32{
  319. "JS_NORMAL": 0,
  320. "JS_STRING": 1,
  321. "JS_NUMBER": 2,
  322. }
  323. )
  324. func (x FieldOptions_JSType) Enum() *FieldOptions_JSType {
  325. p := new(FieldOptions_JSType)
  326. *p = x
  327. return p
  328. }
  329. func (x FieldOptions_JSType) String() string {
  330. return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
  331. }
  332. func (FieldOptions_JSType) Descriptor() protoreflect.EnumDescriptor {
  333. return file_google_protobuf_descriptor_proto_enumTypes[4].Descriptor()
  334. }
  335. func (FieldOptions_JSType) Type() protoreflect.EnumType {
  336. return &file_google_protobuf_descriptor_proto_enumTypes[4]
  337. }
  338. func (x FieldOptions_JSType) Number() protoreflect.EnumNumber {
  339. return protoreflect.EnumNumber(x)
  340. }
  341. // Deprecated: Do not use.
  342. func (x *FieldOptions_JSType) UnmarshalJSON(b []byte) error {
  343. num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
  344. if err != nil {
  345. return err
  346. }
  347. *x = FieldOptions_JSType(num)
  348. return nil
  349. }
  350. // Deprecated: Use FieldOptions_JSType.Descriptor instead.
  351. func (FieldOptions_JSType) EnumDescriptor() ([]byte, []int) {
  352. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{12, 1}
  353. }
  354. // Is this method side-effect-free (or safe in HTTP parlance), or idempotent,
  355. // or neither? HTTP based RPC implementation may choose GET verb for safe
  356. // methods, and PUT verb for idempotent methods instead of the default POST.
  357. type MethodOptions_IdempotencyLevel int32
  358. const (
  359. MethodOptions_IDEMPOTENCY_UNKNOWN MethodOptions_IdempotencyLevel = 0
  360. MethodOptions_NO_SIDE_EFFECTS MethodOptions_IdempotencyLevel = 1 // implies idempotent
  361. MethodOptions_IDEMPOTENT MethodOptions_IdempotencyLevel = 2 // idempotent, but may have side effects
  362. )
  363. // Enum value maps for MethodOptions_IdempotencyLevel.
  364. var (
  365. MethodOptions_IdempotencyLevel_name = map[int32]string{
  366. 0: "IDEMPOTENCY_UNKNOWN",
  367. 1: "NO_SIDE_EFFECTS",
  368. 2: "IDEMPOTENT",
  369. }
  370. MethodOptions_IdempotencyLevel_value = map[string]int32{
  371. "IDEMPOTENCY_UNKNOWN": 0,
  372. "NO_SIDE_EFFECTS": 1,
  373. "IDEMPOTENT": 2,
  374. }
  375. )
  376. func (x MethodOptions_IdempotencyLevel) Enum() *MethodOptions_IdempotencyLevel {
  377. p := new(MethodOptions_IdempotencyLevel)
  378. *p = x
  379. return p
  380. }
  381. func (x MethodOptions_IdempotencyLevel) String() string {
  382. return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
  383. }
  384. func (MethodOptions_IdempotencyLevel) Descriptor() protoreflect.EnumDescriptor {
  385. return file_google_protobuf_descriptor_proto_enumTypes[5].Descriptor()
  386. }
  387. func (MethodOptions_IdempotencyLevel) Type() protoreflect.EnumType {
  388. return &file_google_protobuf_descriptor_proto_enumTypes[5]
  389. }
  390. func (x MethodOptions_IdempotencyLevel) Number() protoreflect.EnumNumber {
  391. return protoreflect.EnumNumber(x)
  392. }
  393. // Deprecated: Do not use.
  394. func (x *MethodOptions_IdempotencyLevel) UnmarshalJSON(b []byte) error {
  395. num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
  396. if err != nil {
  397. return err
  398. }
  399. *x = MethodOptions_IdempotencyLevel(num)
  400. return nil
  401. }
  402. // Deprecated: Use MethodOptions_IdempotencyLevel.Descriptor instead.
  403. func (MethodOptions_IdempotencyLevel) EnumDescriptor() ([]byte, []int) {
  404. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{17, 0}
  405. }
  406. // The protocol compiler can output a FileDescriptorSet containing the .proto
  407. // files it parses.
  408. type FileDescriptorSet struct {
  409. state protoimpl.MessageState
  410. sizeCache protoimpl.SizeCache
  411. unknownFields protoimpl.UnknownFields
  412. File []*FileDescriptorProto `protobuf:"bytes,1,rep,name=file" json:"file,omitempty"`
  413. }
  414. func (x *FileDescriptorSet) Reset() {
  415. *x = FileDescriptorSet{}
  416. if protoimpl.UnsafeEnabled {
  417. mi := &file_google_protobuf_descriptor_proto_msgTypes[0]
  418. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  419. ms.StoreMessageInfo(mi)
  420. }
  421. }
  422. func (x *FileDescriptorSet) String() string {
  423. return protoimpl.X.MessageStringOf(x)
  424. }
  425. func (*FileDescriptorSet) ProtoMessage() {}
  426. func (x *FileDescriptorSet) ProtoReflect() protoreflect.Message {
  427. mi := &file_google_protobuf_descriptor_proto_msgTypes[0]
  428. if protoimpl.UnsafeEnabled && x != nil {
  429. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  430. if ms.LoadMessageInfo() == nil {
  431. ms.StoreMessageInfo(mi)
  432. }
  433. return ms
  434. }
  435. return mi.MessageOf(x)
  436. }
  437. // Deprecated: Use FileDescriptorSet.ProtoReflect.Descriptor instead.
  438. func (*FileDescriptorSet) Descriptor() ([]byte, []int) {
  439. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{0}
  440. }
  441. func (x *FileDescriptorSet) GetFile() []*FileDescriptorProto {
  442. if x != nil {
  443. return x.File
  444. }
  445. return nil
  446. }
  447. // Describes a complete .proto file.
  448. type FileDescriptorProto struct {
  449. state protoimpl.MessageState
  450. sizeCache protoimpl.SizeCache
  451. unknownFields protoimpl.UnknownFields
  452. Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` // file name, relative to root of source tree
  453. Package *string `protobuf:"bytes,2,opt,name=package" json:"package,omitempty"` // e.g. "foo", "foo.bar", etc.
  454. // Names of files imported by this file.
  455. Dependency []string `protobuf:"bytes,3,rep,name=dependency" json:"dependency,omitempty"`
  456. // Indexes of the public imported files in the dependency list above.
  457. PublicDependency []int32 `protobuf:"varint,10,rep,name=public_dependency,json=publicDependency" json:"public_dependency,omitempty"`
  458. // Indexes of the weak imported files in the dependency list.
  459. // For Google-internal migration only. Do not use.
  460. WeakDependency []int32 `protobuf:"varint,11,rep,name=weak_dependency,json=weakDependency" json:"weak_dependency,omitempty"`
  461. // All top-level definitions in this file.
  462. MessageType []*DescriptorProto `protobuf:"bytes,4,rep,name=message_type,json=messageType" json:"message_type,omitempty"`
  463. EnumType []*EnumDescriptorProto `protobuf:"bytes,5,rep,name=enum_type,json=enumType" json:"enum_type,omitempty"`
  464. Service []*ServiceDescriptorProto `protobuf:"bytes,6,rep,name=service" json:"service,omitempty"`
  465. Extension []*FieldDescriptorProto `protobuf:"bytes,7,rep,name=extension" json:"extension,omitempty"`
  466. Options *FileOptions `protobuf:"bytes,8,opt,name=options" json:"options,omitempty"`
  467. // This field contains optional information about the original source code.
  468. // You may safely remove this entire field without harming runtime
  469. // functionality of the descriptors -- the information is needed only by
  470. // development tools.
  471. SourceCodeInfo *SourceCodeInfo `protobuf:"bytes,9,opt,name=source_code_info,json=sourceCodeInfo" json:"source_code_info,omitempty"`
  472. // The syntax of the proto file.
  473. // The supported values are "proto2" and "proto3".
  474. Syntax *string `protobuf:"bytes,12,opt,name=syntax" json:"syntax,omitempty"`
  475. }
  476. func (x *FileDescriptorProto) Reset() {
  477. *x = FileDescriptorProto{}
  478. if protoimpl.UnsafeEnabled {
  479. mi := &file_google_protobuf_descriptor_proto_msgTypes[1]
  480. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  481. ms.StoreMessageInfo(mi)
  482. }
  483. }
  484. func (x *FileDescriptorProto) String() string {
  485. return protoimpl.X.MessageStringOf(x)
  486. }
  487. func (*FileDescriptorProto) ProtoMessage() {}
  488. func (x *FileDescriptorProto) ProtoReflect() protoreflect.Message {
  489. mi := &file_google_protobuf_descriptor_proto_msgTypes[1]
  490. if protoimpl.UnsafeEnabled && x != nil {
  491. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  492. if ms.LoadMessageInfo() == nil {
  493. ms.StoreMessageInfo(mi)
  494. }
  495. return ms
  496. }
  497. return mi.MessageOf(x)
  498. }
  499. // Deprecated: Use FileDescriptorProto.ProtoReflect.Descriptor instead.
  500. func (*FileDescriptorProto) Descriptor() ([]byte, []int) {
  501. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{1}
  502. }
  503. func (x *FileDescriptorProto) GetName() string {
  504. if x != nil && x.Name != nil {
  505. return *x.Name
  506. }
  507. return ""
  508. }
  509. func (x *FileDescriptorProto) GetPackage() string {
  510. if x != nil && x.Package != nil {
  511. return *x.Package
  512. }
  513. return ""
  514. }
  515. func (x *FileDescriptorProto) GetDependency() []string {
  516. if x != nil {
  517. return x.Dependency
  518. }
  519. return nil
  520. }
  521. func (x *FileDescriptorProto) GetPublicDependency() []int32 {
  522. if x != nil {
  523. return x.PublicDependency
  524. }
  525. return nil
  526. }
  527. func (x *FileDescriptorProto) GetWeakDependency() []int32 {
  528. if x != nil {
  529. return x.WeakDependency
  530. }
  531. return nil
  532. }
  533. func (x *FileDescriptorProto) GetMessageType() []*DescriptorProto {
  534. if x != nil {
  535. return x.MessageType
  536. }
  537. return nil
  538. }
  539. func (x *FileDescriptorProto) GetEnumType() []*EnumDescriptorProto {
  540. if x != nil {
  541. return x.EnumType
  542. }
  543. return nil
  544. }
  545. func (x *FileDescriptorProto) GetService() []*ServiceDescriptorProto {
  546. if x != nil {
  547. return x.Service
  548. }
  549. return nil
  550. }
  551. func (x *FileDescriptorProto) GetExtension() []*FieldDescriptorProto {
  552. if x != nil {
  553. return x.Extension
  554. }
  555. return nil
  556. }
  557. func (x *FileDescriptorProto) GetOptions() *FileOptions {
  558. if x != nil {
  559. return x.Options
  560. }
  561. return nil
  562. }
  563. func (x *FileDescriptorProto) GetSourceCodeInfo() *SourceCodeInfo {
  564. if x != nil {
  565. return x.SourceCodeInfo
  566. }
  567. return nil
  568. }
  569. func (x *FileDescriptorProto) GetSyntax() string {
  570. if x != nil && x.Syntax != nil {
  571. return *x.Syntax
  572. }
  573. return ""
  574. }
  575. // Describes a message type.
  576. type DescriptorProto struct {
  577. state protoimpl.MessageState
  578. sizeCache protoimpl.SizeCache
  579. unknownFields protoimpl.UnknownFields
  580. Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  581. Field []*FieldDescriptorProto `protobuf:"bytes,2,rep,name=field" json:"field,omitempty"`
  582. Extension []*FieldDescriptorProto `protobuf:"bytes,6,rep,name=extension" json:"extension,omitempty"`
  583. NestedType []*DescriptorProto `protobuf:"bytes,3,rep,name=nested_type,json=nestedType" json:"nested_type,omitempty"`
  584. EnumType []*EnumDescriptorProto `protobuf:"bytes,4,rep,name=enum_type,json=enumType" json:"enum_type,omitempty"`
  585. ExtensionRange []*DescriptorProto_ExtensionRange `protobuf:"bytes,5,rep,name=extension_range,json=extensionRange" json:"extension_range,omitempty"`
  586. OneofDecl []*OneofDescriptorProto `protobuf:"bytes,8,rep,name=oneof_decl,json=oneofDecl" json:"oneof_decl,omitempty"`
  587. Options *MessageOptions `protobuf:"bytes,7,opt,name=options" json:"options,omitempty"`
  588. ReservedRange []*DescriptorProto_ReservedRange `protobuf:"bytes,9,rep,name=reserved_range,json=reservedRange" json:"reserved_range,omitempty"`
  589. // Reserved field names, which may not be used by fields in the same message.
  590. // A given name may only be reserved once.
  591. ReservedName []string `protobuf:"bytes,10,rep,name=reserved_name,json=reservedName" json:"reserved_name,omitempty"`
  592. }
  593. func (x *DescriptorProto) Reset() {
  594. *x = DescriptorProto{}
  595. if protoimpl.UnsafeEnabled {
  596. mi := &file_google_protobuf_descriptor_proto_msgTypes[2]
  597. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  598. ms.StoreMessageInfo(mi)
  599. }
  600. }
  601. func (x *DescriptorProto) String() string {
  602. return protoimpl.X.MessageStringOf(x)
  603. }
  604. func (*DescriptorProto) ProtoMessage() {}
  605. func (x *DescriptorProto) ProtoReflect() protoreflect.Message {
  606. mi := &file_google_protobuf_descriptor_proto_msgTypes[2]
  607. if protoimpl.UnsafeEnabled && x != nil {
  608. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  609. if ms.LoadMessageInfo() == nil {
  610. ms.StoreMessageInfo(mi)
  611. }
  612. return ms
  613. }
  614. return mi.MessageOf(x)
  615. }
  616. // Deprecated: Use DescriptorProto.ProtoReflect.Descriptor instead.
  617. func (*DescriptorProto) Descriptor() ([]byte, []int) {
  618. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{2}
  619. }
  620. func (x *DescriptorProto) GetName() string {
  621. if x != nil && x.Name != nil {
  622. return *x.Name
  623. }
  624. return ""
  625. }
  626. func (x *DescriptorProto) GetField() []*FieldDescriptorProto {
  627. if x != nil {
  628. return x.Field
  629. }
  630. return nil
  631. }
  632. func (x *DescriptorProto) GetExtension() []*FieldDescriptorProto {
  633. if x != nil {
  634. return x.Extension
  635. }
  636. return nil
  637. }
  638. func (x *DescriptorProto) GetNestedType() []*DescriptorProto {
  639. if x != nil {
  640. return x.NestedType
  641. }
  642. return nil
  643. }
  644. func (x *DescriptorProto) GetEnumType() []*EnumDescriptorProto {
  645. if x != nil {
  646. return x.EnumType
  647. }
  648. return nil
  649. }
  650. func (x *DescriptorProto) GetExtensionRange() []*DescriptorProto_ExtensionRange {
  651. if x != nil {
  652. return x.ExtensionRange
  653. }
  654. return nil
  655. }
  656. func (x *DescriptorProto) GetOneofDecl() []*OneofDescriptorProto {
  657. if x != nil {
  658. return x.OneofDecl
  659. }
  660. return nil
  661. }
  662. func (x *DescriptorProto) GetOptions() *MessageOptions {
  663. if x != nil {
  664. return x.Options
  665. }
  666. return nil
  667. }
  668. func (x *DescriptorProto) GetReservedRange() []*DescriptorProto_ReservedRange {
  669. if x != nil {
  670. return x.ReservedRange
  671. }
  672. return nil
  673. }
  674. func (x *DescriptorProto) GetReservedName() []string {
  675. if x != nil {
  676. return x.ReservedName
  677. }
  678. return nil
  679. }
  680. type ExtensionRangeOptions struct {
  681. state protoimpl.MessageState
  682. sizeCache protoimpl.SizeCache
  683. unknownFields protoimpl.UnknownFields
  684. extensionFields protoimpl.ExtensionFields
  685. // The parser stores options it doesn't recognize here. See above.
  686. UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
  687. }
  688. func (x *ExtensionRangeOptions) Reset() {
  689. *x = ExtensionRangeOptions{}
  690. if protoimpl.UnsafeEnabled {
  691. mi := &file_google_protobuf_descriptor_proto_msgTypes[3]
  692. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  693. ms.StoreMessageInfo(mi)
  694. }
  695. }
  696. func (x *ExtensionRangeOptions) String() string {
  697. return protoimpl.X.MessageStringOf(x)
  698. }
  699. func (*ExtensionRangeOptions) ProtoMessage() {}
  700. func (x *ExtensionRangeOptions) ProtoReflect() protoreflect.Message {
  701. mi := &file_google_protobuf_descriptor_proto_msgTypes[3]
  702. if protoimpl.UnsafeEnabled && x != nil {
  703. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  704. if ms.LoadMessageInfo() == nil {
  705. ms.StoreMessageInfo(mi)
  706. }
  707. return ms
  708. }
  709. return mi.MessageOf(x)
  710. }
  711. // Deprecated: Use ExtensionRangeOptions.ProtoReflect.Descriptor instead.
  712. func (*ExtensionRangeOptions) Descriptor() ([]byte, []int) {
  713. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{3}
  714. }
  715. func (x *ExtensionRangeOptions) GetUninterpretedOption() []*UninterpretedOption {
  716. if x != nil {
  717. return x.UninterpretedOption
  718. }
  719. return nil
  720. }
  721. // Describes a field within a message.
  722. type FieldDescriptorProto struct {
  723. state protoimpl.MessageState
  724. sizeCache protoimpl.SizeCache
  725. unknownFields protoimpl.UnknownFields
  726. Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  727. Number *int32 `protobuf:"varint,3,opt,name=number" json:"number,omitempty"`
  728. Label *FieldDescriptorProto_Label `protobuf:"varint,4,opt,name=label,enum=google.protobuf.FieldDescriptorProto_Label" json:"label,omitempty"`
  729. // If type_name is set, this need not be set. If both this and type_name
  730. // are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
  731. Type *FieldDescriptorProto_Type `protobuf:"varint,5,opt,name=type,enum=google.protobuf.FieldDescriptorProto_Type" json:"type,omitempty"`
  732. // For message and enum types, this is the name of the type. If the name
  733. // starts with a '.', it is fully-qualified. Otherwise, C++-like scoping
  734. // rules are used to find the type (i.e. first the nested types within this
  735. // message are searched, then within the parent, on up to the root
  736. // namespace).
  737. TypeName *string `protobuf:"bytes,6,opt,name=type_name,json=typeName" json:"type_name,omitempty"`
  738. // For extensions, this is the name of the type being extended. It is
  739. // resolved in the same manner as type_name.
  740. Extendee *string `protobuf:"bytes,2,opt,name=extendee" json:"extendee,omitempty"`
  741. // For numeric types, contains the original text representation of the value.
  742. // For booleans, "true" or "false".
  743. // For strings, contains the default text contents (not escaped in any way).
  744. // For bytes, contains the C escaped value. All bytes >= 128 are escaped.
  745. // TODO(kenton): Base-64 encode?
  746. DefaultValue *string `protobuf:"bytes,7,opt,name=default_value,json=defaultValue" json:"default_value,omitempty"`
  747. // If set, gives the index of a oneof in the containing type's oneof_decl
  748. // list. This field is a member of that oneof.
  749. OneofIndex *int32 `protobuf:"varint,9,opt,name=oneof_index,json=oneofIndex" json:"oneof_index,omitempty"`
  750. // JSON name of this field. The value is set by protocol compiler. If the
  751. // user has set a "json_name" option on this field, that option's value
  752. // will be used. Otherwise, it's deduced from the field's name by converting
  753. // it to camelCase.
  754. JsonName *string `protobuf:"bytes,10,opt,name=json_name,json=jsonName" json:"json_name,omitempty"`
  755. Options *FieldOptions `protobuf:"bytes,8,opt,name=options" json:"options,omitempty"`
  756. // If true, this is a proto3 "optional". When a proto3 field is optional, it
  757. // tracks presence regardless of field type.
  758. //
  759. // When proto3_optional is true, this field must be belong to a oneof to
  760. // signal to old proto3 clients that presence is tracked for this field. This
  761. // oneof is known as a "synthetic" oneof, and this field must be its sole
  762. // member (each proto3 optional field gets its own synthetic oneof). Synthetic
  763. // oneofs exist in the descriptor only, and do not generate any API. Synthetic
  764. // oneofs must be ordered after all "real" oneofs.
  765. //
  766. // For message fields, proto3_optional doesn't create any semantic change,
  767. // since non-repeated message fields always track presence. However it still
  768. // indicates the semantic detail of whether the user wrote "optional" or not.
  769. // This can be useful for round-tripping the .proto file. For consistency we
  770. // give message fields a synthetic oneof also, even though it is not required
  771. // to track presence. This is especially important because the parser can't
  772. // tell if a field is a message or an enum, so it must always create a
  773. // synthetic oneof.
  774. //
  775. // Proto2 optional fields do not set this flag, because they already indicate
  776. // optional with `LABEL_OPTIONAL`.
  777. Proto3Optional *bool `protobuf:"varint,17,opt,name=proto3_optional,json=proto3Optional" json:"proto3_optional,omitempty"`
  778. }
  779. func (x *FieldDescriptorProto) Reset() {
  780. *x = FieldDescriptorProto{}
  781. if protoimpl.UnsafeEnabled {
  782. mi := &file_google_protobuf_descriptor_proto_msgTypes[4]
  783. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  784. ms.StoreMessageInfo(mi)
  785. }
  786. }
  787. func (x *FieldDescriptorProto) String() string {
  788. return protoimpl.X.MessageStringOf(x)
  789. }
  790. func (*FieldDescriptorProto) ProtoMessage() {}
  791. func (x *FieldDescriptorProto) ProtoReflect() protoreflect.Message {
  792. mi := &file_google_protobuf_descriptor_proto_msgTypes[4]
  793. if protoimpl.UnsafeEnabled && x != nil {
  794. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  795. if ms.LoadMessageInfo() == nil {
  796. ms.StoreMessageInfo(mi)
  797. }
  798. return ms
  799. }
  800. return mi.MessageOf(x)
  801. }
  802. // Deprecated: Use FieldDescriptorProto.ProtoReflect.Descriptor instead.
  803. func (*FieldDescriptorProto) Descriptor() ([]byte, []int) {
  804. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{4}
  805. }
  806. func (x *FieldDescriptorProto) GetName() string {
  807. if x != nil && x.Name != nil {
  808. return *x.Name
  809. }
  810. return ""
  811. }
  812. func (x *FieldDescriptorProto) GetNumber() int32 {
  813. if x != nil && x.Number != nil {
  814. return *x.Number
  815. }
  816. return 0
  817. }
  818. func (x *FieldDescriptorProto) GetLabel() FieldDescriptorProto_Label {
  819. if x != nil && x.Label != nil {
  820. return *x.Label
  821. }
  822. return FieldDescriptorProto_LABEL_OPTIONAL
  823. }
  824. func (x *FieldDescriptorProto) GetType() FieldDescriptorProto_Type {
  825. if x != nil && x.Type != nil {
  826. return *x.Type
  827. }
  828. return FieldDescriptorProto_TYPE_DOUBLE
  829. }
  830. func (x *FieldDescriptorProto) GetTypeName() string {
  831. if x != nil && x.TypeName != nil {
  832. return *x.TypeName
  833. }
  834. return ""
  835. }
  836. func (x *FieldDescriptorProto) GetExtendee() string {
  837. if x != nil && x.Extendee != nil {
  838. return *x.Extendee
  839. }
  840. return ""
  841. }
  842. func (x *FieldDescriptorProto) GetDefaultValue() string {
  843. if x != nil && x.DefaultValue != nil {
  844. return *x.DefaultValue
  845. }
  846. return ""
  847. }
  848. func (x *FieldDescriptorProto) GetOneofIndex() int32 {
  849. if x != nil && x.OneofIndex != nil {
  850. return *x.OneofIndex
  851. }
  852. return 0
  853. }
  854. func (x *FieldDescriptorProto) GetJsonName() string {
  855. if x != nil && x.JsonName != nil {
  856. return *x.JsonName
  857. }
  858. return ""
  859. }
  860. func (x *FieldDescriptorProto) GetOptions() *FieldOptions {
  861. if x != nil {
  862. return x.Options
  863. }
  864. return nil
  865. }
  866. func (x *FieldDescriptorProto) GetProto3Optional() bool {
  867. if x != nil && x.Proto3Optional != nil {
  868. return *x.Proto3Optional
  869. }
  870. return false
  871. }
  872. // Describes a oneof.
  873. type OneofDescriptorProto struct {
  874. state protoimpl.MessageState
  875. sizeCache protoimpl.SizeCache
  876. unknownFields protoimpl.UnknownFields
  877. Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  878. Options *OneofOptions `protobuf:"bytes,2,opt,name=options" json:"options,omitempty"`
  879. }
  880. func (x *OneofDescriptorProto) Reset() {
  881. *x = OneofDescriptorProto{}
  882. if protoimpl.UnsafeEnabled {
  883. mi := &file_google_protobuf_descriptor_proto_msgTypes[5]
  884. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  885. ms.StoreMessageInfo(mi)
  886. }
  887. }
  888. func (x *OneofDescriptorProto) String() string {
  889. return protoimpl.X.MessageStringOf(x)
  890. }
  891. func (*OneofDescriptorProto) ProtoMessage() {}
  892. func (x *OneofDescriptorProto) ProtoReflect() protoreflect.Message {
  893. mi := &file_google_protobuf_descriptor_proto_msgTypes[5]
  894. if protoimpl.UnsafeEnabled && x != nil {
  895. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  896. if ms.LoadMessageInfo() == nil {
  897. ms.StoreMessageInfo(mi)
  898. }
  899. return ms
  900. }
  901. return mi.MessageOf(x)
  902. }
  903. // Deprecated: Use OneofDescriptorProto.ProtoReflect.Descriptor instead.
  904. func (*OneofDescriptorProto) Descriptor() ([]byte, []int) {
  905. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{5}
  906. }
  907. func (x *OneofDescriptorProto) GetName() string {
  908. if x != nil && x.Name != nil {
  909. return *x.Name
  910. }
  911. return ""
  912. }
  913. func (x *OneofDescriptorProto) GetOptions() *OneofOptions {
  914. if x != nil {
  915. return x.Options
  916. }
  917. return nil
  918. }
  919. // Describes an enum type.
  920. type EnumDescriptorProto struct {
  921. state protoimpl.MessageState
  922. sizeCache protoimpl.SizeCache
  923. unknownFields protoimpl.UnknownFields
  924. Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  925. Value []*EnumValueDescriptorProto `protobuf:"bytes,2,rep,name=value" json:"value,omitempty"`
  926. Options *EnumOptions `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"`
  927. // Range of reserved numeric values. Reserved numeric values may not be used
  928. // by enum values in the same enum declaration. Reserved ranges may not
  929. // overlap.
  930. ReservedRange []*EnumDescriptorProto_EnumReservedRange `protobuf:"bytes,4,rep,name=reserved_range,json=reservedRange" json:"reserved_range,omitempty"`
  931. // Reserved enum value names, which may not be reused. A given name may only
  932. // be reserved once.
  933. ReservedName []string `protobuf:"bytes,5,rep,name=reserved_name,json=reservedName" json:"reserved_name,omitempty"`
  934. }
  935. func (x *EnumDescriptorProto) Reset() {
  936. *x = EnumDescriptorProto{}
  937. if protoimpl.UnsafeEnabled {
  938. mi := &file_google_protobuf_descriptor_proto_msgTypes[6]
  939. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  940. ms.StoreMessageInfo(mi)
  941. }
  942. }
  943. func (x *EnumDescriptorProto) String() string {
  944. return protoimpl.X.MessageStringOf(x)
  945. }
  946. func (*EnumDescriptorProto) ProtoMessage() {}
  947. func (x *EnumDescriptorProto) ProtoReflect() protoreflect.Message {
  948. mi := &file_google_protobuf_descriptor_proto_msgTypes[6]
  949. if protoimpl.UnsafeEnabled && x != nil {
  950. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  951. if ms.LoadMessageInfo() == nil {
  952. ms.StoreMessageInfo(mi)
  953. }
  954. return ms
  955. }
  956. return mi.MessageOf(x)
  957. }
  958. // Deprecated: Use EnumDescriptorProto.ProtoReflect.Descriptor instead.
  959. func (*EnumDescriptorProto) Descriptor() ([]byte, []int) {
  960. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{6}
  961. }
  962. func (x *EnumDescriptorProto) GetName() string {
  963. if x != nil && x.Name != nil {
  964. return *x.Name
  965. }
  966. return ""
  967. }
  968. func (x *EnumDescriptorProto) GetValue() []*EnumValueDescriptorProto {
  969. if x != nil {
  970. return x.Value
  971. }
  972. return nil
  973. }
  974. func (x *EnumDescriptorProto) GetOptions() *EnumOptions {
  975. if x != nil {
  976. return x.Options
  977. }
  978. return nil
  979. }
  980. func (x *EnumDescriptorProto) GetReservedRange() []*EnumDescriptorProto_EnumReservedRange {
  981. if x != nil {
  982. return x.ReservedRange
  983. }
  984. return nil
  985. }
  986. func (x *EnumDescriptorProto) GetReservedName() []string {
  987. if x != nil {
  988. return x.ReservedName
  989. }
  990. return nil
  991. }
  992. // Describes a value within an enum.
  993. type EnumValueDescriptorProto struct {
  994. state protoimpl.MessageState
  995. sizeCache protoimpl.SizeCache
  996. unknownFields protoimpl.UnknownFields
  997. Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  998. Number *int32 `protobuf:"varint,2,opt,name=number" json:"number,omitempty"`
  999. Options *EnumValueOptions `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"`
  1000. }
  1001. func (x *EnumValueDescriptorProto) Reset() {
  1002. *x = EnumValueDescriptorProto{}
  1003. if protoimpl.UnsafeEnabled {
  1004. mi := &file_google_protobuf_descriptor_proto_msgTypes[7]
  1005. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1006. ms.StoreMessageInfo(mi)
  1007. }
  1008. }
  1009. func (x *EnumValueDescriptorProto) String() string {
  1010. return protoimpl.X.MessageStringOf(x)
  1011. }
  1012. func (*EnumValueDescriptorProto) ProtoMessage() {}
  1013. func (x *EnumValueDescriptorProto) ProtoReflect() protoreflect.Message {
  1014. mi := &file_google_protobuf_descriptor_proto_msgTypes[7]
  1015. if protoimpl.UnsafeEnabled && x != nil {
  1016. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1017. if ms.LoadMessageInfo() == nil {
  1018. ms.StoreMessageInfo(mi)
  1019. }
  1020. return ms
  1021. }
  1022. return mi.MessageOf(x)
  1023. }
  1024. // Deprecated: Use EnumValueDescriptorProto.ProtoReflect.Descriptor instead.
  1025. func (*EnumValueDescriptorProto) Descriptor() ([]byte, []int) {
  1026. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{7}
  1027. }
  1028. func (x *EnumValueDescriptorProto) GetName() string {
  1029. if x != nil && x.Name != nil {
  1030. return *x.Name
  1031. }
  1032. return ""
  1033. }
  1034. func (x *EnumValueDescriptorProto) GetNumber() int32 {
  1035. if x != nil && x.Number != nil {
  1036. return *x.Number
  1037. }
  1038. return 0
  1039. }
  1040. func (x *EnumValueDescriptorProto) GetOptions() *EnumValueOptions {
  1041. if x != nil {
  1042. return x.Options
  1043. }
  1044. return nil
  1045. }
  1046. // Describes a service.
  1047. type ServiceDescriptorProto struct {
  1048. state protoimpl.MessageState
  1049. sizeCache protoimpl.SizeCache
  1050. unknownFields protoimpl.UnknownFields
  1051. Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  1052. Method []*MethodDescriptorProto `protobuf:"bytes,2,rep,name=method" json:"method,omitempty"`
  1053. Options *ServiceOptions `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"`
  1054. }
  1055. func (x *ServiceDescriptorProto) Reset() {
  1056. *x = ServiceDescriptorProto{}
  1057. if protoimpl.UnsafeEnabled {
  1058. mi := &file_google_protobuf_descriptor_proto_msgTypes[8]
  1059. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1060. ms.StoreMessageInfo(mi)
  1061. }
  1062. }
  1063. func (x *ServiceDescriptorProto) String() string {
  1064. return protoimpl.X.MessageStringOf(x)
  1065. }
  1066. func (*ServiceDescriptorProto) ProtoMessage() {}
  1067. func (x *ServiceDescriptorProto) ProtoReflect() protoreflect.Message {
  1068. mi := &file_google_protobuf_descriptor_proto_msgTypes[8]
  1069. if protoimpl.UnsafeEnabled && x != nil {
  1070. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1071. if ms.LoadMessageInfo() == nil {
  1072. ms.StoreMessageInfo(mi)
  1073. }
  1074. return ms
  1075. }
  1076. return mi.MessageOf(x)
  1077. }
  1078. // Deprecated: Use ServiceDescriptorProto.ProtoReflect.Descriptor instead.
  1079. func (*ServiceDescriptorProto) Descriptor() ([]byte, []int) {
  1080. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{8}
  1081. }
  1082. func (x *ServiceDescriptorProto) GetName() string {
  1083. if x != nil && x.Name != nil {
  1084. return *x.Name
  1085. }
  1086. return ""
  1087. }
  1088. func (x *ServiceDescriptorProto) GetMethod() []*MethodDescriptorProto {
  1089. if x != nil {
  1090. return x.Method
  1091. }
  1092. return nil
  1093. }
  1094. func (x *ServiceDescriptorProto) GetOptions() *ServiceOptions {
  1095. if x != nil {
  1096. return x.Options
  1097. }
  1098. return nil
  1099. }
  1100. // Describes a method of a service.
  1101. type MethodDescriptorProto struct {
  1102. state protoimpl.MessageState
  1103. sizeCache protoimpl.SizeCache
  1104. unknownFields protoimpl.UnknownFields
  1105. Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  1106. // Input and output type names. These are resolved in the same way as
  1107. // FieldDescriptorProto.type_name, but must refer to a message type.
  1108. InputType *string `protobuf:"bytes,2,opt,name=input_type,json=inputType" json:"input_type,omitempty"`
  1109. OutputType *string `protobuf:"bytes,3,opt,name=output_type,json=outputType" json:"output_type,omitempty"`
  1110. Options *MethodOptions `protobuf:"bytes,4,opt,name=options" json:"options,omitempty"`
  1111. // Identifies if client streams multiple client messages
  1112. ClientStreaming *bool `protobuf:"varint,5,opt,name=client_streaming,json=clientStreaming,def=0" json:"client_streaming,omitempty"`
  1113. // Identifies if server streams multiple server messages
  1114. ServerStreaming *bool `protobuf:"varint,6,opt,name=server_streaming,json=serverStreaming,def=0" json:"server_streaming,omitempty"`
  1115. }
  1116. // Default values for MethodDescriptorProto fields.
  1117. const (
  1118. Default_MethodDescriptorProto_ClientStreaming = bool(false)
  1119. Default_MethodDescriptorProto_ServerStreaming = bool(false)
  1120. )
  1121. func (x *MethodDescriptorProto) Reset() {
  1122. *x = MethodDescriptorProto{}
  1123. if protoimpl.UnsafeEnabled {
  1124. mi := &file_google_protobuf_descriptor_proto_msgTypes[9]
  1125. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1126. ms.StoreMessageInfo(mi)
  1127. }
  1128. }
  1129. func (x *MethodDescriptorProto) String() string {
  1130. return protoimpl.X.MessageStringOf(x)
  1131. }
  1132. func (*MethodDescriptorProto) ProtoMessage() {}
  1133. func (x *MethodDescriptorProto) ProtoReflect() protoreflect.Message {
  1134. mi := &file_google_protobuf_descriptor_proto_msgTypes[9]
  1135. if protoimpl.UnsafeEnabled && x != nil {
  1136. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1137. if ms.LoadMessageInfo() == nil {
  1138. ms.StoreMessageInfo(mi)
  1139. }
  1140. return ms
  1141. }
  1142. return mi.MessageOf(x)
  1143. }
  1144. // Deprecated: Use MethodDescriptorProto.ProtoReflect.Descriptor instead.
  1145. func (*MethodDescriptorProto) Descriptor() ([]byte, []int) {
  1146. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{9}
  1147. }
  1148. func (x *MethodDescriptorProto) GetName() string {
  1149. if x != nil && x.Name != nil {
  1150. return *x.Name
  1151. }
  1152. return ""
  1153. }
  1154. func (x *MethodDescriptorProto) GetInputType() string {
  1155. if x != nil && x.InputType != nil {
  1156. return *x.InputType
  1157. }
  1158. return ""
  1159. }
  1160. func (x *MethodDescriptorProto) GetOutputType() string {
  1161. if x != nil && x.OutputType != nil {
  1162. return *x.OutputType
  1163. }
  1164. return ""
  1165. }
  1166. func (x *MethodDescriptorProto) GetOptions() *MethodOptions {
  1167. if x != nil {
  1168. return x.Options
  1169. }
  1170. return nil
  1171. }
  1172. func (x *MethodDescriptorProto) GetClientStreaming() bool {
  1173. if x != nil && x.ClientStreaming != nil {
  1174. return *x.ClientStreaming
  1175. }
  1176. return Default_MethodDescriptorProto_ClientStreaming
  1177. }
  1178. func (x *MethodDescriptorProto) GetServerStreaming() bool {
  1179. if x != nil && x.ServerStreaming != nil {
  1180. return *x.ServerStreaming
  1181. }
  1182. return Default_MethodDescriptorProto_ServerStreaming
  1183. }
  1184. type FileOptions struct {
  1185. state protoimpl.MessageState
  1186. sizeCache protoimpl.SizeCache
  1187. unknownFields protoimpl.UnknownFields
  1188. extensionFields protoimpl.ExtensionFields
  1189. // Sets the Java package where classes generated from this .proto will be
  1190. // placed. By default, the proto package is used, but this is often
  1191. // inappropriate because proto packages do not normally start with backwards
  1192. // domain names.
  1193. JavaPackage *string `protobuf:"bytes,1,opt,name=java_package,json=javaPackage" json:"java_package,omitempty"`
  1194. // If set, all the classes from the .proto file are wrapped in a single
  1195. // outer class with the given name. This applies to both Proto1
  1196. // (equivalent to the old "--one_java_file" option) and Proto2 (where
  1197. // a .proto always translates to a single class, but you may want to
  1198. // explicitly choose the class name).
  1199. JavaOuterClassname *string `protobuf:"bytes,8,opt,name=java_outer_classname,json=javaOuterClassname" json:"java_outer_classname,omitempty"`
  1200. // If set true, then the Java code generator will generate a separate .java
  1201. // file for each top-level message, enum, and service defined in the .proto
  1202. // file. Thus, these types will *not* be nested inside the outer class
  1203. // named by java_outer_classname. However, the outer class will still be
  1204. // generated to contain the file's getDescriptor() method as well as any
  1205. // top-level extensions defined in the file.
  1206. JavaMultipleFiles *bool `protobuf:"varint,10,opt,name=java_multiple_files,json=javaMultipleFiles,def=0" json:"java_multiple_files,omitempty"`
  1207. // This option does nothing.
  1208. //
  1209. // Deprecated: Do not use.
  1210. JavaGenerateEqualsAndHash *bool `protobuf:"varint,20,opt,name=java_generate_equals_and_hash,json=javaGenerateEqualsAndHash" json:"java_generate_equals_and_hash,omitempty"`
  1211. // If set true, then the Java2 code generator will generate code that
  1212. // throws an exception whenever an attempt is made to assign a non-UTF-8
  1213. // byte sequence to a string field.
  1214. // Message reflection will do the same.
  1215. // However, an extension field still accepts non-UTF-8 byte sequences.
  1216. // This option has no effect on when used with the lite runtime.
  1217. JavaStringCheckUtf8 *bool `protobuf:"varint,27,opt,name=java_string_check_utf8,json=javaStringCheckUtf8,def=0" json:"java_string_check_utf8,omitempty"`
  1218. OptimizeFor *FileOptions_OptimizeMode `protobuf:"varint,9,opt,name=optimize_for,json=optimizeFor,enum=google.protobuf.FileOptions_OptimizeMode,def=1" json:"optimize_for,omitempty"`
  1219. // Sets the Go package where structs generated from this .proto will be
  1220. // placed. If omitted, the Go package will be derived from the following:
  1221. // - The basename of the package import path, if provided.
  1222. // - Otherwise, the package statement in the .proto file, if present.
  1223. // - Otherwise, the basename of the .proto file, without extension.
  1224. GoPackage *string `protobuf:"bytes,11,opt,name=go_package,json=goPackage" json:"go_package,omitempty"`
  1225. // Should generic services be generated in each language? "Generic" services
  1226. // are not specific to any particular RPC system. They are generated by the
  1227. // main code generators in each language (without additional plugins).
  1228. // Generic services were the only kind of service generation supported by
  1229. // early versions of google.protobuf.
  1230. //
  1231. // Generic services are now considered deprecated in favor of using plugins
  1232. // that generate code specific to your particular RPC system. Therefore,
  1233. // these default to false. Old code which depends on generic services should
  1234. // explicitly set them to true.
  1235. CcGenericServices *bool `protobuf:"varint,16,opt,name=cc_generic_services,json=ccGenericServices,def=0" json:"cc_generic_services,omitempty"`
  1236. JavaGenericServices *bool `protobuf:"varint,17,opt,name=java_generic_services,json=javaGenericServices,def=0" json:"java_generic_services,omitempty"`
  1237. PyGenericServices *bool `protobuf:"varint,18,opt,name=py_generic_services,json=pyGenericServices,def=0" json:"py_generic_services,omitempty"`
  1238. PhpGenericServices *bool `protobuf:"varint,42,opt,name=php_generic_services,json=phpGenericServices,def=0" json:"php_generic_services,omitempty"`
  1239. // Is this file deprecated?
  1240. // Depending on the target platform, this can emit Deprecated annotations
  1241. // for everything in the file, or it will be completely ignored; in the very
  1242. // least, this is a formalization for deprecating files.
  1243. Deprecated *bool `protobuf:"varint,23,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
  1244. // Enables the use of arenas for the proto messages in this file. This applies
  1245. // only to generated classes for C++.
  1246. CcEnableArenas *bool `protobuf:"varint,31,opt,name=cc_enable_arenas,json=ccEnableArenas,def=1" json:"cc_enable_arenas,omitempty"`
  1247. // Sets the objective c class prefix which is prepended to all objective c
  1248. // generated classes from this .proto. There is no default.
  1249. ObjcClassPrefix *string `protobuf:"bytes,36,opt,name=objc_class_prefix,json=objcClassPrefix" json:"objc_class_prefix,omitempty"`
  1250. // Namespace for generated classes; defaults to the package.
  1251. CsharpNamespace *string `protobuf:"bytes,37,opt,name=csharp_namespace,json=csharpNamespace" json:"csharp_namespace,omitempty"`
  1252. // By default Swift generators will take the proto package and CamelCase it
  1253. // replacing '.' with underscore and use that to prefix the types/symbols
  1254. // defined. When this options is provided, they will use this value instead
  1255. // to prefix the types/symbols defined.
  1256. SwiftPrefix *string `protobuf:"bytes,39,opt,name=swift_prefix,json=swiftPrefix" json:"swift_prefix,omitempty"`
  1257. // Sets the php class prefix which is prepended to all php generated classes
  1258. // from this .proto. Default is empty.
  1259. PhpClassPrefix *string `protobuf:"bytes,40,opt,name=php_class_prefix,json=phpClassPrefix" json:"php_class_prefix,omitempty"`
  1260. // Use this option to change the namespace of php generated classes. Default
  1261. // is empty. When this option is empty, the package name will be used for
  1262. // determining the namespace.
  1263. PhpNamespace *string `protobuf:"bytes,41,opt,name=php_namespace,json=phpNamespace" json:"php_namespace,omitempty"`
  1264. // Use this option to change the namespace of php generated metadata classes.
  1265. // Default is empty. When this option is empty, the proto file name will be
  1266. // used for determining the namespace.
  1267. PhpMetadataNamespace *string `protobuf:"bytes,44,opt,name=php_metadata_namespace,json=phpMetadataNamespace" json:"php_metadata_namespace,omitempty"`
  1268. // Use this option to change the package of ruby generated classes. Default
  1269. // is empty. When this option is not set, the package name will be used for
  1270. // determining the ruby package.
  1271. RubyPackage *string `protobuf:"bytes,45,opt,name=ruby_package,json=rubyPackage" json:"ruby_package,omitempty"`
  1272. // The parser stores options it doesn't recognize here.
  1273. // See the documentation for the "Options" section above.
  1274. UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
  1275. }
  1276. // Default values for FileOptions fields.
  1277. const (
  1278. Default_FileOptions_JavaMultipleFiles = bool(false)
  1279. Default_FileOptions_JavaStringCheckUtf8 = bool(false)
  1280. Default_FileOptions_OptimizeFor = FileOptions_SPEED
  1281. Default_FileOptions_CcGenericServices = bool(false)
  1282. Default_FileOptions_JavaGenericServices = bool(false)
  1283. Default_FileOptions_PyGenericServices = bool(false)
  1284. Default_FileOptions_PhpGenericServices = bool(false)
  1285. Default_FileOptions_Deprecated = bool(false)
  1286. Default_FileOptions_CcEnableArenas = bool(true)
  1287. )
  1288. func (x *FileOptions) Reset() {
  1289. *x = FileOptions{}
  1290. if protoimpl.UnsafeEnabled {
  1291. mi := &file_google_protobuf_descriptor_proto_msgTypes[10]
  1292. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1293. ms.StoreMessageInfo(mi)
  1294. }
  1295. }
  1296. func (x *FileOptions) String() string {
  1297. return protoimpl.X.MessageStringOf(x)
  1298. }
  1299. func (*FileOptions) ProtoMessage() {}
  1300. func (x *FileOptions) ProtoReflect() protoreflect.Message {
  1301. mi := &file_google_protobuf_descriptor_proto_msgTypes[10]
  1302. if protoimpl.UnsafeEnabled && x != nil {
  1303. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1304. if ms.LoadMessageInfo() == nil {
  1305. ms.StoreMessageInfo(mi)
  1306. }
  1307. return ms
  1308. }
  1309. return mi.MessageOf(x)
  1310. }
  1311. // Deprecated: Use FileOptions.ProtoReflect.Descriptor instead.
  1312. func (*FileOptions) Descriptor() ([]byte, []int) {
  1313. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{10}
  1314. }
  1315. func (x *FileOptions) GetJavaPackage() string {
  1316. if x != nil && x.JavaPackage != nil {
  1317. return *x.JavaPackage
  1318. }
  1319. return ""
  1320. }
  1321. func (x *FileOptions) GetJavaOuterClassname() string {
  1322. if x != nil && x.JavaOuterClassname != nil {
  1323. return *x.JavaOuterClassname
  1324. }
  1325. return ""
  1326. }
  1327. func (x *FileOptions) GetJavaMultipleFiles() bool {
  1328. if x != nil && x.JavaMultipleFiles != nil {
  1329. return *x.JavaMultipleFiles
  1330. }
  1331. return Default_FileOptions_JavaMultipleFiles
  1332. }
  1333. // Deprecated: Do not use.
  1334. func (x *FileOptions) GetJavaGenerateEqualsAndHash() bool {
  1335. if x != nil && x.JavaGenerateEqualsAndHash != nil {
  1336. return *x.JavaGenerateEqualsAndHash
  1337. }
  1338. return false
  1339. }
  1340. func (x *FileOptions) GetJavaStringCheckUtf8() bool {
  1341. if x != nil && x.JavaStringCheckUtf8 != nil {
  1342. return *x.JavaStringCheckUtf8
  1343. }
  1344. return Default_FileOptions_JavaStringCheckUtf8
  1345. }
  1346. func (x *FileOptions) GetOptimizeFor() FileOptions_OptimizeMode {
  1347. if x != nil && x.OptimizeFor != nil {
  1348. return *x.OptimizeFor
  1349. }
  1350. return Default_FileOptions_OptimizeFor
  1351. }
  1352. func (x *FileOptions) GetGoPackage() string {
  1353. if x != nil && x.GoPackage != nil {
  1354. return *x.GoPackage
  1355. }
  1356. return ""
  1357. }
  1358. func (x *FileOptions) GetCcGenericServices() bool {
  1359. if x != nil && x.CcGenericServices != nil {
  1360. return *x.CcGenericServices
  1361. }
  1362. return Default_FileOptions_CcGenericServices
  1363. }
  1364. func (x *FileOptions) GetJavaGenericServices() bool {
  1365. if x != nil && x.JavaGenericServices != nil {
  1366. return *x.JavaGenericServices
  1367. }
  1368. return Default_FileOptions_JavaGenericServices
  1369. }
  1370. func (x *FileOptions) GetPyGenericServices() bool {
  1371. if x != nil && x.PyGenericServices != nil {
  1372. return *x.PyGenericServices
  1373. }
  1374. return Default_FileOptions_PyGenericServices
  1375. }
  1376. func (x *FileOptions) GetPhpGenericServices() bool {
  1377. if x != nil && x.PhpGenericServices != nil {
  1378. return *x.PhpGenericServices
  1379. }
  1380. return Default_FileOptions_PhpGenericServices
  1381. }
  1382. func (x *FileOptions) GetDeprecated() bool {
  1383. if x != nil && x.Deprecated != nil {
  1384. return *x.Deprecated
  1385. }
  1386. return Default_FileOptions_Deprecated
  1387. }
  1388. func (x *FileOptions) GetCcEnableArenas() bool {
  1389. if x != nil && x.CcEnableArenas != nil {
  1390. return *x.CcEnableArenas
  1391. }
  1392. return Default_FileOptions_CcEnableArenas
  1393. }
  1394. func (x *FileOptions) GetObjcClassPrefix() string {
  1395. if x != nil && x.ObjcClassPrefix != nil {
  1396. return *x.ObjcClassPrefix
  1397. }
  1398. return ""
  1399. }
  1400. func (x *FileOptions) GetCsharpNamespace() string {
  1401. if x != nil && x.CsharpNamespace != nil {
  1402. return *x.CsharpNamespace
  1403. }
  1404. return ""
  1405. }
  1406. func (x *FileOptions) GetSwiftPrefix() string {
  1407. if x != nil && x.SwiftPrefix != nil {
  1408. return *x.SwiftPrefix
  1409. }
  1410. return ""
  1411. }
  1412. func (x *FileOptions) GetPhpClassPrefix() string {
  1413. if x != nil && x.PhpClassPrefix != nil {
  1414. return *x.PhpClassPrefix
  1415. }
  1416. return ""
  1417. }
  1418. func (x *FileOptions) GetPhpNamespace() string {
  1419. if x != nil && x.PhpNamespace != nil {
  1420. return *x.PhpNamespace
  1421. }
  1422. return ""
  1423. }
  1424. func (x *FileOptions) GetPhpMetadataNamespace() string {
  1425. if x != nil && x.PhpMetadataNamespace != nil {
  1426. return *x.PhpMetadataNamespace
  1427. }
  1428. return ""
  1429. }
  1430. func (x *FileOptions) GetRubyPackage() string {
  1431. if x != nil && x.RubyPackage != nil {
  1432. return *x.RubyPackage
  1433. }
  1434. return ""
  1435. }
  1436. func (x *FileOptions) GetUninterpretedOption() []*UninterpretedOption {
  1437. if x != nil {
  1438. return x.UninterpretedOption
  1439. }
  1440. return nil
  1441. }
  1442. type MessageOptions struct {
  1443. state protoimpl.MessageState
  1444. sizeCache protoimpl.SizeCache
  1445. unknownFields protoimpl.UnknownFields
  1446. extensionFields protoimpl.ExtensionFields
  1447. // Set true to use the old proto1 MessageSet wire format for extensions.
  1448. // This is provided for backwards-compatibility with the MessageSet wire
  1449. // format. You should not use this for any other reason: It's less
  1450. // efficient, has fewer features, and is more complicated.
  1451. //
  1452. // The message must be defined exactly as follows:
  1453. // message Foo {
  1454. // option message_set_wire_format = true;
  1455. // extensions 4 to max;
  1456. // }
  1457. // Note that the message cannot have any defined fields; MessageSets only
  1458. // have extensions.
  1459. //
  1460. // All extensions of your type must be singular messages; e.g. they cannot
  1461. // be int32s, enums, or repeated messages.
  1462. //
  1463. // Because this is an option, the above two restrictions are not enforced by
  1464. // the protocol compiler.
  1465. MessageSetWireFormat *bool `protobuf:"varint,1,opt,name=message_set_wire_format,json=messageSetWireFormat,def=0" json:"message_set_wire_format,omitempty"`
  1466. // Disables the generation of the standard "descriptor()" accessor, which can
  1467. // conflict with a field of the same name. This is meant to make migration
  1468. // from proto1 easier; new code should avoid fields named "descriptor".
  1469. NoStandardDescriptorAccessor *bool `protobuf:"varint,2,opt,name=no_standard_descriptor_accessor,json=noStandardDescriptorAccessor,def=0" json:"no_standard_descriptor_accessor,omitempty"`
  1470. // Is this message deprecated?
  1471. // Depending on the target platform, this can emit Deprecated annotations
  1472. // for the message, or it will be completely ignored; in the very least,
  1473. // this is a formalization for deprecating messages.
  1474. Deprecated *bool `protobuf:"varint,3,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
  1475. // Whether the message is an automatically generated map entry type for the
  1476. // maps field.
  1477. //
  1478. // For maps fields:
  1479. // map<KeyType, ValueType> map_field = 1;
  1480. // The parsed descriptor looks like:
  1481. // message MapFieldEntry {
  1482. // option map_entry = true;
  1483. // optional KeyType key = 1;
  1484. // optional ValueType value = 2;
  1485. // }
  1486. // repeated MapFieldEntry map_field = 1;
  1487. //
  1488. // Implementations may choose not to generate the map_entry=true message, but
  1489. // use a native map in the target language to hold the keys and values.
  1490. // The reflection APIs in such implementations still need to work as
  1491. // if the field is a repeated message field.
  1492. //
  1493. // NOTE: Do not set the option in .proto files. Always use the maps syntax
  1494. // instead. The option should only be implicitly set by the proto compiler
  1495. // parser.
  1496. MapEntry *bool `protobuf:"varint,7,opt,name=map_entry,json=mapEntry" json:"map_entry,omitempty"`
  1497. // The parser stores options it doesn't recognize here. See above.
  1498. UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
  1499. }
  1500. // Default values for MessageOptions fields.
  1501. const (
  1502. Default_MessageOptions_MessageSetWireFormat = bool(false)
  1503. Default_MessageOptions_NoStandardDescriptorAccessor = bool(false)
  1504. Default_MessageOptions_Deprecated = bool(false)
  1505. )
  1506. func (x *MessageOptions) Reset() {
  1507. *x = MessageOptions{}
  1508. if protoimpl.UnsafeEnabled {
  1509. mi := &file_google_protobuf_descriptor_proto_msgTypes[11]
  1510. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1511. ms.StoreMessageInfo(mi)
  1512. }
  1513. }
  1514. func (x *MessageOptions) String() string {
  1515. return protoimpl.X.MessageStringOf(x)
  1516. }
  1517. func (*MessageOptions) ProtoMessage() {}
  1518. func (x *MessageOptions) ProtoReflect() protoreflect.Message {
  1519. mi := &file_google_protobuf_descriptor_proto_msgTypes[11]
  1520. if protoimpl.UnsafeEnabled && x != nil {
  1521. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1522. if ms.LoadMessageInfo() == nil {
  1523. ms.StoreMessageInfo(mi)
  1524. }
  1525. return ms
  1526. }
  1527. return mi.MessageOf(x)
  1528. }
  1529. // Deprecated: Use MessageOptions.ProtoReflect.Descriptor instead.
  1530. func (*MessageOptions) Descriptor() ([]byte, []int) {
  1531. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{11}
  1532. }
  1533. func (x *MessageOptions) GetMessageSetWireFormat() bool {
  1534. if x != nil && x.MessageSetWireFormat != nil {
  1535. return *x.MessageSetWireFormat
  1536. }
  1537. return Default_MessageOptions_MessageSetWireFormat
  1538. }
  1539. func (x *MessageOptions) GetNoStandardDescriptorAccessor() bool {
  1540. if x != nil && x.NoStandardDescriptorAccessor != nil {
  1541. return *x.NoStandardDescriptorAccessor
  1542. }
  1543. return Default_MessageOptions_NoStandardDescriptorAccessor
  1544. }
  1545. func (x *MessageOptions) GetDeprecated() bool {
  1546. if x != nil && x.Deprecated != nil {
  1547. return *x.Deprecated
  1548. }
  1549. return Default_MessageOptions_Deprecated
  1550. }
  1551. func (x *MessageOptions) GetMapEntry() bool {
  1552. if x != nil && x.MapEntry != nil {
  1553. return *x.MapEntry
  1554. }
  1555. return false
  1556. }
  1557. func (x *MessageOptions) GetUninterpretedOption() []*UninterpretedOption {
  1558. if x != nil {
  1559. return x.UninterpretedOption
  1560. }
  1561. return nil
  1562. }
  1563. type FieldOptions struct {
  1564. state protoimpl.MessageState
  1565. sizeCache protoimpl.SizeCache
  1566. unknownFields protoimpl.UnknownFields
  1567. extensionFields protoimpl.ExtensionFields
  1568. // The ctype option instructs the C++ code generator to use a different
  1569. // representation of the field than it normally would. See the specific
  1570. // options below. This option is not yet implemented in the open source
  1571. // release -- sorry, we'll try to include it in a future version!
  1572. Ctype *FieldOptions_CType `protobuf:"varint,1,opt,name=ctype,enum=google.protobuf.FieldOptions_CType,def=0" json:"ctype,omitempty"`
  1573. // The packed option can be enabled for repeated primitive fields to enable
  1574. // a more efficient representation on the wire. Rather than repeatedly
  1575. // writing the tag and type for each element, the entire array is encoded as
  1576. // a single length-delimited blob. In proto3, only explicit setting it to
  1577. // false will avoid using packed encoding.
  1578. Packed *bool `protobuf:"varint,2,opt,name=packed" json:"packed,omitempty"`
  1579. // The jstype option determines the JavaScript type used for values of the
  1580. // field. The option is permitted only for 64 bit integral and fixed types
  1581. // (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING
  1582. // is represented as JavaScript string, which avoids loss of precision that
  1583. // can happen when a large value is converted to a floating point JavaScript.
  1584. // Specifying JS_NUMBER for the jstype causes the generated JavaScript code to
  1585. // use the JavaScript "number" type. The behavior of the default option
  1586. // JS_NORMAL is implementation dependent.
  1587. //
  1588. // This option is an enum to permit additional types to be added, e.g.
  1589. // goog.math.Integer.
  1590. Jstype *FieldOptions_JSType `protobuf:"varint,6,opt,name=jstype,enum=google.protobuf.FieldOptions_JSType,def=0" json:"jstype,omitempty"`
  1591. // Should this field be parsed lazily? Lazy applies only to message-type
  1592. // fields. It means that when the outer message is initially parsed, the
  1593. // inner message's contents will not be parsed but instead stored in encoded
  1594. // form. The inner message will actually be parsed when it is first accessed.
  1595. //
  1596. // This is only a hint. Implementations are free to choose whether to use
  1597. // eager or lazy parsing regardless of the value of this option. However,
  1598. // setting this option true suggests that the protocol author believes that
  1599. // using lazy parsing on this field is worth the additional bookkeeping
  1600. // overhead typically needed to implement it.
  1601. //
  1602. // This option does not affect the public interface of any generated code;
  1603. // all method signatures remain the same. Furthermore, thread-safety of the
  1604. // interface is not affected by this option; const methods remain safe to
  1605. // call from multiple threads concurrently, while non-const methods continue
  1606. // to require exclusive access.
  1607. //
  1608. //
  1609. // Note that implementations may choose not to check required fields within
  1610. // a lazy sub-message. That is, calling IsInitialized() on the outer message
  1611. // may return true even if the inner message has missing required fields.
  1612. // This is necessary because otherwise the inner message would have to be
  1613. // parsed in order to perform the check, defeating the purpose of lazy
  1614. // parsing. An implementation which chooses not to check required fields
  1615. // must be consistent about it. That is, for any particular sub-message, the
  1616. // implementation must either *always* check its required fields, or *never*
  1617. // check its required fields, regardless of whether or not the message has
  1618. // been parsed.
  1619. Lazy *bool `protobuf:"varint,5,opt,name=lazy,def=0" json:"lazy,omitempty"`
  1620. // Is this field deprecated?
  1621. // Depending on the target platform, this can emit Deprecated annotations
  1622. // for accessors, or it will be completely ignored; in the very least, this
  1623. // is a formalization for deprecating fields.
  1624. Deprecated *bool `protobuf:"varint,3,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
  1625. // For Google-internal migration only. Do not use.
  1626. Weak *bool `protobuf:"varint,10,opt,name=weak,def=0" json:"weak,omitempty"`
  1627. // The parser stores options it doesn't recognize here. See above.
  1628. UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
  1629. }
  1630. // Default values for FieldOptions fields.
  1631. const (
  1632. Default_FieldOptions_Ctype = FieldOptions_STRING
  1633. Default_FieldOptions_Jstype = FieldOptions_JS_NORMAL
  1634. Default_FieldOptions_Lazy = bool(false)
  1635. Default_FieldOptions_Deprecated = bool(false)
  1636. Default_FieldOptions_Weak = bool(false)
  1637. )
  1638. func (x *FieldOptions) Reset() {
  1639. *x = FieldOptions{}
  1640. if protoimpl.UnsafeEnabled {
  1641. mi := &file_google_protobuf_descriptor_proto_msgTypes[12]
  1642. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1643. ms.StoreMessageInfo(mi)
  1644. }
  1645. }
  1646. func (x *FieldOptions) String() string {
  1647. return protoimpl.X.MessageStringOf(x)
  1648. }
  1649. func (*FieldOptions) ProtoMessage() {}
  1650. func (x *FieldOptions) ProtoReflect() protoreflect.Message {
  1651. mi := &file_google_protobuf_descriptor_proto_msgTypes[12]
  1652. if protoimpl.UnsafeEnabled && x != nil {
  1653. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1654. if ms.LoadMessageInfo() == nil {
  1655. ms.StoreMessageInfo(mi)
  1656. }
  1657. return ms
  1658. }
  1659. return mi.MessageOf(x)
  1660. }
  1661. // Deprecated: Use FieldOptions.ProtoReflect.Descriptor instead.
  1662. func (*FieldOptions) Descriptor() ([]byte, []int) {
  1663. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{12}
  1664. }
  1665. func (x *FieldOptions) GetCtype() FieldOptions_CType {
  1666. if x != nil && x.Ctype != nil {
  1667. return *x.Ctype
  1668. }
  1669. return Default_FieldOptions_Ctype
  1670. }
  1671. func (x *FieldOptions) GetPacked() bool {
  1672. if x != nil && x.Packed != nil {
  1673. return *x.Packed
  1674. }
  1675. return false
  1676. }
  1677. func (x *FieldOptions) GetJstype() FieldOptions_JSType {
  1678. if x != nil && x.Jstype != nil {
  1679. return *x.Jstype
  1680. }
  1681. return Default_FieldOptions_Jstype
  1682. }
  1683. func (x *FieldOptions) GetLazy() bool {
  1684. if x != nil && x.Lazy != nil {
  1685. return *x.Lazy
  1686. }
  1687. return Default_FieldOptions_Lazy
  1688. }
  1689. func (x *FieldOptions) GetDeprecated() bool {
  1690. if x != nil && x.Deprecated != nil {
  1691. return *x.Deprecated
  1692. }
  1693. return Default_FieldOptions_Deprecated
  1694. }
  1695. func (x *FieldOptions) GetWeak() bool {
  1696. if x != nil && x.Weak != nil {
  1697. return *x.Weak
  1698. }
  1699. return Default_FieldOptions_Weak
  1700. }
  1701. func (x *FieldOptions) GetUninterpretedOption() []*UninterpretedOption {
  1702. if x != nil {
  1703. return x.UninterpretedOption
  1704. }
  1705. return nil
  1706. }
  1707. type OneofOptions struct {
  1708. state protoimpl.MessageState
  1709. sizeCache protoimpl.SizeCache
  1710. unknownFields protoimpl.UnknownFields
  1711. extensionFields protoimpl.ExtensionFields
  1712. // The parser stores options it doesn't recognize here. See above.
  1713. UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
  1714. }
  1715. func (x *OneofOptions) Reset() {
  1716. *x = OneofOptions{}
  1717. if protoimpl.UnsafeEnabled {
  1718. mi := &file_google_protobuf_descriptor_proto_msgTypes[13]
  1719. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1720. ms.StoreMessageInfo(mi)
  1721. }
  1722. }
  1723. func (x *OneofOptions) String() string {
  1724. return protoimpl.X.MessageStringOf(x)
  1725. }
  1726. func (*OneofOptions) ProtoMessage() {}
  1727. func (x *OneofOptions) ProtoReflect() protoreflect.Message {
  1728. mi := &file_google_protobuf_descriptor_proto_msgTypes[13]
  1729. if protoimpl.UnsafeEnabled && x != nil {
  1730. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1731. if ms.LoadMessageInfo() == nil {
  1732. ms.StoreMessageInfo(mi)
  1733. }
  1734. return ms
  1735. }
  1736. return mi.MessageOf(x)
  1737. }
  1738. // Deprecated: Use OneofOptions.ProtoReflect.Descriptor instead.
  1739. func (*OneofOptions) Descriptor() ([]byte, []int) {
  1740. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{13}
  1741. }
  1742. func (x *OneofOptions) GetUninterpretedOption() []*UninterpretedOption {
  1743. if x != nil {
  1744. return x.UninterpretedOption
  1745. }
  1746. return nil
  1747. }
  1748. type EnumOptions struct {
  1749. state protoimpl.MessageState
  1750. sizeCache protoimpl.SizeCache
  1751. unknownFields protoimpl.UnknownFields
  1752. extensionFields protoimpl.ExtensionFields
  1753. // Set this option to true to allow mapping different tag names to the same
  1754. // value.
  1755. AllowAlias *bool `protobuf:"varint,2,opt,name=allow_alias,json=allowAlias" json:"allow_alias,omitempty"`
  1756. // Is this enum deprecated?
  1757. // Depending on the target platform, this can emit Deprecated annotations
  1758. // for the enum, or it will be completely ignored; in the very least, this
  1759. // is a formalization for deprecating enums.
  1760. Deprecated *bool `protobuf:"varint,3,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
  1761. // The parser stores options it doesn't recognize here. See above.
  1762. UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
  1763. }
  1764. // Default values for EnumOptions fields.
  1765. const (
  1766. Default_EnumOptions_Deprecated = bool(false)
  1767. )
  1768. func (x *EnumOptions) Reset() {
  1769. *x = EnumOptions{}
  1770. if protoimpl.UnsafeEnabled {
  1771. mi := &file_google_protobuf_descriptor_proto_msgTypes[14]
  1772. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1773. ms.StoreMessageInfo(mi)
  1774. }
  1775. }
  1776. func (x *EnumOptions) String() string {
  1777. return protoimpl.X.MessageStringOf(x)
  1778. }
  1779. func (*EnumOptions) ProtoMessage() {}
  1780. func (x *EnumOptions) ProtoReflect() protoreflect.Message {
  1781. mi := &file_google_protobuf_descriptor_proto_msgTypes[14]
  1782. if protoimpl.UnsafeEnabled && x != nil {
  1783. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1784. if ms.LoadMessageInfo() == nil {
  1785. ms.StoreMessageInfo(mi)
  1786. }
  1787. return ms
  1788. }
  1789. return mi.MessageOf(x)
  1790. }
  1791. // Deprecated: Use EnumOptions.ProtoReflect.Descriptor instead.
  1792. func (*EnumOptions) Descriptor() ([]byte, []int) {
  1793. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{14}
  1794. }
  1795. func (x *EnumOptions) GetAllowAlias() bool {
  1796. if x != nil && x.AllowAlias != nil {
  1797. return *x.AllowAlias
  1798. }
  1799. return false
  1800. }
  1801. func (x *EnumOptions) GetDeprecated() bool {
  1802. if x != nil && x.Deprecated != nil {
  1803. return *x.Deprecated
  1804. }
  1805. return Default_EnumOptions_Deprecated
  1806. }
  1807. func (x *EnumOptions) GetUninterpretedOption() []*UninterpretedOption {
  1808. if x != nil {
  1809. return x.UninterpretedOption
  1810. }
  1811. return nil
  1812. }
  1813. type EnumValueOptions struct {
  1814. state protoimpl.MessageState
  1815. sizeCache protoimpl.SizeCache
  1816. unknownFields protoimpl.UnknownFields
  1817. extensionFields protoimpl.ExtensionFields
  1818. // Is this enum value deprecated?
  1819. // Depending on the target platform, this can emit Deprecated annotations
  1820. // for the enum value, or it will be completely ignored; in the very least,
  1821. // this is a formalization for deprecating enum values.
  1822. Deprecated *bool `protobuf:"varint,1,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
  1823. // The parser stores options it doesn't recognize here. See above.
  1824. UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
  1825. }
  1826. // Default values for EnumValueOptions fields.
  1827. const (
  1828. Default_EnumValueOptions_Deprecated = bool(false)
  1829. )
  1830. func (x *EnumValueOptions) Reset() {
  1831. *x = EnumValueOptions{}
  1832. if protoimpl.UnsafeEnabled {
  1833. mi := &file_google_protobuf_descriptor_proto_msgTypes[15]
  1834. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1835. ms.StoreMessageInfo(mi)
  1836. }
  1837. }
  1838. func (x *EnumValueOptions) String() string {
  1839. return protoimpl.X.MessageStringOf(x)
  1840. }
  1841. func (*EnumValueOptions) ProtoMessage() {}
  1842. func (x *EnumValueOptions) ProtoReflect() protoreflect.Message {
  1843. mi := &file_google_protobuf_descriptor_proto_msgTypes[15]
  1844. if protoimpl.UnsafeEnabled && x != nil {
  1845. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1846. if ms.LoadMessageInfo() == nil {
  1847. ms.StoreMessageInfo(mi)
  1848. }
  1849. return ms
  1850. }
  1851. return mi.MessageOf(x)
  1852. }
  1853. // Deprecated: Use EnumValueOptions.ProtoReflect.Descriptor instead.
  1854. func (*EnumValueOptions) Descriptor() ([]byte, []int) {
  1855. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{15}
  1856. }
  1857. func (x *EnumValueOptions) GetDeprecated() bool {
  1858. if x != nil && x.Deprecated != nil {
  1859. return *x.Deprecated
  1860. }
  1861. return Default_EnumValueOptions_Deprecated
  1862. }
  1863. func (x *EnumValueOptions) GetUninterpretedOption() []*UninterpretedOption {
  1864. if x != nil {
  1865. return x.UninterpretedOption
  1866. }
  1867. return nil
  1868. }
  1869. type ServiceOptions struct {
  1870. state protoimpl.MessageState
  1871. sizeCache protoimpl.SizeCache
  1872. unknownFields protoimpl.UnknownFields
  1873. extensionFields protoimpl.ExtensionFields
  1874. // Is this service deprecated?
  1875. // Depending on the target platform, this can emit Deprecated annotations
  1876. // for the service, or it will be completely ignored; in the very least,
  1877. // this is a formalization for deprecating services.
  1878. Deprecated *bool `protobuf:"varint,33,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
  1879. // The parser stores options it doesn't recognize here. See above.
  1880. UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
  1881. }
  1882. // Default values for ServiceOptions fields.
  1883. const (
  1884. Default_ServiceOptions_Deprecated = bool(false)
  1885. )
  1886. func (x *ServiceOptions) Reset() {
  1887. *x = ServiceOptions{}
  1888. if protoimpl.UnsafeEnabled {
  1889. mi := &file_google_protobuf_descriptor_proto_msgTypes[16]
  1890. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1891. ms.StoreMessageInfo(mi)
  1892. }
  1893. }
  1894. func (x *ServiceOptions) String() string {
  1895. return protoimpl.X.MessageStringOf(x)
  1896. }
  1897. func (*ServiceOptions) ProtoMessage() {}
  1898. func (x *ServiceOptions) ProtoReflect() protoreflect.Message {
  1899. mi := &file_google_protobuf_descriptor_proto_msgTypes[16]
  1900. if protoimpl.UnsafeEnabled && x != nil {
  1901. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1902. if ms.LoadMessageInfo() == nil {
  1903. ms.StoreMessageInfo(mi)
  1904. }
  1905. return ms
  1906. }
  1907. return mi.MessageOf(x)
  1908. }
  1909. // Deprecated: Use ServiceOptions.ProtoReflect.Descriptor instead.
  1910. func (*ServiceOptions) Descriptor() ([]byte, []int) {
  1911. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{16}
  1912. }
  1913. func (x *ServiceOptions) GetDeprecated() bool {
  1914. if x != nil && x.Deprecated != nil {
  1915. return *x.Deprecated
  1916. }
  1917. return Default_ServiceOptions_Deprecated
  1918. }
  1919. func (x *ServiceOptions) GetUninterpretedOption() []*UninterpretedOption {
  1920. if x != nil {
  1921. return x.UninterpretedOption
  1922. }
  1923. return nil
  1924. }
  1925. type MethodOptions struct {
  1926. state protoimpl.MessageState
  1927. sizeCache protoimpl.SizeCache
  1928. unknownFields protoimpl.UnknownFields
  1929. extensionFields protoimpl.ExtensionFields
  1930. // Is this method deprecated?
  1931. // Depending on the target platform, this can emit Deprecated annotations
  1932. // for the method, or it will be completely ignored; in the very least,
  1933. // this is a formalization for deprecating methods.
  1934. Deprecated *bool `protobuf:"varint,33,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
  1935. IdempotencyLevel *MethodOptions_IdempotencyLevel `protobuf:"varint,34,opt,name=idempotency_level,json=idempotencyLevel,enum=google.protobuf.MethodOptions_IdempotencyLevel,def=0" json:"idempotency_level,omitempty"`
  1936. // The parser stores options it doesn't recognize here. See above.
  1937. UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
  1938. }
  1939. // Default values for MethodOptions fields.
  1940. const (
  1941. Default_MethodOptions_Deprecated = bool(false)
  1942. Default_MethodOptions_IdempotencyLevel = MethodOptions_IDEMPOTENCY_UNKNOWN
  1943. )
  1944. func (x *MethodOptions) Reset() {
  1945. *x = MethodOptions{}
  1946. if protoimpl.UnsafeEnabled {
  1947. mi := &file_google_protobuf_descriptor_proto_msgTypes[17]
  1948. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1949. ms.StoreMessageInfo(mi)
  1950. }
  1951. }
  1952. func (x *MethodOptions) String() string {
  1953. return protoimpl.X.MessageStringOf(x)
  1954. }
  1955. func (*MethodOptions) ProtoMessage() {}
  1956. func (x *MethodOptions) ProtoReflect() protoreflect.Message {
  1957. mi := &file_google_protobuf_descriptor_proto_msgTypes[17]
  1958. if protoimpl.UnsafeEnabled && x != nil {
  1959. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1960. if ms.LoadMessageInfo() == nil {
  1961. ms.StoreMessageInfo(mi)
  1962. }
  1963. return ms
  1964. }
  1965. return mi.MessageOf(x)
  1966. }
  1967. // Deprecated: Use MethodOptions.ProtoReflect.Descriptor instead.
  1968. func (*MethodOptions) Descriptor() ([]byte, []int) {
  1969. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{17}
  1970. }
  1971. func (x *MethodOptions) GetDeprecated() bool {
  1972. if x != nil && x.Deprecated != nil {
  1973. return *x.Deprecated
  1974. }
  1975. return Default_MethodOptions_Deprecated
  1976. }
  1977. func (x *MethodOptions) GetIdempotencyLevel() MethodOptions_IdempotencyLevel {
  1978. if x != nil && x.IdempotencyLevel != nil {
  1979. return *x.IdempotencyLevel
  1980. }
  1981. return Default_MethodOptions_IdempotencyLevel
  1982. }
  1983. func (x *MethodOptions) GetUninterpretedOption() []*UninterpretedOption {
  1984. if x != nil {
  1985. return x.UninterpretedOption
  1986. }
  1987. return nil
  1988. }
  1989. // A message representing a option the parser does not recognize. This only
  1990. // appears in options protos created by the compiler::Parser class.
  1991. // DescriptorPool resolves these when building Descriptor objects. Therefore,
  1992. // options protos in descriptor objects (e.g. returned by Descriptor::options(),
  1993. // or produced by Descriptor::CopyTo()) will never have UninterpretedOptions
  1994. // in them.
  1995. type UninterpretedOption struct {
  1996. state protoimpl.MessageState
  1997. sizeCache protoimpl.SizeCache
  1998. unknownFields protoimpl.UnknownFields
  1999. Name []*UninterpretedOption_NamePart `protobuf:"bytes,2,rep,name=name" json:"name,omitempty"`
  2000. // The value of the uninterpreted option, in whatever type the tokenizer
  2001. // identified it as during parsing. Exactly one of these should be set.
  2002. IdentifierValue *string `protobuf:"bytes,3,opt,name=identifier_value,json=identifierValue" json:"identifier_value,omitempty"`
  2003. PositiveIntValue *uint64 `protobuf:"varint,4,opt,name=positive_int_value,json=positiveIntValue" json:"positive_int_value,omitempty"`
  2004. NegativeIntValue *int64 `protobuf:"varint,5,opt,name=negative_int_value,json=negativeIntValue" json:"negative_int_value,omitempty"`
  2005. DoubleValue *float64 `protobuf:"fixed64,6,opt,name=double_value,json=doubleValue" json:"double_value,omitempty"`
  2006. StringValue []byte `protobuf:"bytes,7,opt,name=string_value,json=stringValue" json:"string_value,omitempty"`
  2007. AggregateValue *string `protobuf:"bytes,8,opt,name=aggregate_value,json=aggregateValue" json:"aggregate_value,omitempty"`
  2008. }
  2009. func (x *UninterpretedOption) Reset() {
  2010. *x = UninterpretedOption{}
  2011. if protoimpl.UnsafeEnabled {
  2012. mi := &file_google_protobuf_descriptor_proto_msgTypes[18]
  2013. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2014. ms.StoreMessageInfo(mi)
  2015. }
  2016. }
  2017. func (x *UninterpretedOption) String() string {
  2018. return protoimpl.X.MessageStringOf(x)
  2019. }
  2020. func (*UninterpretedOption) ProtoMessage() {}
  2021. func (x *UninterpretedOption) ProtoReflect() protoreflect.Message {
  2022. mi := &file_google_protobuf_descriptor_proto_msgTypes[18]
  2023. if protoimpl.UnsafeEnabled && x != nil {
  2024. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2025. if ms.LoadMessageInfo() == nil {
  2026. ms.StoreMessageInfo(mi)
  2027. }
  2028. return ms
  2029. }
  2030. return mi.MessageOf(x)
  2031. }
  2032. // Deprecated: Use UninterpretedOption.ProtoReflect.Descriptor instead.
  2033. func (*UninterpretedOption) Descriptor() ([]byte, []int) {
  2034. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{18}
  2035. }
  2036. func (x *UninterpretedOption) GetName() []*UninterpretedOption_NamePart {
  2037. if x != nil {
  2038. return x.Name
  2039. }
  2040. return nil
  2041. }
  2042. func (x *UninterpretedOption) GetIdentifierValue() string {
  2043. if x != nil && x.IdentifierValue != nil {
  2044. return *x.IdentifierValue
  2045. }
  2046. return ""
  2047. }
  2048. func (x *UninterpretedOption) GetPositiveIntValue() uint64 {
  2049. if x != nil && x.PositiveIntValue != nil {
  2050. return *x.PositiveIntValue
  2051. }
  2052. return 0
  2053. }
  2054. func (x *UninterpretedOption) GetNegativeIntValue() int64 {
  2055. if x != nil && x.NegativeIntValue != nil {
  2056. return *x.NegativeIntValue
  2057. }
  2058. return 0
  2059. }
  2060. func (x *UninterpretedOption) GetDoubleValue() float64 {
  2061. if x != nil && x.DoubleValue != nil {
  2062. return *x.DoubleValue
  2063. }
  2064. return 0
  2065. }
  2066. func (x *UninterpretedOption) GetStringValue() []byte {
  2067. if x != nil {
  2068. return x.StringValue
  2069. }
  2070. return nil
  2071. }
  2072. func (x *UninterpretedOption) GetAggregateValue() string {
  2073. if x != nil && x.AggregateValue != nil {
  2074. return *x.AggregateValue
  2075. }
  2076. return ""
  2077. }
  2078. // Encapsulates information about the original source file from which a
  2079. // FileDescriptorProto was generated.
  2080. type SourceCodeInfo struct {
  2081. state protoimpl.MessageState
  2082. sizeCache protoimpl.SizeCache
  2083. unknownFields protoimpl.UnknownFields
  2084. // A Location identifies a piece of source code in a .proto file which
  2085. // corresponds to a particular definition. This information is intended
  2086. // to be useful to IDEs, code indexers, documentation generators, and similar
  2087. // tools.
  2088. //
  2089. // For example, say we have a file like:
  2090. // message Foo {
  2091. // optional string foo = 1;
  2092. // }
  2093. // Let's look at just the field definition:
  2094. // optional string foo = 1;
  2095. // ^ ^^ ^^ ^ ^^^
  2096. // a bc de f ghi
  2097. // We have the following locations:
  2098. // span path represents
  2099. // [a,i) [ 4, 0, 2, 0 ] The whole field definition.
  2100. // [a,b) [ 4, 0, 2, 0, 4 ] The label (optional).
  2101. // [c,d) [ 4, 0, 2, 0, 5 ] The type (string).
  2102. // [e,f) [ 4, 0, 2, 0, 1 ] The name (foo).
  2103. // [g,h) [ 4, 0, 2, 0, 3 ] The number (1).
  2104. //
  2105. // Notes:
  2106. // - A location may refer to a repeated field itself (i.e. not to any
  2107. // particular index within it). This is used whenever a set of elements are
  2108. // logically enclosed in a single code segment. For example, an entire
  2109. // extend block (possibly containing multiple extension definitions) will
  2110. // have an outer location whose path refers to the "extensions" repeated
  2111. // field without an index.
  2112. // - Multiple locations may have the same path. This happens when a single
  2113. // logical declaration is spread out across multiple places. The most
  2114. // obvious example is the "extend" block again -- there may be multiple
  2115. // extend blocks in the same scope, each of which will have the same path.
  2116. // - A location's span is not always a subset of its parent's span. For
  2117. // example, the "extendee" of an extension declaration appears at the
  2118. // beginning of the "extend" block and is shared by all extensions within
  2119. // the block.
  2120. // - Just because a location's span is a subset of some other location's span
  2121. // does not mean that it is a descendant. For example, a "group" defines
  2122. // both a type and a field in a single declaration. Thus, the locations
  2123. // corresponding to the type and field and their components will overlap.
  2124. // - Code which tries to interpret locations should probably be designed to
  2125. // ignore those that it doesn't understand, as more types of locations could
  2126. // be recorded in the future.
  2127. Location []*SourceCodeInfo_Location `protobuf:"bytes,1,rep,name=location" json:"location,omitempty"`
  2128. }
  2129. func (x *SourceCodeInfo) Reset() {
  2130. *x = SourceCodeInfo{}
  2131. if protoimpl.UnsafeEnabled {
  2132. mi := &file_google_protobuf_descriptor_proto_msgTypes[19]
  2133. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2134. ms.StoreMessageInfo(mi)
  2135. }
  2136. }
  2137. func (x *SourceCodeInfo) String() string {
  2138. return protoimpl.X.MessageStringOf(x)
  2139. }
  2140. func (*SourceCodeInfo) ProtoMessage() {}
  2141. func (x *SourceCodeInfo) ProtoReflect() protoreflect.Message {
  2142. mi := &file_google_protobuf_descriptor_proto_msgTypes[19]
  2143. if protoimpl.UnsafeEnabled && x != nil {
  2144. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2145. if ms.LoadMessageInfo() == nil {
  2146. ms.StoreMessageInfo(mi)
  2147. }
  2148. return ms
  2149. }
  2150. return mi.MessageOf(x)
  2151. }
  2152. // Deprecated: Use SourceCodeInfo.ProtoReflect.Descriptor instead.
  2153. func (*SourceCodeInfo) Descriptor() ([]byte, []int) {
  2154. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{19}
  2155. }
  2156. func (x *SourceCodeInfo) GetLocation() []*SourceCodeInfo_Location {
  2157. if x != nil {
  2158. return x.Location
  2159. }
  2160. return nil
  2161. }
  2162. // Describes the relationship between generated code and its original source
  2163. // file. A GeneratedCodeInfo message is associated with only one generated
  2164. // source file, but may contain references to different source .proto files.
  2165. type GeneratedCodeInfo struct {
  2166. state protoimpl.MessageState
  2167. sizeCache protoimpl.SizeCache
  2168. unknownFields protoimpl.UnknownFields
  2169. // An Annotation connects some span of text in generated code to an element
  2170. // of its generating .proto file.
  2171. Annotation []*GeneratedCodeInfo_Annotation `protobuf:"bytes,1,rep,name=annotation" json:"annotation,omitempty"`
  2172. }
  2173. func (x *GeneratedCodeInfo) Reset() {
  2174. *x = GeneratedCodeInfo{}
  2175. if protoimpl.UnsafeEnabled {
  2176. mi := &file_google_protobuf_descriptor_proto_msgTypes[20]
  2177. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2178. ms.StoreMessageInfo(mi)
  2179. }
  2180. }
  2181. func (x *GeneratedCodeInfo) String() string {
  2182. return protoimpl.X.MessageStringOf(x)
  2183. }
  2184. func (*GeneratedCodeInfo) ProtoMessage() {}
  2185. func (x *GeneratedCodeInfo) ProtoReflect() protoreflect.Message {
  2186. mi := &file_google_protobuf_descriptor_proto_msgTypes[20]
  2187. if protoimpl.UnsafeEnabled && x != nil {
  2188. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2189. if ms.LoadMessageInfo() == nil {
  2190. ms.StoreMessageInfo(mi)
  2191. }
  2192. return ms
  2193. }
  2194. return mi.MessageOf(x)
  2195. }
  2196. // Deprecated: Use GeneratedCodeInfo.ProtoReflect.Descriptor instead.
  2197. func (*GeneratedCodeInfo) Descriptor() ([]byte, []int) {
  2198. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{20}
  2199. }
  2200. func (x *GeneratedCodeInfo) GetAnnotation() []*GeneratedCodeInfo_Annotation {
  2201. if x != nil {
  2202. return x.Annotation
  2203. }
  2204. return nil
  2205. }
  2206. type DescriptorProto_ExtensionRange struct {
  2207. state protoimpl.MessageState
  2208. sizeCache protoimpl.SizeCache
  2209. unknownFields protoimpl.UnknownFields
  2210. Start *int32 `protobuf:"varint,1,opt,name=start" json:"start,omitempty"` // Inclusive.
  2211. End *int32 `protobuf:"varint,2,opt,name=end" json:"end,omitempty"` // Exclusive.
  2212. Options *ExtensionRangeOptions `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"`
  2213. }
  2214. func (x *DescriptorProto_ExtensionRange) Reset() {
  2215. *x = DescriptorProto_ExtensionRange{}
  2216. if protoimpl.UnsafeEnabled {
  2217. mi := &file_google_protobuf_descriptor_proto_msgTypes[21]
  2218. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2219. ms.StoreMessageInfo(mi)
  2220. }
  2221. }
  2222. func (x *DescriptorProto_ExtensionRange) String() string {
  2223. return protoimpl.X.MessageStringOf(x)
  2224. }
  2225. func (*DescriptorProto_ExtensionRange) ProtoMessage() {}
  2226. func (x *DescriptorProto_ExtensionRange) ProtoReflect() protoreflect.Message {
  2227. mi := &file_google_protobuf_descriptor_proto_msgTypes[21]
  2228. if protoimpl.UnsafeEnabled && x != nil {
  2229. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2230. if ms.LoadMessageInfo() == nil {
  2231. ms.StoreMessageInfo(mi)
  2232. }
  2233. return ms
  2234. }
  2235. return mi.MessageOf(x)
  2236. }
  2237. // Deprecated: Use DescriptorProto_ExtensionRange.ProtoReflect.Descriptor instead.
  2238. func (*DescriptorProto_ExtensionRange) Descriptor() ([]byte, []int) {
  2239. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{2, 0}
  2240. }
  2241. func (x *DescriptorProto_ExtensionRange) GetStart() int32 {
  2242. if x != nil && x.Start != nil {
  2243. return *x.Start
  2244. }
  2245. return 0
  2246. }
  2247. func (x *DescriptorProto_ExtensionRange) GetEnd() int32 {
  2248. if x != nil && x.End != nil {
  2249. return *x.End
  2250. }
  2251. return 0
  2252. }
  2253. func (x *DescriptorProto_ExtensionRange) GetOptions() *ExtensionRangeOptions {
  2254. if x != nil {
  2255. return x.Options
  2256. }
  2257. return nil
  2258. }
  2259. // Range of reserved tag numbers. Reserved tag numbers may not be used by
  2260. // fields or extension ranges in the same message. Reserved ranges may
  2261. // not overlap.
  2262. type DescriptorProto_ReservedRange struct {
  2263. state protoimpl.MessageState
  2264. sizeCache protoimpl.SizeCache
  2265. unknownFields protoimpl.UnknownFields
  2266. Start *int32 `protobuf:"varint,1,opt,name=start" json:"start,omitempty"` // Inclusive.
  2267. End *int32 `protobuf:"varint,2,opt,name=end" json:"end,omitempty"` // Exclusive.
  2268. }
  2269. func (x *DescriptorProto_ReservedRange) Reset() {
  2270. *x = DescriptorProto_ReservedRange{}
  2271. if protoimpl.UnsafeEnabled {
  2272. mi := &file_google_protobuf_descriptor_proto_msgTypes[22]
  2273. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2274. ms.StoreMessageInfo(mi)
  2275. }
  2276. }
  2277. func (x *DescriptorProto_ReservedRange) String() string {
  2278. return protoimpl.X.MessageStringOf(x)
  2279. }
  2280. func (*DescriptorProto_ReservedRange) ProtoMessage() {}
  2281. func (x *DescriptorProto_ReservedRange) ProtoReflect() protoreflect.Message {
  2282. mi := &file_google_protobuf_descriptor_proto_msgTypes[22]
  2283. if protoimpl.UnsafeEnabled && x != nil {
  2284. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2285. if ms.LoadMessageInfo() == nil {
  2286. ms.StoreMessageInfo(mi)
  2287. }
  2288. return ms
  2289. }
  2290. return mi.MessageOf(x)
  2291. }
  2292. // Deprecated: Use DescriptorProto_ReservedRange.ProtoReflect.Descriptor instead.
  2293. func (*DescriptorProto_ReservedRange) Descriptor() ([]byte, []int) {
  2294. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{2, 1}
  2295. }
  2296. func (x *DescriptorProto_ReservedRange) GetStart() int32 {
  2297. if x != nil && x.Start != nil {
  2298. return *x.Start
  2299. }
  2300. return 0
  2301. }
  2302. func (x *DescriptorProto_ReservedRange) GetEnd() int32 {
  2303. if x != nil && x.End != nil {
  2304. return *x.End
  2305. }
  2306. return 0
  2307. }
  2308. // Range of reserved numeric values. Reserved values may not be used by
  2309. // entries in the same enum. Reserved ranges may not overlap.
  2310. //
  2311. // Note that this is distinct from DescriptorProto.ReservedRange in that it
  2312. // is inclusive such that it can appropriately represent the entire int32
  2313. // domain.
  2314. type EnumDescriptorProto_EnumReservedRange struct {
  2315. state protoimpl.MessageState
  2316. sizeCache protoimpl.SizeCache
  2317. unknownFields protoimpl.UnknownFields
  2318. Start *int32 `protobuf:"varint,1,opt,name=start" json:"start,omitempty"` // Inclusive.
  2319. End *int32 `protobuf:"varint,2,opt,name=end" json:"end,omitempty"` // Inclusive.
  2320. }
  2321. func (x *EnumDescriptorProto_EnumReservedRange) Reset() {
  2322. *x = EnumDescriptorProto_EnumReservedRange{}
  2323. if protoimpl.UnsafeEnabled {
  2324. mi := &file_google_protobuf_descriptor_proto_msgTypes[23]
  2325. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2326. ms.StoreMessageInfo(mi)
  2327. }
  2328. }
  2329. func (x *EnumDescriptorProto_EnumReservedRange) String() string {
  2330. return protoimpl.X.MessageStringOf(x)
  2331. }
  2332. func (*EnumDescriptorProto_EnumReservedRange) ProtoMessage() {}
  2333. func (x *EnumDescriptorProto_EnumReservedRange) ProtoReflect() protoreflect.Message {
  2334. mi := &file_google_protobuf_descriptor_proto_msgTypes[23]
  2335. if protoimpl.UnsafeEnabled && x != nil {
  2336. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2337. if ms.LoadMessageInfo() == nil {
  2338. ms.StoreMessageInfo(mi)
  2339. }
  2340. return ms
  2341. }
  2342. return mi.MessageOf(x)
  2343. }
  2344. // Deprecated: Use EnumDescriptorProto_EnumReservedRange.ProtoReflect.Descriptor instead.
  2345. func (*EnumDescriptorProto_EnumReservedRange) Descriptor() ([]byte, []int) {
  2346. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{6, 0}
  2347. }
  2348. func (x *EnumDescriptorProto_EnumReservedRange) GetStart() int32 {
  2349. if x != nil && x.Start != nil {
  2350. return *x.Start
  2351. }
  2352. return 0
  2353. }
  2354. func (x *EnumDescriptorProto_EnumReservedRange) GetEnd() int32 {
  2355. if x != nil && x.End != nil {
  2356. return *x.End
  2357. }
  2358. return 0
  2359. }
  2360. // The name of the uninterpreted option. Each string represents a segment in
  2361. // a dot-separated name. is_extension is true iff a segment represents an
  2362. // extension (denoted with parentheses in options specs in .proto files).
  2363. // E.g.,{ ["foo", false], ["bar.baz", true], ["qux", false] } represents
  2364. // "foo.(bar.baz).qux".
  2365. type UninterpretedOption_NamePart struct {
  2366. state protoimpl.MessageState
  2367. sizeCache protoimpl.SizeCache
  2368. unknownFields protoimpl.UnknownFields
  2369. NamePart *string `protobuf:"bytes,1,req,name=name_part,json=namePart" json:"name_part,omitempty"`
  2370. IsExtension *bool `protobuf:"varint,2,req,name=is_extension,json=isExtension" json:"is_extension,omitempty"`
  2371. }
  2372. func (x *UninterpretedOption_NamePart) Reset() {
  2373. *x = UninterpretedOption_NamePart{}
  2374. if protoimpl.UnsafeEnabled {
  2375. mi := &file_google_protobuf_descriptor_proto_msgTypes[24]
  2376. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2377. ms.StoreMessageInfo(mi)
  2378. }
  2379. }
  2380. func (x *UninterpretedOption_NamePart) String() string {
  2381. return protoimpl.X.MessageStringOf(x)
  2382. }
  2383. func (*UninterpretedOption_NamePart) ProtoMessage() {}
  2384. func (x *UninterpretedOption_NamePart) ProtoReflect() protoreflect.Message {
  2385. mi := &file_google_protobuf_descriptor_proto_msgTypes[24]
  2386. if protoimpl.UnsafeEnabled && x != nil {
  2387. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2388. if ms.LoadMessageInfo() == nil {
  2389. ms.StoreMessageInfo(mi)
  2390. }
  2391. return ms
  2392. }
  2393. return mi.MessageOf(x)
  2394. }
  2395. // Deprecated: Use UninterpretedOption_NamePart.ProtoReflect.Descriptor instead.
  2396. func (*UninterpretedOption_NamePart) Descriptor() ([]byte, []int) {
  2397. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{18, 0}
  2398. }
  2399. func (x *UninterpretedOption_NamePart) GetNamePart() string {
  2400. if x != nil && x.NamePart != nil {
  2401. return *x.NamePart
  2402. }
  2403. return ""
  2404. }
  2405. func (x *UninterpretedOption_NamePart) GetIsExtension() bool {
  2406. if x != nil && x.IsExtension != nil {
  2407. return *x.IsExtension
  2408. }
  2409. return false
  2410. }
  2411. type SourceCodeInfo_Location struct {
  2412. state protoimpl.MessageState
  2413. sizeCache protoimpl.SizeCache
  2414. unknownFields protoimpl.UnknownFields
  2415. // Identifies which part of the FileDescriptorProto was defined at this
  2416. // location.
  2417. //
  2418. // Each element is a field number or an index. They form a path from
  2419. // the root FileDescriptorProto to the place where the definition. For
  2420. // example, this path:
  2421. // [ 4, 3, 2, 7, 1 ]
  2422. // refers to:
  2423. // file.message_type(3) // 4, 3
  2424. // .field(7) // 2, 7
  2425. // .name() // 1
  2426. // This is because FileDescriptorProto.message_type has field number 4:
  2427. // repeated DescriptorProto message_type = 4;
  2428. // and DescriptorProto.field has field number 2:
  2429. // repeated FieldDescriptorProto field = 2;
  2430. // and FieldDescriptorProto.name has field number 1:
  2431. // optional string name = 1;
  2432. //
  2433. // Thus, the above path gives the location of a field name. If we removed
  2434. // the last element:
  2435. // [ 4, 3, 2, 7 ]
  2436. // this path refers to the whole field declaration (from the beginning
  2437. // of the label to the terminating semicolon).
  2438. Path []int32 `protobuf:"varint,1,rep,packed,name=path" json:"path,omitempty"`
  2439. // Always has exactly three or four elements: start line, start column,
  2440. // end line (optional, otherwise assumed same as start line), end column.
  2441. // These are packed into a single field for efficiency. Note that line
  2442. // and column numbers are zero-based -- typically you will want to add
  2443. // 1 to each before displaying to a user.
  2444. Span []int32 `protobuf:"varint,2,rep,packed,name=span" json:"span,omitempty"`
  2445. // If this SourceCodeInfo represents a complete declaration, these are any
  2446. // comments appearing before and after the declaration which appear to be
  2447. // attached to the declaration.
  2448. //
  2449. // A series of line comments appearing on consecutive lines, with no other
  2450. // tokens appearing on those lines, will be treated as a single comment.
  2451. //
  2452. // leading_detached_comments will keep paragraphs of comments that appear
  2453. // before (but not connected to) the current element. Each paragraph,
  2454. // separated by empty lines, will be one comment element in the repeated
  2455. // field.
  2456. //
  2457. // Only the comment content is provided; comment markers (e.g. //) are
  2458. // stripped out. For block comments, leading whitespace and an asterisk
  2459. // will be stripped from the beginning of each line other than the first.
  2460. // Newlines are included in the output.
  2461. //
  2462. // Examples:
  2463. //
  2464. // optional int32 foo = 1; // Comment attached to foo.
  2465. // // Comment attached to bar.
  2466. // optional int32 bar = 2;
  2467. //
  2468. // optional string baz = 3;
  2469. // // Comment attached to baz.
  2470. // // Another line attached to baz.
  2471. //
  2472. // // Comment attached to qux.
  2473. // //
  2474. // // Another line attached to qux.
  2475. // optional double qux = 4;
  2476. //
  2477. // // Detached comment for corge. This is not leading or trailing comments
  2478. // // to qux or corge because there are blank lines separating it from
  2479. // // both.
  2480. //
  2481. // // Detached comment for corge paragraph 2.
  2482. //
  2483. // optional string corge = 5;
  2484. // /* Block comment attached
  2485. // * to corge. Leading asterisks
  2486. // * will be removed. */
  2487. // /* Block comment attached to
  2488. // * grault. */
  2489. // optional int32 grault = 6;
  2490. //
  2491. // // ignored detached comments.
  2492. LeadingComments *string `protobuf:"bytes,3,opt,name=leading_comments,json=leadingComments" json:"leading_comments,omitempty"`
  2493. TrailingComments *string `protobuf:"bytes,4,opt,name=trailing_comments,json=trailingComments" json:"trailing_comments,omitempty"`
  2494. LeadingDetachedComments []string `protobuf:"bytes,6,rep,name=leading_detached_comments,json=leadingDetachedComments" json:"leading_detached_comments,omitempty"`
  2495. }
  2496. func (x *SourceCodeInfo_Location) Reset() {
  2497. *x = SourceCodeInfo_Location{}
  2498. if protoimpl.UnsafeEnabled {
  2499. mi := &file_google_protobuf_descriptor_proto_msgTypes[25]
  2500. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2501. ms.StoreMessageInfo(mi)
  2502. }
  2503. }
  2504. func (x *SourceCodeInfo_Location) String() string {
  2505. return protoimpl.X.MessageStringOf(x)
  2506. }
  2507. func (*SourceCodeInfo_Location) ProtoMessage() {}
  2508. func (x *SourceCodeInfo_Location) ProtoReflect() protoreflect.Message {
  2509. mi := &file_google_protobuf_descriptor_proto_msgTypes[25]
  2510. if protoimpl.UnsafeEnabled && x != nil {
  2511. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2512. if ms.LoadMessageInfo() == nil {
  2513. ms.StoreMessageInfo(mi)
  2514. }
  2515. return ms
  2516. }
  2517. return mi.MessageOf(x)
  2518. }
  2519. // Deprecated: Use SourceCodeInfo_Location.ProtoReflect.Descriptor instead.
  2520. func (*SourceCodeInfo_Location) Descriptor() ([]byte, []int) {
  2521. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{19, 0}
  2522. }
  2523. func (x *SourceCodeInfo_Location) GetPath() []int32 {
  2524. if x != nil {
  2525. return x.Path
  2526. }
  2527. return nil
  2528. }
  2529. func (x *SourceCodeInfo_Location) GetSpan() []int32 {
  2530. if x != nil {
  2531. return x.Span
  2532. }
  2533. return nil
  2534. }
  2535. func (x *SourceCodeInfo_Location) GetLeadingComments() string {
  2536. if x != nil && x.LeadingComments != nil {
  2537. return *x.LeadingComments
  2538. }
  2539. return ""
  2540. }
  2541. func (x *SourceCodeInfo_Location) GetTrailingComments() string {
  2542. if x != nil && x.TrailingComments != nil {
  2543. return *x.TrailingComments
  2544. }
  2545. return ""
  2546. }
  2547. func (x *SourceCodeInfo_Location) GetLeadingDetachedComments() []string {
  2548. if x != nil {
  2549. return x.LeadingDetachedComments
  2550. }
  2551. return nil
  2552. }
  2553. type GeneratedCodeInfo_Annotation struct {
  2554. state protoimpl.MessageState
  2555. sizeCache protoimpl.SizeCache
  2556. unknownFields protoimpl.UnknownFields
  2557. // Identifies the element in the original source .proto file. This field
  2558. // is formatted the same as SourceCodeInfo.Location.path.
  2559. Path []int32 `protobuf:"varint,1,rep,packed,name=path" json:"path,omitempty"`
  2560. // Identifies the filesystem path to the original source .proto.
  2561. SourceFile *string `protobuf:"bytes,2,opt,name=source_file,json=sourceFile" json:"source_file,omitempty"`
  2562. // Identifies the starting offset in bytes in the generated code
  2563. // that relates to the identified object.
  2564. Begin *int32 `protobuf:"varint,3,opt,name=begin" json:"begin,omitempty"`
  2565. // Identifies the ending offset in bytes in the generated code that
  2566. // relates to the identified offset. The end offset should be one past
  2567. // the last relevant byte (so the length of the text = end - begin).
  2568. End *int32 `protobuf:"varint,4,opt,name=end" json:"end,omitempty"`
  2569. }
  2570. func (x *GeneratedCodeInfo_Annotation) Reset() {
  2571. *x = GeneratedCodeInfo_Annotation{}
  2572. if protoimpl.UnsafeEnabled {
  2573. mi := &file_google_protobuf_descriptor_proto_msgTypes[26]
  2574. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2575. ms.StoreMessageInfo(mi)
  2576. }
  2577. }
  2578. func (x *GeneratedCodeInfo_Annotation) String() string {
  2579. return protoimpl.X.MessageStringOf(x)
  2580. }
  2581. func (*GeneratedCodeInfo_Annotation) ProtoMessage() {}
  2582. func (x *GeneratedCodeInfo_Annotation) ProtoReflect() protoreflect.Message {
  2583. mi := &file_google_protobuf_descriptor_proto_msgTypes[26]
  2584. if protoimpl.UnsafeEnabled && x != nil {
  2585. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2586. if ms.LoadMessageInfo() == nil {
  2587. ms.StoreMessageInfo(mi)
  2588. }
  2589. return ms
  2590. }
  2591. return mi.MessageOf(x)
  2592. }
  2593. // Deprecated: Use GeneratedCodeInfo_Annotation.ProtoReflect.Descriptor instead.
  2594. func (*GeneratedCodeInfo_Annotation) Descriptor() ([]byte, []int) {
  2595. return file_google_protobuf_descriptor_proto_rawDescGZIP(), []int{20, 0}
  2596. }
  2597. func (x *GeneratedCodeInfo_Annotation) GetPath() []int32 {
  2598. if x != nil {
  2599. return x.Path
  2600. }
  2601. return nil
  2602. }
  2603. func (x *GeneratedCodeInfo_Annotation) GetSourceFile() string {
  2604. if x != nil && x.SourceFile != nil {
  2605. return *x.SourceFile
  2606. }
  2607. return ""
  2608. }
  2609. func (x *GeneratedCodeInfo_Annotation) GetBegin() int32 {
  2610. if x != nil && x.Begin != nil {
  2611. return *x.Begin
  2612. }
  2613. return 0
  2614. }
  2615. func (x *GeneratedCodeInfo_Annotation) GetEnd() int32 {
  2616. if x != nil && x.End != nil {
  2617. return *x.End
  2618. }
  2619. return 0
  2620. }
  2621. var File_google_protobuf_descriptor_proto protoreflect.FileDescriptor
  2622. var file_google_protobuf_descriptor_proto_rawDesc = []byte{
  2623. 0x0a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
  2624. 0x66, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f,
  2625. 0x74, 0x6f, 0x12, 0x0f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  2626. 0x62, 0x75, 0x66, 0x22, 0x4d, 0x0a, 0x11, 0x46, 0x69, 0x6c, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72,
  2627. 0x69, 0x70, 0x74, 0x6f, 0x72, 0x53, 0x65, 0x74, 0x12, 0x38, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65,
  2628. 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  2629. 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x44, 0x65, 0x73,
  2630. 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x52, 0x04, 0x66, 0x69,
  2631. 0x6c, 0x65, 0x22, 0xe4, 0x04, 0x0a, 0x13, 0x46, 0x69, 0x6c, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72,
  2632. 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
  2633. 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18,
  2634. 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
  2635. 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x65,
  2636. 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65,
  2637. 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x75, 0x62, 0x6c,
  2638. 0x69, 0x63, 0x5f, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x0a, 0x20,
  2639. 0x03, 0x28, 0x05, 0x52, 0x10, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x44, 0x65, 0x70, 0x65, 0x6e,
  2640. 0x64, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x77, 0x65, 0x61, 0x6b, 0x5f, 0x64, 0x65,
  2641. 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0e,
  2642. 0x77, 0x65, 0x61, 0x6b, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x43,
  2643. 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04,
  2644. 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
  2645. 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f,
  2646. 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54,
  2647. 0x79, 0x70, 0x65, 0x12, 0x41, 0x0a, 0x09, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65,
  2648. 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  2649. 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x44, 0x65, 0x73,
  2650. 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x52, 0x08, 0x65, 0x6e,
  2651. 0x75, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x41, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
  2652. 0x65, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2653. 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
  2654. 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f,
  2655. 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x43, 0x0a, 0x09, 0x65, 0x78, 0x74,
  2656. 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67,
  2657. 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46,
  2658. 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72,
  2659. 0x6f, 0x74, 0x6f, 0x52, 0x09, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x36,
  2660. 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32,
  2661. 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
  2662. 0x66, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f,
  2663. 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x49, 0x0a, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
  2664. 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b,
  2665. 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  2666. 0x75, 0x66, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66,
  2667. 0x6f, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66,
  2668. 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x18, 0x0c, 0x20, 0x01, 0x28,
  2669. 0x09, 0x52, 0x06, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x22, 0xb9, 0x06, 0x0a, 0x0f, 0x44, 0x65,
  2670. 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x12, 0x0a,
  2671. 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
  2672. 0x65, 0x12, 0x3b, 0x0a, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
  2673. 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  2674. 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
  2675. 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x52, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x43,
  2676. 0x0a, 0x09, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x03, 0x28,
  2677. 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  2678. 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
  2679. 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x52, 0x09, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73,
  2680. 0x69, 0x6f, 0x6e, 0x12, 0x41, 0x0a, 0x0b, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x79,
  2681. 0x70, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2682. 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72,
  2683. 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x52, 0x0a, 0x6e, 0x65, 0x73, 0x74,
  2684. 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x41, 0x0a, 0x09, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x74,
  2685. 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2686. 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d,
  2687. 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x52,
  2688. 0x08, 0x65, 0x6e, 0x75, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x58, 0x0a, 0x0f, 0x65, 0x78, 0x74,
  2689. 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x05, 0x20, 0x03,
  2690. 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  2691. 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50,
  2692. 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61,
  2693. 0x6e, 0x67, 0x65, 0x52, 0x0e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61,
  2694. 0x6e, 0x67, 0x65, 0x12, 0x44, 0x0a, 0x0a, 0x6f, 0x6e, 0x65, 0x6f, 0x66, 0x5f, 0x64, 0x65, 0x63,
  2695. 0x6c, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2696. 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4f, 0x6e, 0x65, 0x6f, 0x66, 0x44,
  2697. 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x52, 0x09,
  2698. 0x6f, 0x6e, 0x65, 0x6f, 0x66, 0x44, 0x65, 0x63, 0x6c, 0x12, 0x39, 0x0a, 0x07, 0x6f, 0x70, 0x74,
  2699. 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f,
  2700. 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73,
  2701. 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74,
  2702. 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x55, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64,
  2703. 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67,
  2704. 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44,
  2705. 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52,
  2706. 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x0d, 0x72, 0x65,
  2707. 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x72,
  2708. 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x03,
  2709. 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x61, 0x6d, 0x65,
  2710. 0x1a, 0x7a, 0x0a, 0x0e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e,
  2711. 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
  2712. 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18,
  2713. 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x12, 0x40, 0x0a, 0x07, 0x6f, 0x70,
  2714. 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f,
  2715. 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x78,
  2716. 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69,
  2717. 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x37, 0x0a, 0x0d,
  2718. 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x14, 0x0a,
  2719. 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74,
  2720. 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
  2721. 0x52, 0x03, 0x65, 0x6e, 0x64, 0x22, 0x7c, 0x0a, 0x15, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
  2722. 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x58,
  2723. 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x5f,
  2724. 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0xe7, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e,
  2725. 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
  2726. 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74,
  2727. 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74,
  2728. 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2a, 0x09, 0x08, 0xe8, 0x07, 0x10, 0x80, 0x80,
  2729. 0x80, 0x80, 0x02, 0x22, 0xc1, 0x06, 0x0a, 0x14, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73,
  2730. 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x12, 0x0a, 0x04,
  2731. 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
  2732. 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05,
  2733. 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x41, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65,
  2734. 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2735. 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44,
  2736. 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4c,
  2737. 0x61, 0x62, 0x65, 0x6c, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x3e, 0x0a, 0x04, 0x74,
  2738. 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2739. 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c,
  2740. 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f,
  2741. 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74,
  2742. 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
  2743. 0x74, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x74, 0x65,
  2744. 0x6e, 0x64, 0x65, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x78, 0x74, 0x65,
  2745. 0x6e, 0x64, 0x65, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f,
  2746. 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, 0x66,
  2747. 0x61, 0x75, 0x6c, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x6e, 0x65,
  2748. 0x6f, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a,
  2749. 0x6f, 0x6e, 0x65, 0x6f, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1b, 0x0a, 0x09, 0x6a, 0x73,
  2750. 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6a,
  2751. 0x73, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x37, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f,
  2752. 0x6e, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2753. 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64,
  2754. 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
  2755. 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f,
  2756. 0x6e, 0x61, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  2757. 0x33, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x22, 0xb6, 0x02, 0x0a, 0x04, 0x54, 0x79,
  2758. 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x44, 0x4f, 0x55, 0x42, 0x4c,
  2759. 0x45, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x4c, 0x4f, 0x41,
  2760. 0x54, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x36,
  2761. 0x34, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x49, 0x4e, 0x54,
  2762. 0x36, 0x34, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x54,
  2763. 0x33, 0x32, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x49, 0x58,
  2764. 0x45, 0x44, 0x36, 0x34, 0x10, 0x06, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46,
  2765. 0x49, 0x58, 0x45, 0x44, 0x33, 0x32, 0x10, 0x07, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x59, 0x50, 0x45,
  2766. 0x5f, 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x08, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f,
  2767. 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x09, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45,
  2768. 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x10, 0x0a, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45,
  2769. 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x10, 0x0b, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59,
  2770. 0x50, 0x45, 0x5f, 0x42, 0x59, 0x54, 0x45, 0x53, 0x10, 0x0c, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59,
  2771. 0x50, 0x45, 0x5f, 0x55, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x0d, 0x12, 0x0d, 0x0a, 0x09, 0x54,
  2772. 0x59, 0x50, 0x45, 0x5f, 0x45, 0x4e, 0x55, 0x4d, 0x10, 0x0e, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x59,
  2773. 0x50, 0x45, 0x5f, 0x53, 0x46, 0x49, 0x58, 0x45, 0x44, 0x33, 0x32, 0x10, 0x0f, 0x12, 0x11, 0x0a,
  2774. 0x0d, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x46, 0x49, 0x58, 0x45, 0x44, 0x36, 0x34, 0x10, 0x10,
  2775. 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10,
  2776. 0x11, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x49, 0x4e, 0x54, 0x36, 0x34,
  2777. 0x10, 0x12, 0x22, 0x43, 0x0a, 0x05, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x0e, 0x4c,
  2778. 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x01, 0x12,
  2779. 0x12, 0x0a, 0x0e, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45,
  2780. 0x44, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x52, 0x45, 0x50,
  2781. 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x03, 0x22, 0x63, 0x0a, 0x14, 0x4f, 0x6e, 0x65, 0x6f, 0x66,
  2782. 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12,
  2783. 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
  2784. 0x61, 0x6d, 0x65, 0x12, 0x37, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02,
  2785. 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
  2786. 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4f, 0x6e, 0x65, 0x6f, 0x66, 0x4f, 0x70, 0x74, 0x69,
  2787. 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xe3, 0x02, 0x0a,
  2788. 0x13, 0x45, 0x6e, 0x75, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50,
  2789. 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
  2790. 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
  2791. 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2792. 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61,
  2793. 0x6c, 0x75, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f,
  2794. 0x74, 0x6f, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x36, 0x0a, 0x07, 0x6f, 0x70, 0x74,
  2795. 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f,
  2796. 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75,
  2797. 0x6d, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
  2798. 0x73, 0x12, 0x5d, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x72, 0x61,
  2799. 0x6e, 0x67, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2800. 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d,
  2801. 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x2e,
  2802. 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x52, 0x61, 0x6e, 0x67,
  2803. 0x65, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x52, 0x61, 0x6e, 0x67, 0x65,
  2804. 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x6e, 0x61, 0x6d,
  2805. 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
  2806. 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x3b, 0x0a, 0x11, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x65, 0x73,
  2807. 0x65, 0x72, 0x76, 0x65, 0x64, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74,
  2808. 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74,
  2809. 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x65,
  2810. 0x6e, 0x64, 0x22, 0x83, 0x01, 0x0a, 0x18, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65,
  2811. 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12,
  2812. 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
  2813. 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20,
  2814. 0x01, 0x28, 0x05, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x3b, 0x0a, 0x07, 0x6f,
  2815. 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67,
  2816. 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
  2817. 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52,
  2818. 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xa7, 0x01, 0x0a, 0x16, 0x53, 0x65, 0x72,
  2819. 0x76, 0x69, 0x63, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72,
  2820. 0x6f, 0x74, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
  2821. 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f,
  2822. 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2823. 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64,
  2824. 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x52,
  2825. 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x39, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f,
  2826. 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2827. 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69,
  2828. 0x63, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f,
  2829. 0x6e, 0x73, 0x22, 0x89, 0x02, 0x0a, 0x15, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x44, 0x65, 0x73,
  2830. 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x12, 0x0a, 0x04,
  2831. 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
  2832. 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02,
  2833. 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12,
  2834. 0x1f, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03,
  2835. 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x79, 0x70, 0x65,
  2836. 0x12, 0x38, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
  2837. 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  2838. 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
  2839. 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x30, 0x0a, 0x10, 0x63, 0x6c,
  2840. 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x18, 0x05,
  2841. 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x0f, 0x63, 0x6c, 0x69,
  2842. 0x65, 0x6e, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x12, 0x30, 0x0a, 0x10,
  2843. 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67,
  2844. 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x0f, 0x73,
  2845. 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x22, 0x91,
  2846. 0x09, 0x0a, 0x0b, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x21,
  2847. 0x0a, 0x0c, 0x6a, 0x61, 0x76, 0x61, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01,
  2848. 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6a, 0x61, 0x76, 0x61, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67,
  2849. 0x65, 0x12, 0x30, 0x0a, 0x14, 0x6a, 0x61, 0x76, 0x61, 0x5f, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f,
  2850. 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
  2851. 0x12, 0x6a, 0x61, 0x76, 0x61, 0x4f, 0x75, 0x74, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x6e,
  2852. 0x61, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x13, 0x6a, 0x61, 0x76, 0x61, 0x5f, 0x6d, 0x75, 0x6c, 0x74,
  2853. 0x69, 0x70, 0x6c, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08,
  2854. 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x11, 0x6a, 0x61, 0x76, 0x61, 0x4d, 0x75, 0x6c,
  2855. 0x74, 0x69, 0x70, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x44, 0x0a, 0x1d, 0x6a, 0x61,
  2856. 0x76, 0x61, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x65, 0x71, 0x75, 0x61,
  2857. 0x6c, 0x73, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x14, 0x20, 0x01, 0x28,
  2858. 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x19, 0x6a, 0x61, 0x76, 0x61, 0x47, 0x65, 0x6e, 0x65, 0x72,
  2859. 0x61, 0x74, 0x65, 0x45, 0x71, 0x75, 0x61, 0x6c, 0x73, 0x41, 0x6e, 0x64, 0x48, 0x61, 0x73, 0x68,
  2860. 0x12, 0x3a, 0x0a, 0x16, 0x6a, 0x61, 0x76, 0x61, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f,
  2861. 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x75, 0x74, 0x66, 0x38, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x08,
  2862. 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x13, 0x6a, 0x61, 0x76, 0x61, 0x53, 0x74, 0x72,
  2863. 0x69, 0x6e, 0x67, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x74, 0x66, 0x38, 0x12, 0x53, 0x0a, 0x0c,
  2864. 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x18, 0x09, 0x20, 0x01,
  2865. 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  2866. 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
  2867. 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x3a, 0x05, 0x53,
  2868. 0x50, 0x45, 0x45, 0x44, 0x52, 0x0b, 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x46, 0x6f,
  2869. 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x6f, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18,
  2870. 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x6f, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65,
  2871. 0x12, 0x35, 0x0a, 0x13, 0x63, 0x63, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x73,
  2872. 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66,
  2873. 0x61, 0x6c, 0x73, 0x65, 0x52, 0x11, 0x63, 0x63, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x53,
  2874. 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x15, 0x6a, 0x61, 0x76, 0x61, 0x5f,
  2875. 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73,
  2876. 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x13, 0x6a,
  2877. 0x61, 0x76, 0x61, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
  2878. 0x65, 0x73, 0x12, 0x35, 0x0a, 0x13, 0x70, 0x79, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63,
  2879. 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x3a,
  2880. 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x11, 0x70, 0x79, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69,
  2881. 0x63, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x14, 0x70, 0x68, 0x70,
  2882. 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
  2883. 0x73, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x12,
  2884. 0x70, 0x68, 0x70, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
  2885. 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64,
  2886. 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x0a, 0x64,
  2887. 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x10, 0x63, 0x63, 0x5f,
  2888. 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x72, 0x65, 0x6e, 0x61, 0x73, 0x18, 0x1f, 0x20,
  2889. 0x01, 0x28, 0x08, 0x3a, 0x04, 0x74, 0x72, 0x75, 0x65, 0x52, 0x0e, 0x63, 0x63, 0x45, 0x6e, 0x61,
  2890. 0x62, 0x6c, 0x65, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x6f, 0x62, 0x6a,
  2891. 0x63, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x24,
  2892. 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6f, 0x62, 0x6a, 0x63, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x50,
  2893. 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x73, 0x68, 0x61, 0x72, 0x70, 0x5f,
  2894. 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x25, 0x20, 0x01, 0x28, 0x09, 0x52,
  2895. 0x0f, 0x63, 0x73, 0x68, 0x61, 0x72, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65,
  2896. 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x77, 0x69, 0x66, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78,
  2897. 0x18, 0x27, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x77, 0x69, 0x66, 0x74, 0x50, 0x72, 0x65,
  2898. 0x66, 0x69, 0x78, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x68, 0x70, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73,
  2899. 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x28, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70,
  2900. 0x68, 0x70, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x23, 0x0a,
  2901. 0x0d, 0x70, 0x68, 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x29,
  2902. 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x68, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61,
  2903. 0x63, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x68, 0x70, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
  2904. 0x74, 0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x2c, 0x20, 0x01,
  2905. 0x28, 0x09, 0x52, 0x14, 0x70, 0x68, 0x70, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x4e,
  2906. 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x75, 0x62, 0x79,
  2907. 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
  2908. 0x72, 0x75, 0x62, 0x79, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x58, 0x0a, 0x14, 0x75,
  2909. 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x70, 0x74,
  2910. 0x69, 0x6f, 0x6e, 0x18, 0xe7, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f,
  2911. 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x6e, 0x69,
  2912. 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
  2913. 0x52, 0x13, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f,
  2914. 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3a, 0x0a, 0x0c, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a,
  2915. 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x50, 0x45, 0x45, 0x44, 0x10, 0x01,
  2916. 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x10, 0x02, 0x12,
  2917. 0x10, 0x0a, 0x0c, 0x4c, 0x49, 0x54, 0x45, 0x5f, 0x52, 0x55, 0x4e, 0x54, 0x49, 0x4d, 0x45, 0x10,
  2918. 0x03, 0x2a, 0x09, 0x08, 0xe8, 0x07, 0x10, 0x80, 0x80, 0x80, 0x80, 0x02, 0x4a, 0x04, 0x08, 0x26,
  2919. 0x10, 0x27, 0x22, 0xd1, 0x02, 0x0a, 0x0e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70,
  2920. 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3c, 0x0a, 0x17, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
  2921. 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x77, 0x69, 0x72, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
  2922. 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x14, 0x6d,
  2923. 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x57, 0x69, 0x72, 0x65, 0x46, 0x6f, 0x72,
  2924. 0x6d, 0x61, 0x74, 0x12, 0x4c, 0x0a, 0x1f, 0x6e, 0x6f, 0x5f, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61,
  2925. 0x72, 0x64, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x63,
  2926. 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61,
  2927. 0x6c, 0x73, 0x65, 0x52, 0x1c, 0x6e, 0x6f, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x44,
  2928. 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x6f,
  2929. 0x72, 0x12, 0x25, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18,
  2930. 0x03, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x0a, 0x64, 0x65,
  2931. 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x70, 0x5f,
  2932. 0x65, 0x6e, 0x74, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6d, 0x61, 0x70,
  2933. 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x58, 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72,
  2934. 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0xe7, 0x07,
  2935. 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
  2936. 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72,
  2937. 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x75, 0x6e, 0x69, 0x6e,
  2938. 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2a,
  2939. 0x09, 0x08, 0xe8, 0x07, 0x10, 0x80, 0x80, 0x80, 0x80, 0x02, 0x4a, 0x04, 0x08, 0x08, 0x10, 0x09,
  2940. 0x4a, 0x04, 0x08, 0x09, 0x10, 0x0a, 0x22, 0xe2, 0x03, 0x0a, 0x0c, 0x46, 0x69, 0x65, 0x6c, 0x64,
  2941. 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x41, 0x0a, 0x05, 0x63, 0x74, 0x79, 0x70, 0x65,
  2942. 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  2943. 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70,
  2944. 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x43, 0x54, 0x79, 0x70, 0x65, 0x3a, 0x06, 0x53, 0x54, 0x52,
  2945. 0x49, 0x4e, 0x47, 0x52, 0x05, 0x63, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61,
  2946. 0x63, 0x6b, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b,
  2947. 0x65, 0x64, 0x12, 0x47, 0x0a, 0x06, 0x6a, 0x73, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01,
  2948. 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  2949. 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
  2950. 0x73, 0x2e, 0x4a, 0x53, 0x54, 0x79, 0x70, 0x65, 0x3a, 0x09, 0x4a, 0x53, 0x5f, 0x4e, 0x4f, 0x52,
  2951. 0x4d, 0x41, 0x4c, 0x52, 0x06, 0x6a, 0x73, 0x74, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x04, 0x6c,
  2952. 0x61, 0x7a, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65,
  2953. 0x52, 0x04, 0x6c, 0x61, 0x7a, 0x79, 0x12, 0x25, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63,
  2954. 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73,
  2955. 0x65, 0x52, 0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a,
  2956. 0x04, 0x77, 0x65, 0x61, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c,
  2957. 0x73, 0x65, 0x52, 0x04, 0x77, 0x65, 0x61, 0x6b, 0x12, 0x58, 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x6e,
  2958. 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
  2959. 0x18, 0xe7, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2960. 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65,
  2961. 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x75,
  2962. 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69,
  2963. 0x6f, 0x6e, 0x22, 0x2f, 0x0a, 0x05, 0x43, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x53,
  2964. 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x43, 0x4f, 0x52, 0x44, 0x10,
  2965. 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x50, 0x49, 0x45, 0x43,
  2966. 0x45, 0x10, 0x02, 0x22, 0x35, 0x0a, 0x06, 0x4a, 0x53, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0d, 0x0a,
  2967. 0x09, 0x4a, 0x53, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09,
  2968. 0x4a, 0x53, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x4a,
  2969. 0x53, 0x5f, 0x4e, 0x55, 0x4d, 0x42, 0x45, 0x52, 0x10, 0x02, 0x2a, 0x09, 0x08, 0xe8, 0x07, 0x10,
  2970. 0x80, 0x80, 0x80, 0x80, 0x02, 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x22, 0x73, 0x0a, 0x0c, 0x4f,
  2971. 0x6e, 0x65, 0x6f, 0x66, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x58, 0x0a, 0x14, 0x75,
  2972. 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x70, 0x74,
  2973. 0x69, 0x6f, 0x6e, 0x18, 0xe7, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f,
  2974. 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x6e, 0x69,
  2975. 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
  2976. 0x52, 0x13, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f,
  2977. 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2a, 0x09, 0x08, 0xe8, 0x07, 0x10, 0x80, 0x80, 0x80, 0x80, 0x02,
  2978. 0x22, 0xc0, 0x01, 0x0a, 0x0b, 0x45, 0x6e, 0x75, 0x6d, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
  2979. 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18,
  2980. 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x41, 0x6c, 0x69, 0x61,
  2981. 0x73, 0x12, 0x25, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18,
  2982. 0x03, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x0a, 0x64, 0x65,
  2983. 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x12, 0x58, 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x6e,
  2984. 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
  2985. 0x18, 0xe7, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2986. 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65,
  2987. 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x75,
  2988. 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69,
  2989. 0x6f, 0x6e, 0x2a, 0x09, 0x08, 0xe8, 0x07, 0x10, 0x80, 0x80, 0x80, 0x80, 0x02, 0x4a, 0x04, 0x08,
  2990. 0x05, 0x10, 0x06, 0x22, 0x9e, 0x01, 0x0a, 0x10, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75,
  2991. 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x25, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x72,
  2992. 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61,
  2993. 0x6c, 0x73, 0x65, 0x52, 0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x12,
  2994. 0x58, 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64,
  2995. 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0xe7, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24,
  2996. 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
  2997. 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70,
  2998. 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65,
  2999. 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2a, 0x09, 0x08, 0xe8, 0x07, 0x10, 0x80,
  3000. 0x80, 0x80, 0x80, 0x02, 0x22, 0x9c, 0x01, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
  3001. 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x25, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x72, 0x65,
  3002. 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x21, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c,
  3003. 0x73, 0x65, 0x52, 0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x12, 0x58,
  3004. 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x5f,
  3005. 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0xe7, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e,
  3006. 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
  3007. 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74,
  3008. 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74,
  3009. 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2a, 0x09, 0x08, 0xe8, 0x07, 0x10, 0x80, 0x80,
  3010. 0x80, 0x80, 0x02, 0x22, 0xe0, 0x02, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4f, 0x70,
  3011. 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x25, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61,
  3012. 0x74, 0x65, 0x64, 0x18, 0x21, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65,
  3013. 0x52, 0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x12, 0x71, 0x0a, 0x11,
  3014. 0x69, 0x64, 0x65, 0x6d, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65,
  3015. 0x6c, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3016. 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64,
  3017. 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x49, 0x64, 0x65, 0x6d, 0x70, 0x6f, 0x74, 0x65,
  3018. 0x6e, 0x63, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x3a, 0x13, 0x49, 0x44, 0x45, 0x4d, 0x50, 0x4f,
  3019. 0x54, 0x45, 0x4e, 0x43, 0x59, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x52, 0x10, 0x69,
  3020. 0x64, 0x65, 0x6d, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12,
  3021. 0x58, 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64,
  3022. 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0xe7, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24,
  3023. 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
  3024. 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70,
  3025. 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65,
  3026. 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x50, 0x0a, 0x10, 0x49, 0x64, 0x65,
  3027. 0x6d, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x17, 0x0a,
  3028. 0x13, 0x49, 0x44, 0x45, 0x4d, 0x50, 0x4f, 0x54, 0x45, 0x4e, 0x43, 0x59, 0x5f, 0x55, 0x4e, 0x4b,
  3029. 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x4e, 0x4f, 0x5f, 0x53, 0x49, 0x44,
  3030. 0x45, 0x5f, 0x45, 0x46, 0x46, 0x45, 0x43, 0x54, 0x53, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x49,
  3031. 0x44, 0x45, 0x4d, 0x50, 0x4f, 0x54, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x2a, 0x09, 0x08, 0xe8, 0x07,
  3032. 0x10, 0x80, 0x80, 0x80, 0x80, 0x02, 0x22, 0x9a, 0x03, 0x0a, 0x13, 0x55, 0x6e, 0x69, 0x6e, 0x74,
  3033. 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x41,
  3034. 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67,
  3035. 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55,
  3036. 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69,
  3037. 0x6f, 0x6e, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x50, 0x61, 0x72, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d,
  3038. 0x65, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f,
  3039. 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x64, 0x65,
  3040. 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2c, 0x0a, 0x12,
  3041. 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c,
  3042. 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69,
  3043. 0x76, 0x65, 0x49, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x6e, 0x65,
  3044. 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65,
  3045. 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65,
  3046. 0x49, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x6f, 0x75, 0x62,
  3047. 0x6c, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0b,
  3048. 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x73,
  3049. 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28,
  3050. 0x0c, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x27,
  3051. 0x0a, 0x0f, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75,
  3052. 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61,
  3053. 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x4a, 0x0a, 0x08, 0x4e, 0x61, 0x6d, 0x65, 0x50,
  3054. 0x61, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74,
  3055. 0x18, 0x01, 0x20, 0x02, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x61, 0x6d, 0x65, 0x50, 0x61, 0x72, 0x74,
  3056. 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
  3057. 0x18, 0x02, 0x20, 0x02, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73,
  3058. 0x69, 0x6f, 0x6e, 0x22, 0xa7, 0x02, 0x0a, 0x0e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f,
  3059. 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x44, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
  3060. 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3061. 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63,
  3062. 0x65, 0x43, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69,
  3063. 0x6f, 0x6e, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0xce, 0x01, 0x0a,
  3064. 0x08, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x04, 0x70, 0x61, 0x74,
  3065. 0x68, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x42, 0x02, 0x10, 0x01, 0x52, 0x04, 0x70, 0x61, 0x74,
  3066. 0x68, 0x12, 0x16, 0x0a, 0x04, 0x73, 0x70, 0x61, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x42,
  3067. 0x02, 0x10, 0x01, 0x52, 0x04, 0x73, 0x70, 0x61, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x6c, 0x65, 0x61,
  3068. 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20,
  3069. 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6c, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d,
  3070. 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x74, 0x72, 0x61, 0x69, 0x6c, 0x69, 0x6e, 0x67,
  3071. 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
  3072. 0x10, 0x74, 0x72, 0x61, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74,
  3073. 0x73, 0x12, 0x3a, 0x0a, 0x19, 0x6c, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x65, 0x74,
  3074. 0x61, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x06,
  3075. 0x20, 0x03, 0x28, 0x09, 0x52, 0x17, 0x6c, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74,
  3076. 0x61, 0x63, 0x68, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0xd1, 0x01,
  3077. 0x0a, 0x11, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x64, 0x65, 0x49,
  3078. 0x6e, 0x66, 0x6f, 0x12, 0x4d, 0x0a, 0x0a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
  3079. 0x6e, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3080. 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61,
  3081. 0x74, 0x65, 0x64, 0x43, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x41, 0x6e, 0x6e, 0x6f,
  3082. 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
  3083. 0x6f, 0x6e, 0x1a, 0x6d, 0x0a, 0x0a, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  3084. 0x12, 0x16, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x42, 0x02,
  3085. 0x10, 0x01, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72,
  3086. 0x63, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73,
  3087. 0x6f, 0x75, 0x72, 0x63, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x65, 0x67,
  3088. 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x12,
  3089. 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x65, 0x6e,
  3090. 0x64, 0x42, 0x7e, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  3091. 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x42, 0x10, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69,
  3092. 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x48, 0x01, 0x5a, 0x2d, 0x67, 0x6f,
  3093. 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f,
  3094. 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x64,
  3095. 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02,
  3096. 0x03, 0x47, 0x50, 0x42, 0xaa, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x50, 0x72,
  3097. 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x52, 0x65, 0x66, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f,
  3098. 0x6e,
  3099. }
  3100. var (
  3101. file_google_protobuf_descriptor_proto_rawDescOnce sync.Once
  3102. file_google_protobuf_descriptor_proto_rawDescData = file_google_protobuf_descriptor_proto_rawDesc
  3103. )
  3104. func file_google_protobuf_descriptor_proto_rawDescGZIP() []byte {
  3105. file_google_protobuf_descriptor_proto_rawDescOnce.Do(func() {
  3106. file_google_protobuf_descriptor_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_protobuf_descriptor_proto_rawDescData)
  3107. })
  3108. return file_google_protobuf_descriptor_proto_rawDescData
  3109. }
  3110. var file_google_protobuf_descriptor_proto_enumTypes = make([]protoimpl.EnumInfo, 6)
  3111. var file_google_protobuf_descriptor_proto_msgTypes = make([]protoimpl.MessageInfo, 27)
  3112. var file_google_protobuf_descriptor_proto_goTypes = []interface{}{
  3113. (FieldDescriptorProto_Type)(0), // 0: google.protobuf.FieldDescriptorProto.Type
  3114. (FieldDescriptorProto_Label)(0), // 1: google.protobuf.FieldDescriptorProto.Label
  3115. (FileOptions_OptimizeMode)(0), // 2: google.protobuf.FileOptions.OptimizeMode
  3116. (FieldOptions_CType)(0), // 3: google.protobuf.FieldOptions.CType
  3117. (FieldOptions_JSType)(0), // 4: google.protobuf.FieldOptions.JSType
  3118. (MethodOptions_IdempotencyLevel)(0), // 5: google.protobuf.MethodOptions.IdempotencyLevel
  3119. (*FileDescriptorSet)(nil), // 6: google.protobuf.FileDescriptorSet
  3120. (*FileDescriptorProto)(nil), // 7: google.protobuf.FileDescriptorProto
  3121. (*DescriptorProto)(nil), // 8: google.protobuf.DescriptorProto
  3122. (*ExtensionRangeOptions)(nil), // 9: google.protobuf.ExtensionRangeOptions
  3123. (*FieldDescriptorProto)(nil), // 10: google.protobuf.FieldDescriptorProto
  3124. (*OneofDescriptorProto)(nil), // 11: google.protobuf.OneofDescriptorProto
  3125. (*EnumDescriptorProto)(nil), // 12: google.protobuf.EnumDescriptorProto
  3126. (*EnumValueDescriptorProto)(nil), // 13: google.protobuf.EnumValueDescriptorProto
  3127. (*ServiceDescriptorProto)(nil), // 14: google.protobuf.ServiceDescriptorProto
  3128. (*MethodDescriptorProto)(nil), // 15: google.protobuf.MethodDescriptorProto
  3129. (*FileOptions)(nil), // 16: google.protobuf.FileOptions
  3130. (*MessageOptions)(nil), // 17: google.protobuf.MessageOptions
  3131. (*FieldOptions)(nil), // 18: google.protobuf.FieldOptions
  3132. (*OneofOptions)(nil), // 19: google.protobuf.OneofOptions
  3133. (*EnumOptions)(nil), // 20: google.protobuf.EnumOptions
  3134. (*EnumValueOptions)(nil), // 21: google.protobuf.EnumValueOptions
  3135. (*ServiceOptions)(nil), // 22: google.protobuf.ServiceOptions
  3136. (*MethodOptions)(nil), // 23: google.protobuf.MethodOptions
  3137. (*UninterpretedOption)(nil), // 24: google.protobuf.UninterpretedOption
  3138. (*SourceCodeInfo)(nil), // 25: google.protobuf.SourceCodeInfo
  3139. (*GeneratedCodeInfo)(nil), // 26: google.protobuf.GeneratedCodeInfo
  3140. (*DescriptorProto_ExtensionRange)(nil), // 27: google.protobuf.DescriptorProto.ExtensionRange
  3141. (*DescriptorProto_ReservedRange)(nil), // 28: google.protobuf.DescriptorProto.ReservedRange
  3142. (*EnumDescriptorProto_EnumReservedRange)(nil), // 29: google.protobuf.EnumDescriptorProto.EnumReservedRange
  3143. (*UninterpretedOption_NamePart)(nil), // 30: google.protobuf.UninterpretedOption.NamePart
  3144. (*SourceCodeInfo_Location)(nil), // 31: google.protobuf.SourceCodeInfo.Location
  3145. (*GeneratedCodeInfo_Annotation)(nil), // 32: google.protobuf.GeneratedCodeInfo.Annotation
  3146. }
  3147. var file_google_protobuf_descriptor_proto_depIdxs = []int32{
  3148. 7, // 0: google.protobuf.FileDescriptorSet.file:type_name -> google.protobuf.FileDescriptorProto
  3149. 8, // 1: google.protobuf.FileDescriptorProto.message_type:type_name -> google.protobuf.DescriptorProto
  3150. 12, // 2: google.protobuf.FileDescriptorProto.enum_type:type_name -> google.protobuf.EnumDescriptorProto
  3151. 14, // 3: google.protobuf.FileDescriptorProto.service:type_name -> google.protobuf.ServiceDescriptorProto
  3152. 10, // 4: google.protobuf.FileDescriptorProto.extension:type_name -> google.protobuf.FieldDescriptorProto
  3153. 16, // 5: google.protobuf.FileDescriptorProto.options:type_name -> google.protobuf.FileOptions
  3154. 25, // 6: google.protobuf.FileDescriptorProto.source_code_info:type_name -> google.protobuf.SourceCodeInfo
  3155. 10, // 7: google.protobuf.DescriptorProto.field:type_name -> google.protobuf.FieldDescriptorProto
  3156. 10, // 8: google.protobuf.DescriptorProto.extension:type_name -> google.protobuf.FieldDescriptorProto
  3157. 8, // 9: google.protobuf.DescriptorProto.nested_type:type_name -> google.protobuf.DescriptorProto
  3158. 12, // 10: google.protobuf.DescriptorProto.enum_type:type_name -> google.protobuf.EnumDescriptorProto
  3159. 27, // 11: google.protobuf.DescriptorProto.extension_range:type_name -> google.protobuf.DescriptorProto.ExtensionRange
  3160. 11, // 12: google.protobuf.DescriptorProto.oneof_decl:type_name -> google.protobuf.OneofDescriptorProto
  3161. 17, // 13: google.protobuf.DescriptorProto.options:type_name -> google.protobuf.MessageOptions
  3162. 28, // 14: google.protobuf.DescriptorProto.reserved_range:type_name -> google.protobuf.DescriptorProto.ReservedRange
  3163. 24, // 15: google.protobuf.ExtensionRangeOptions.uninterpreted_option:type_name -> google.protobuf.UninterpretedOption
  3164. 1, // 16: google.protobuf.FieldDescriptorProto.label:type_name -> google.protobuf.FieldDescriptorProto.Label
  3165. 0, // 17: google.protobuf.FieldDescriptorProto.type:type_name -> google.protobuf.FieldDescriptorProto.Type
  3166. 18, // 18: google.protobuf.FieldDescriptorProto.options:type_name -> google.protobuf.FieldOptions
  3167. 19, // 19: google.protobuf.OneofDescriptorProto.options:type_name -> google.protobuf.OneofOptions
  3168. 13, // 20: google.protobuf.EnumDescriptorProto.value:type_name -> google.protobuf.EnumValueDescriptorProto
  3169. 20, // 21: google.protobuf.EnumDescriptorProto.options:type_name -> google.protobuf.EnumOptions
  3170. 29, // 22: google.protobuf.EnumDescriptorProto.reserved_range:type_name -> google.protobuf.EnumDescriptorProto.EnumReservedRange
  3171. 21, // 23: google.protobuf.EnumValueDescriptorProto.options:type_name -> google.protobuf.EnumValueOptions
  3172. 15, // 24: google.protobuf.ServiceDescriptorProto.method:type_name -> google.protobuf.MethodDescriptorProto
  3173. 22, // 25: google.protobuf.ServiceDescriptorProto.options:type_name -> google.protobuf.ServiceOptions
  3174. 23, // 26: google.protobuf.MethodDescriptorProto.options:type_name -> google.protobuf.MethodOptions
  3175. 2, // 27: google.protobuf.FileOptions.optimize_for:type_name -> google.protobuf.FileOptions.OptimizeMode
  3176. 24, // 28: google.protobuf.FileOptions.uninterpreted_option:type_name -> google.protobuf.UninterpretedOption
  3177. 24, // 29: google.protobuf.MessageOptions.uninterpreted_option:type_name -> google.protobuf.UninterpretedOption
  3178. 3, // 30: google.protobuf.FieldOptions.ctype:type_name -> google.protobuf.FieldOptions.CType
  3179. 4, // 31: google.protobuf.FieldOptions.jstype:type_name -> google.protobuf.FieldOptions.JSType
  3180. 24, // 32: google.protobuf.FieldOptions.uninterpreted_option:type_name -> google.protobuf.UninterpretedOption
  3181. 24, // 33: google.protobuf.OneofOptions.uninterpreted_option:type_name -> google.protobuf.UninterpretedOption
  3182. 24, // 34: google.protobuf.EnumOptions.uninterpreted_option:type_name -> google.protobuf.UninterpretedOption
  3183. 24, // 35: google.protobuf.EnumValueOptions.uninterpreted_option:type_name -> google.protobuf.UninterpretedOption
  3184. 24, // 36: google.protobuf.ServiceOptions.uninterpreted_option:type_name -> google.protobuf.UninterpretedOption
  3185. 5, // 37: google.protobuf.MethodOptions.idempotency_level:type_name -> google.protobuf.MethodOptions.IdempotencyLevel
  3186. 24, // 38: google.protobuf.MethodOptions.uninterpreted_option:type_name -> google.protobuf.UninterpretedOption
  3187. 30, // 39: google.protobuf.UninterpretedOption.name:type_name -> google.protobuf.UninterpretedOption.NamePart
  3188. 31, // 40: google.protobuf.SourceCodeInfo.location:type_name -> google.protobuf.SourceCodeInfo.Location
  3189. 32, // 41: google.protobuf.GeneratedCodeInfo.annotation:type_name -> google.protobuf.GeneratedCodeInfo.Annotation
  3190. 9, // 42: google.protobuf.DescriptorProto.ExtensionRange.options:type_name -> google.protobuf.ExtensionRangeOptions
  3191. 43, // [43:43] is the sub-list for method output_type
  3192. 43, // [43:43] is the sub-list for method input_type
  3193. 43, // [43:43] is the sub-list for extension type_name
  3194. 43, // [43:43] is the sub-list for extension extendee
  3195. 0, // [0:43] is the sub-list for field type_name
  3196. }
  3197. func init() { file_google_protobuf_descriptor_proto_init() }
  3198. func file_google_protobuf_descriptor_proto_init() {
  3199. if File_google_protobuf_descriptor_proto != nil {
  3200. return
  3201. }
  3202. if !protoimpl.UnsafeEnabled {
  3203. file_google_protobuf_descriptor_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  3204. switch v := v.(*FileDescriptorSet); i {
  3205. case 0:
  3206. return &v.state
  3207. case 1:
  3208. return &v.sizeCache
  3209. case 2:
  3210. return &v.unknownFields
  3211. default:
  3212. return nil
  3213. }
  3214. }
  3215. file_google_protobuf_descriptor_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  3216. switch v := v.(*FileDescriptorProto); i {
  3217. case 0:
  3218. return &v.state
  3219. case 1:
  3220. return &v.sizeCache
  3221. case 2:
  3222. return &v.unknownFields
  3223. default:
  3224. return nil
  3225. }
  3226. }
  3227. file_google_protobuf_descriptor_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  3228. switch v := v.(*DescriptorProto); i {
  3229. case 0:
  3230. return &v.state
  3231. case 1:
  3232. return &v.sizeCache
  3233. case 2:
  3234. return &v.unknownFields
  3235. default:
  3236. return nil
  3237. }
  3238. }
  3239. file_google_protobuf_descriptor_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  3240. switch v := v.(*ExtensionRangeOptions); i {
  3241. case 0:
  3242. return &v.state
  3243. case 1:
  3244. return &v.sizeCache
  3245. case 2:
  3246. return &v.unknownFields
  3247. case 3:
  3248. return &v.extensionFields
  3249. default:
  3250. return nil
  3251. }
  3252. }
  3253. file_google_protobuf_descriptor_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  3254. switch v := v.(*FieldDescriptorProto); i {
  3255. case 0:
  3256. return &v.state
  3257. case 1:
  3258. return &v.sizeCache
  3259. case 2:
  3260. return &v.unknownFields
  3261. default:
  3262. return nil
  3263. }
  3264. }
  3265. file_google_protobuf_descriptor_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  3266. switch v := v.(*OneofDescriptorProto); i {
  3267. case 0:
  3268. return &v.state
  3269. case 1:
  3270. return &v.sizeCache
  3271. case 2:
  3272. return &v.unknownFields
  3273. default:
  3274. return nil
  3275. }
  3276. }
  3277. file_google_protobuf_descriptor_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  3278. switch v := v.(*EnumDescriptorProto); i {
  3279. case 0:
  3280. return &v.state
  3281. case 1:
  3282. return &v.sizeCache
  3283. case 2:
  3284. return &v.unknownFields
  3285. default:
  3286. return nil
  3287. }
  3288. }
  3289. file_google_protobuf_descriptor_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  3290. switch v := v.(*EnumValueDescriptorProto); i {
  3291. case 0:
  3292. return &v.state
  3293. case 1:
  3294. return &v.sizeCache
  3295. case 2:
  3296. return &v.unknownFields
  3297. default:
  3298. return nil
  3299. }
  3300. }
  3301. file_google_protobuf_descriptor_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  3302. switch v := v.(*ServiceDescriptorProto); i {
  3303. case 0:
  3304. return &v.state
  3305. case 1:
  3306. return &v.sizeCache
  3307. case 2:
  3308. return &v.unknownFields
  3309. default:
  3310. return nil
  3311. }
  3312. }
  3313. file_google_protobuf_descriptor_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  3314. switch v := v.(*MethodDescriptorProto); i {
  3315. case 0:
  3316. return &v.state
  3317. case 1:
  3318. return &v.sizeCache
  3319. case 2:
  3320. return &v.unknownFields
  3321. default:
  3322. return nil
  3323. }
  3324. }
  3325. file_google_protobuf_descriptor_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  3326. switch v := v.(*FileOptions); i {
  3327. case 0:
  3328. return &v.state
  3329. case 1:
  3330. return &v.sizeCache
  3331. case 2:
  3332. return &v.unknownFields
  3333. case 3:
  3334. return &v.extensionFields
  3335. default:
  3336. return nil
  3337. }
  3338. }
  3339. file_google_protobuf_descriptor_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
  3340. switch v := v.(*MessageOptions); i {
  3341. case 0:
  3342. return &v.state
  3343. case 1:
  3344. return &v.sizeCache
  3345. case 2:
  3346. return &v.unknownFields
  3347. case 3:
  3348. return &v.extensionFields
  3349. default:
  3350. return nil
  3351. }
  3352. }
  3353. file_google_protobuf_descriptor_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
  3354. switch v := v.(*FieldOptions); i {
  3355. case 0:
  3356. return &v.state
  3357. case 1:
  3358. return &v.sizeCache
  3359. case 2:
  3360. return &v.unknownFields
  3361. case 3:
  3362. return &v.extensionFields
  3363. default:
  3364. return nil
  3365. }
  3366. }
  3367. file_google_protobuf_descriptor_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
  3368. switch v := v.(*OneofOptions); i {
  3369. case 0:
  3370. return &v.state
  3371. case 1:
  3372. return &v.sizeCache
  3373. case 2:
  3374. return &v.unknownFields
  3375. case 3:
  3376. return &v.extensionFields
  3377. default:
  3378. return nil
  3379. }
  3380. }
  3381. file_google_protobuf_descriptor_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
  3382. switch v := v.(*EnumOptions); i {
  3383. case 0:
  3384. return &v.state
  3385. case 1:
  3386. return &v.sizeCache
  3387. case 2:
  3388. return &v.unknownFields
  3389. case 3:
  3390. return &v.extensionFields
  3391. default:
  3392. return nil
  3393. }
  3394. }
  3395. file_google_protobuf_descriptor_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
  3396. switch v := v.(*EnumValueOptions); i {
  3397. case 0:
  3398. return &v.state
  3399. case 1:
  3400. return &v.sizeCache
  3401. case 2:
  3402. return &v.unknownFields
  3403. case 3:
  3404. return &v.extensionFields
  3405. default:
  3406. return nil
  3407. }
  3408. }
  3409. file_google_protobuf_descriptor_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
  3410. switch v := v.(*ServiceOptions); i {
  3411. case 0:
  3412. return &v.state
  3413. case 1:
  3414. return &v.sizeCache
  3415. case 2:
  3416. return &v.unknownFields
  3417. case 3:
  3418. return &v.extensionFields
  3419. default:
  3420. return nil
  3421. }
  3422. }
  3423. file_google_protobuf_descriptor_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
  3424. switch v := v.(*MethodOptions); i {
  3425. case 0:
  3426. return &v.state
  3427. case 1:
  3428. return &v.sizeCache
  3429. case 2:
  3430. return &v.unknownFields
  3431. case 3:
  3432. return &v.extensionFields
  3433. default:
  3434. return nil
  3435. }
  3436. }
  3437. file_google_protobuf_descriptor_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
  3438. switch v := v.(*UninterpretedOption); i {
  3439. case 0:
  3440. return &v.state
  3441. case 1:
  3442. return &v.sizeCache
  3443. case 2:
  3444. return &v.unknownFields
  3445. default:
  3446. return nil
  3447. }
  3448. }
  3449. file_google_protobuf_descriptor_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
  3450. switch v := v.(*SourceCodeInfo); i {
  3451. case 0:
  3452. return &v.state
  3453. case 1:
  3454. return &v.sizeCache
  3455. case 2:
  3456. return &v.unknownFields
  3457. default:
  3458. return nil
  3459. }
  3460. }
  3461. file_google_protobuf_descriptor_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
  3462. switch v := v.(*GeneratedCodeInfo); i {
  3463. case 0:
  3464. return &v.state
  3465. case 1:
  3466. return &v.sizeCache
  3467. case 2:
  3468. return &v.unknownFields
  3469. default:
  3470. return nil
  3471. }
  3472. }
  3473. file_google_protobuf_descriptor_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
  3474. switch v := v.(*DescriptorProto_ExtensionRange); i {
  3475. case 0:
  3476. return &v.state
  3477. case 1:
  3478. return &v.sizeCache
  3479. case 2:
  3480. return &v.unknownFields
  3481. default:
  3482. return nil
  3483. }
  3484. }
  3485. file_google_protobuf_descriptor_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
  3486. switch v := v.(*DescriptorProto_ReservedRange); i {
  3487. case 0:
  3488. return &v.state
  3489. case 1:
  3490. return &v.sizeCache
  3491. case 2:
  3492. return &v.unknownFields
  3493. default:
  3494. return nil
  3495. }
  3496. }
  3497. file_google_protobuf_descriptor_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
  3498. switch v := v.(*EnumDescriptorProto_EnumReservedRange); i {
  3499. case 0:
  3500. return &v.state
  3501. case 1:
  3502. return &v.sizeCache
  3503. case 2:
  3504. return &v.unknownFields
  3505. default:
  3506. return nil
  3507. }
  3508. }
  3509. file_google_protobuf_descriptor_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
  3510. switch v := v.(*UninterpretedOption_NamePart); i {
  3511. case 0:
  3512. return &v.state
  3513. case 1:
  3514. return &v.sizeCache
  3515. case 2:
  3516. return &v.unknownFields
  3517. default:
  3518. return nil
  3519. }
  3520. }
  3521. file_google_protobuf_descriptor_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
  3522. switch v := v.(*SourceCodeInfo_Location); i {
  3523. case 0:
  3524. return &v.state
  3525. case 1:
  3526. return &v.sizeCache
  3527. case 2:
  3528. return &v.unknownFields
  3529. default:
  3530. return nil
  3531. }
  3532. }
  3533. file_google_protobuf_descriptor_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
  3534. switch v := v.(*GeneratedCodeInfo_Annotation); i {
  3535. case 0:
  3536. return &v.state
  3537. case 1:
  3538. return &v.sizeCache
  3539. case 2:
  3540. return &v.unknownFields
  3541. default:
  3542. return nil
  3543. }
  3544. }
  3545. }
  3546. type x struct{}
  3547. out := protoimpl.TypeBuilder{
  3548. File: protoimpl.DescBuilder{
  3549. GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  3550. RawDescriptor: file_google_protobuf_descriptor_proto_rawDesc,
  3551. NumEnums: 6,
  3552. NumMessages: 27,
  3553. NumExtensions: 0,
  3554. NumServices: 0,
  3555. },
  3556. GoTypes: file_google_protobuf_descriptor_proto_goTypes,
  3557. DependencyIndexes: file_google_protobuf_descriptor_proto_depIdxs,
  3558. EnumInfos: file_google_protobuf_descriptor_proto_enumTypes,
  3559. MessageInfos: file_google_protobuf_descriptor_proto_msgTypes,
  3560. }.Build()
  3561. File_google_protobuf_descriptor_proto = out.File
  3562. file_google_protobuf_descriptor_proto_rawDesc = nil
  3563. file_google_protobuf_descriptor_proto_goTypes = nil
  3564. file_google_protobuf_descriptor_proto_depIdxs = nil
  3565. }