github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/libraries/golang/protobuf/protoc-gen-go/descriptor/descriptor.pb.go (about) 1 // Code generated by protoc-gen-go. 2 // source: google/protobuf/descriptor.proto 3 // DO NOT EDIT! 4 5 /* 6 Package descriptor is a generated protocol buffer package. 7 8 It is generated from these files: 9 google/protobuf/descriptor.proto 10 11 It has these top-level messages: 12 FileDescriptorSet 13 FileDescriptorProto 14 DescriptorProto 15 FieldDescriptorProto 16 OneofDescriptorProto 17 EnumDescriptorProto 18 EnumValueDescriptorProto 19 ServiceDescriptorProto 20 MethodDescriptorProto 21 FileOptions 22 MessageOptions 23 FieldOptions 24 EnumOptions 25 EnumValueOptions 26 ServiceOptions 27 MethodOptions 28 UninterpretedOption 29 SourceCodeInfo 30 */ 31 package descriptor 32 33 import proto "github.com/insionng/yougam/libraries/golang/protobuf/proto" 34 import fmt "fmt" 35 import math "math" 36 37 // Reference imports to suppress errors if they are not otherwise used. 38 var _ = proto.Marshal 39 var _ = fmt.Errorf 40 var _ = math.Inf 41 42 // This is a compile-time assertion to ensure that this generated file 43 // is compatible with the proto package it is being compiled against. 44 const _ = proto.ProtoPackageIsVersion1 45 46 type FieldDescriptorProto_Type int32 47 48 const ( 49 // 0 is reserved for errors. 50 // Order is weird for historical reasons. 51 FieldDescriptorProto_TYPE_DOUBLE FieldDescriptorProto_Type = 1 52 FieldDescriptorProto_TYPE_FLOAT FieldDescriptorProto_Type = 2 53 // Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT64 if 54 // negative values are likely. 55 FieldDescriptorProto_TYPE_INT64 FieldDescriptorProto_Type = 3 56 FieldDescriptorProto_TYPE_UINT64 FieldDescriptorProto_Type = 4 57 // Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT32 if 58 // negative values are likely. 59 FieldDescriptorProto_TYPE_INT32 FieldDescriptorProto_Type = 5 60 FieldDescriptorProto_TYPE_FIXED64 FieldDescriptorProto_Type = 6 61 FieldDescriptorProto_TYPE_FIXED32 FieldDescriptorProto_Type = 7 62 FieldDescriptorProto_TYPE_BOOL FieldDescriptorProto_Type = 8 63 FieldDescriptorProto_TYPE_STRING FieldDescriptorProto_Type = 9 64 FieldDescriptorProto_TYPE_GROUP FieldDescriptorProto_Type = 10 65 FieldDescriptorProto_TYPE_MESSAGE FieldDescriptorProto_Type = 11 66 // New in version 2. 67 FieldDescriptorProto_TYPE_BYTES FieldDescriptorProto_Type = 12 68 FieldDescriptorProto_TYPE_UINT32 FieldDescriptorProto_Type = 13 69 FieldDescriptorProto_TYPE_ENUM FieldDescriptorProto_Type = 14 70 FieldDescriptorProto_TYPE_SFIXED32 FieldDescriptorProto_Type = 15 71 FieldDescriptorProto_TYPE_SFIXED64 FieldDescriptorProto_Type = 16 72 FieldDescriptorProto_TYPE_SINT32 FieldDescriptorProto_Type = 17 73 FieldDescriptorProto_TYPE_SINT64 FieldDescriptorProto_Type = 18 74 ) 75 76 var FieldDescriptorProto_Type_name = map[int32]string{ 77 1: "TYPE_DOUBLE", 78 2: "TYPE_FLOAT", 79 3: "TYPE_INT64", 80 4: "TYPE_UINT64", 81 5: "TYPE_INT32", 82 6: "TYPE_FIXED64", 83 7: "TYPE_FIXED32", 84 8: "TYPE_BOOL", 85 9: "TYPE_STRING", 86 10: "TYPE_GROUP", 87 11: "TYPE_MESSAGE", 88 12: "TYPE_BYTES", 89 13: "TYPE_UINT32", 90 14: "TYPE_ENUM", 91 15: "TYPE_SFIXED32", 92 16: "TYPE_SFIXED64", 93 17: "TYPE_SINT32", 94 18: "TYPE_SINT64", 95 } 96 var FieldDescriptorProto_Type_value = map[string]int32{ 97 "TYPE_DOUBLE": 1, 98 "TYPE_FLOAT": 2, 99 "TYPE_INT64": 3, 100 "TYPE_UINT64": 4, 101 "TYPE_INT32": 5, 102 "TYPE_FIXED64": 6, 103 "TYPE_FIXED32": 7, 104 "TYPE_BOOL": 8, 105 "TYPE_STRING": 9, 106 "TYPE_GROUP": 10, 107 "TYPE_MESSAGE": 11, 108 "TYPE_BYTES": 12, 109 "TYPE_UINT32": 13, 110 "TYPE_ENUM": 14, 111 "TYPE_SFIXED32": 15, 112 "TYPE_SFIXED64": 16, 113 "TYPE_SINT32": 17, 114 "TYPE_SINT64": 18, 115 } 116 117 func (x FieldDescriptorProto_Type) Enum() *FieldDescriptorProto_Type { 118 p := new(FieldDescriptorProto_Type) 119 *p = x 120 return p 121 } 122 func (x FieldDescriptorProto_Type) String() string { 123 return proto.EnumName(FieldDescriptorProto_Type_name, int32(x)) 124 } 125 func (x *FieldDescriptorProto_Type) UnmarshalJSON(data []byte) error { 126 value, err := proto.UnmarshalJSONEnum(FieldDescriptorProto_Type_value, data, "FieldDescriptorProto_Type") 127 if err != nil { 128 return err 129 } 130 *x = FieldDescriptorProto_Type(value) 131 return nil 132 } 133 func (FieldDescriptorProto_Type) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{3, 0} } 134 135 type FieldDescriptorProto_Label int32 136 137 const ( 138 // 0 is reserved for errors 139 FieldDescriptorProto_LABEL_OPTIONAL FieldDescriptorProto_Label = 1 140 FieldDescriptorProto_LABEL_REQUIRED FieldDescriptorProto_Label = 2 141 FieldDescriptorProto_LABEL_REPEATED FieldDescriptorProto_Label = 3 142 ) 143 144 var FieldDescriptorProto_Label_name = map[int32]string{ 145 1: "LABEL_OPTIONAL", 146 2: "LABEL_REQUIRED", 147 3: "LABEL_REPEATED", 148 } 149 var FieldDescriptorProto_Label_value = map[string]int32{ 150 "LABEL_OPTIONAL": 1, 151 "LABEL_REQUIRED": 2, 152 "LABEL_REPEATED": 3, 153 } 154 155 func (x FieldDescriptorProto_Label) Enum() *FieldDescriptorProto_Label { 156 p := new(FieldDescriptorProto_Label) 157 *p = x 158 return p 159 } 160 func (x FieldDescriptorProto_Label) String() string { 161 return proto.EnumName(FieldDescriptorProto_Label_name, int32(x)) 162 } 163 func (x *FieldDescriptorProto_Label) UnmarshalJSON(data []byte) error { 164 value, err := proto.UnmarshalJSONEnum(FieldDescriptorProto_Label_value, data, "FieldDescriptorProto_Label") 165 if err != nil { 166 return err 167 } 168 *x = FieldDescriptorProto_Label(value) 169 return nil 170 } 171 func (FieldDescriptorProto_Label) EnumDescriptor() ([]byte, []int) { 172 return fileDescriptor0, []int{3, 1} 173 } 174 175 // Generated classes can be optimized for speed or code size. 176 type FileOptions_OptimizeMode int32 177 178 const ( 179 FileOptions_SPEED FileOptions_OptimizeMode = 1 180 // etc. 181 FileOptions_CODE_SIZE FileOptions_OptimizeMode = 2 182 FileOptions_LITE_RUNTIME FileOptions_OptimizeMode = 3 183 ) 184 185 var FileOptions_OptimizeMode_name = map[int32]string{ 186 1: "SPEED", 187 2: "CODE_SIZE", 188 3: "LITE_RUNTIME", 189 } 190 var FileOptions_OptimizeMode_value = map[string]int32{ 191 "SPEED": 1, 192 "CODE_SIZE": 2, 193 "LITE_RUNTIME": 3, 194 } 195 196 func (x FileOptions_OptimizeMode) Enum() *FileOptions_OptimizeMode { 197 p := new(FileOptions_OptimizeMode) 198 *p = x 199 return p 200 } 201 func (x FileOptions_OptimizeMode) String() string { 202 return proto.EnumName(FileOptions_OptimizeMode_name, int32(x)) 203 } 204 func (x *FileOptions_OptimizeMode) UnmarshalJSON(data []byte) error { 205 value, err := proto.UnmarshalJSONEnum(FileOptions_OptimizeMode_value, data, "FileOptions_OptimizeMode") 206 if err != nil { 207 return err 208 } 209 *x = FileOptions_OptimizeMode(value) 210 return nil 211 } 212 func (FileOptions_OptimizeMode) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{9, 0} } 213 214 type FieldOptions_CType int32 215 216 const ( 217 // Default mode. 218 FieldOptions_STRING FieldOptions_CType = 0 219 FieldOptions_CORD FieldOptions_CType = 1 220 FieldOptions_STRING_PIECE FieldOptions_CType = 2 221 ) 222 223 var FieldOptions_CType_name = map[int32]string{ 224 0: "STRING", 225 1: "CORD", 226 2: "STRING_PIECE", 227 } 228 var FieldOptions_CType_value = map[string]int32{ 229 "STRING": 0, 230 "CORD": 1, 231 "STRING_PIECE": 2, 232 } 233 234 func (x FieldOptions_CType) Enum() *FieldOptions_CType { 235 p := new(FieldOptions_CType) 236 *p = x 237 return p 238 } 239 func (x FieldOptions_CType) String() string { 240 return proto.EnumName(FieldOptions_CType_name, int32(x)) 241 } 242 func (x *FieldOptions_CType) UnmarshalJSON(data []byte) error { 243 value, err := proto.UnmarshalJSONEnum(FieldOptions_CType_value, data, "FieldOptions_CType") 244 if err != nil { 245 return err 246 } 247 *x = FieldOptions_CType(value) 248 return nil 249 } 250 func (FieldOptions_CType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{11, 0} } 251 252 type FieldOptions_JSType int32 253 254 const ( 255 // Use the default type. 256 FieldOptions_JS_NORMAL FieldOptions_JSType = 0 257 // Use JavaScript strings. 258 FieldOptions_JS_STRING FieldOptions_JSType = 1 259 // Use JavaScript numbers. 260 FieldOptions_JS_NUMBER FieldOptions_JSType = 2 261 ) 262 263 var FieldOptions_JSType_name = map[int32]string{ 264 0: "JS_NORMAL", 265 1: "JS_STRING", 266 2: "JS_NUMBER", 267 } 268 var FieldOptions_JSType_value = map[string]int32{ 269 "JS_NORMAL": 0, 270 "JS_STRING": 1, 271 "JS_NUMBER": 2, 272 } 273 274 func (x FieldOptions_JSType) Enum() *FieldOptions_JSType { 275 p := new(FieldOptions_JSType) 276 *p = x 277 return p 278 } 279 func (x FieldOptions_JSType) String() string { 280 return proto.EnumName(FieldOptions_JSType_name, int32(x)) 281 } 282 func (x *FieldOptions_JSType) UnmarshalJSON(data []byte) error { 283 value, err := proto.UnmarshalJSONEnum(FieldOptions_JSType_value, data, "FieldOptions_JSType") 284 if err != nil { 285 return err 286 } 287 *x = FieldOptions_JSType(value) 288 return nil 289 } 290 func (FieldOptions_JSType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{11, 1} } 291 292 // The protocol compiler can output a FileDescriptorSet containing the .proto 293 // files it parses. 294 type FileDescriptorSet struct { 295 File []*FileDescriptorProto `protobuf:"bytes,1,rep,name=file" json:"file,omitempty"` 296 XXX_unrecognized []byte `json:"-"` 297 } 298 299 func (m *FileDescriptorSet) Reset() { *m = FileDescriptorSet{} } 300 func (m *FileDescriptorSet) String() string { return proto.CompactTextString(m) } 301 func (*FileDescriptorSet) ProtoMessage() {} 302 func (*FileDescriptorSet) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} } 303 304 func (m *FileDescriptorSet) GetFile() []*FileDescriptorProto { 305 if m != nil { 306 return m.File 307 } 308 return nil 309 } 310 311 // Describes a complete .proto file. 312 type FileDescriptorProto struct { 313 Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` 314 Package *string `protobuf:"bytes,2,opt,name=package" json:"package,omitempty"` 315 // Names of files imported by this file. 316 Dependency []string `protobuf:"bytes,3,rep,name=dependency" json:"dependency,omitempty"` 317 // Indexes of the public imported files in the dependency list above. 318 PublicDependency []int32 `protobuf:"varint,10,rep,name=public_dependency,json=publicDependency" json:"public_dependency,omitempty"` 319 // Indexes of the weak imported files in the dependency list. 320 // For Google-internal migration only. Do not use. 321 WeakDependency []int32 `protobuf:"varint,11,rep,name=weak_dependency,json=weakDependency" json:"weak_dependency,omitempty"` 322 // All top-level definitions in this file. 323 MessageType []*DescriptorProto `protobuf:"bytes,4,rep,name=message_type,json=messageType" json:"message_type,omitempty"` 324 EnumType []*EnumDescriptorProto `protobuf:"bytes,5,rep,name=enum_type,json=enumType" json:"enum_type,omitempty"` 325 Service []*ServiceDescriptorProto `protobuf:"bytes,6,rep,name=service" json:"service,omitempty"` 326 Extension []*FieldDescriptorProto `protobuf:"bytes,7,rep,name=extension" json:"extension,omitempty"` 327 Options *FileOptions `protobuf:"bytes,8,opt,name=options" json:"options,omitempty"` 328 // This field contains optional information about the original source code. 329 // You may safely remove this entire field without harming runtime 330 // functionality of the descriptors -- the information is needed only by 331 // development tools. 332 SourceCodeInfo *SourceCodeInfo `protobuf:"bytes,9,opt,name=source_code_info,json=sourceCodeInfo" json:"source_code_info,omitempty"` 333 // The syntax of the proto file. 334 // The supported values are "proto2" and "proto3". 335 Syntax *string `protobuf:"bytes,12,opt,name=syntax" json:"syntax,omitempty"` 336 XXX_unrecognized []byte `json:"-"` 337 } 338 339 func (m *FileDescriptorProto) Reset() { *m = FileDescriptorProto{} } 340 func (m *FileDescriptorProto) String() string { return proto.CompactTextString(m) } 341 func (*FileDescriptorProto) ProtoMessage() {} 342 func (*FileDescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} } 343 344 func (m *FileDescriptorProto) GetName() string { 345 if m != nil && m.Name != nil { 346 return *m.Name 347 } 348 return "" 349 } 350 351 func (m *FileDescriptorProto) GetPackage() string { 352 if m != nil && m.Package != nil { 353 return *m.Package 354 } 355 return "" 356 } 357 358 func (m *FileDescriptorProto) GetDependency() []string { 359 if m != nil { 360 return m.Dependency 361 } 362 return nil 363 } 364 365 func (m *FileDescriptorProto) GetPublicDependency() []int32 { 366 if m != nil { 367 return m.PublicDependency 368 } 369 return nil 370 } 371 372 func (m *FileDescriptorProto) GetWeakDependency() []int32 { 373 if m != nil { 374 return m.WeakDependency 375 } 376 return nil 377 } 378 379 func (m *FileDescriptorProto) GetMessageType() []*DescriptorProto { 380 if m != nil { 381 return m.MessageType 382 } 383 return nil 384 } 385 386 func (m *FileDescriptorProto) GetEnumType() []*EnumDescriptorProto { 387 if m != nil { 388 return m.EnumType 389 } 390 return nil 391 } 392 393 func (m *FileDescriptorProto) GetService() []*ServiceDescriptorProto { 394 if m != nil { 395 return m.Service 396 } 397 return nil 398 } 399 400 func (m *FileDescriptorProto) GetExtension() []*FieldDescriptorProto { 401 if m != nil { 402 return m.Extension 403 } 404 return nil 405 } 406 407 func (m *FileDescriptorProto) GetOptions() *FileOptions { 408 if m != nil { 409 return m.Options 410 } 411 return nil 412 } 413 414 func (m *FileDescriptorProto) GetSourceCodeInfo() *SourceCodeInfo { 415 if m != nil { 416 return m.SourceCodeInfo 417 } 418 return nil 419 } 420 421 func (m *FileDescriptorProto) GetSyntax() string { 422 if m != nil && m.Syntax != nil { 423 return *m.Syntax 424 } 425 return "" 426 } 427 428 // Describes a message type. 429 type DescriptorProto struct { 430 Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` 431 Field []*FieldDescriptorProto `protobuf:"bytes,2,rep,name=field" json:"field,omitempty"` 432 Extension []*FieldDescriptorProto `protobuf:"bytes,6,rep,name=extension" json:"extension,omitempty"` 433 NestedType []*DescriptorProto `protobuf:"bytes,3,rep,name=nested_type,json=nestedType" json:"nested_type,omitempty"` 434 EnumType []*EnumDescriptorProto `protobuf:"bytes,4,rep,name=enum_type,json=enumType" json:"enum_type,omitempty"` 435 ExtensionRange []*DescriptorProto_ExtensionRange `protobuf:"bytes,5,rep,name=extension_range,json=extensionRange" json:"extension_range,omitempty"` 436 OneofDecl []*OneofDescriptorProto `protobuf:"bytes,8,rep,name=oneof_decl,json=oneofDecl" json:"oneof_decl,omitempty"` 437 Options *MessageOptions `protobuf:"bytes,7,opt,name=options" json:"options,omitempty"` 438 ReservedRange []*DescriptorProto_ReservedRange `protobuf:"bytes,9,rep,name=reserved_range,json=reservedRange" json:"reserved_range,omitempty"` 439 // Reserved field names, which may not be used by fields in the same message. 440 // A given name may only be reserved once. 441 ReservedName []string `protobuf:"bytes,10,rep,name=reserved_name,json=reservedName" json:"reserved_name,omitempty"` 442 XXX_unrecognized []byte `json:"-"` 443 } 444 445 func (m *DescriptorProto) Reset() { *m = DescriptorProto{} } 446 func (m *DescriptorProto) String() string { return proto.CompactTextString(m) } 447 func (*DescriptorProto) ProtoMessage() {} 448 func (*DescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} } 449 450 func (m *DescriptorProto) GetName() string { 451 if m != nil && m.Name != nil { 452 return *m.Name 453 } 454 return "" 455 } 456 457 func (m *DescriptorProto) GetField() []*FieldDescriptorProto { 458 if m != nil { 459 return m.Field 460 } 461 return nil 462 } 463 464 func (m *DescriptorProto) GetExtension() []*FieldDescriptorProto { 465 if m != nil { 466 return m.Extension 467 } 468 return nil 469 } 470 471 func (m *DescriptorProto) GetNestedType() []*DescriptorProto { 472 if m != nil { 473 return m.NestedType 474 } 475 return nil 476 } 477 478 func (m *DescriptorProto) GetEnumType() []*EnumDescriptorProto { 479 if m != nil { 480 return m.EnumType 481 } 482 return nil 483 } 484 485 func (m *DescriptorProto) GetExtensionRange() []*DescriptorProto_ExtensionRange { 486 if m != nil { 487 return m.ExtensionRange 488 } 489 return nil 490 } 491 492 func (m *DescriptorProto) GetOneofDecl() []*OneofDescriptorProto { 493 if m != nil { 494 return m.OneofDecl 495 } 496 return nil 497 } 498 499 func (m *DescriptorProto) GetOptions() *MessageOptions { 500 if m != nil { 501 return m.Options 502 } 503 return nil 504 } 505 506 func (m *DescriptorProto) GetReservedRange() []*DescriptorProto_ReservedRange { 507 if m != nil { 508 return m.ReservedRange 509 } 510 return nil 511 } 512 513 func (m *DescriptorProto) GetReservedName() []string { 514 if m != nil { 515 return m.ReservedName 516 } 517 return nil 518 } 519 520 type DescriptorProto_ExtensionRange struct { 521 Start *int32 `protobuf:"varint,1,opt,name=start" json:"start,omitempty"` 522 End *int32 `protobuf:"varint,2,opt,name=end" json:"end,omitempty"` 523 XXX_unrecognized []byte `json:"-"` 524 } 525 526 func (m *DescriptorProto_ExtensionRange) Reset() { *m = DescriptorProto_ExtensionRange{} } 527 func (m *DescriptorProto_ExtensionRange) String() string { return proto.CompactTextString(m) } 528 func (*DescriptorProto_ExtensionRange) ProtoMessage() {} 529 func (*DescriptorProto_ExtensionRange) Descriptor() ([]byte, []int) { 530 return fileDescriptor0, []int{2, 0} 531 } 532 533 func (m *DescriptorProto_ExtensionRange) GetStart() int32 { 534 if m != nil && m.Start != nil { 535 return *m.Start 536 } 537 return 0 538 } 539 540 func (m *DescriptorProto_ExtensionRange) GetEnd() int32 { 541 if m != nil && m.End != nil { 542 return *m.End 543 } 544 return 0 545 } 546 547 // Range of reserved tag numbers. Reserved tag numbers may not be used by 548 // fields or extension ranges in the same message. Reserved ranges may 549 // not overlap. 550 type DescriptorProto_ReservedRange struct { 551 Start *int32 `protobuf:"varint,1,opt,name=start" json:"start,omitempty"` 552 End *int32 `protobuf:"varint,2,opt,name=end" json:"end,omitempty"` 553 XXX_unrecognized []byte `json:"-"` 554 } 555 556 func (m *DescriptorProto_ReservedRange) Reset() { *m = DescriptorProto_ReservedRange{} } 557 func (m *DescriptorProto_ReservedRange) String() string { return proto.CompactTextString(m) } 558 func (*DescriptorProto_ReservedRange) ProtoMessage() {} 559 func (*DescriptorProto_ReservedRange) Descriptor() ([]byte, []int) { 560 return fileDescriptor0, []int{2, 1} 561 } 562 563 func (m *DescriptorProto_ReservedRange) GetStart() int32 { 564 if m != nil && m.Start != nil { 565 return *m.Start 566 } 567 return 0 568 } 569 570 func (m *DescriptorProto_ReservedRange) GetEnd() int32 { 571 if m != nil && m.End != nil { 572 return *m.End 573 } 574 return 0 575 } 576 577 // Describes a field within a message. 578 type FieldDescriptorProto struct { 579 Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` 580 Number *int32 `protobuf:"varint,3,opt,name=number" json:"number,omitempty"` 581 Label *FieldDescriptorProto_Label `protobuf:"varint,4,opt,name=label,enum=google.protobuf.FieldDescriptorProto_Label" json:"label,omitempty"` 582 // If type_name is set, this need not be set. If both this and type_name 583 // are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP. 584 Type *FieldDescriptorProto_Type `protobuf:"varint,5,opt,name=type,enum=google.protobuf.FieldDescriptorProto_Type" json:"type,omitempty"` 585 // For message and enum types, this is the name of the type. If the name 586 // starts with a '.', it is fully-qualified. Otherwise, C++-like scoping 587 // rules are used to find the type (i.e. first the nested types within this 588 // message are searched, then within the parent, on up to the root 589 // namespace). 590 TypeName *string `protobuf:"bytes,6,opt,name=type_name,json=typeName" json:"type_name,omitempty"` 591 // For extensions, this is the name of the type being extended. It is 592 // resolved in the same manner as type_name. 593 Extendee *string `protobuf:"bytes,2,opt,name=extendee" json:"extendee,omitempty"` 594 // For numeric types, contains the original text representation of the value. 595 // For booleans, "true" or "false". 596 // For strings, contains the default text contents (not escaped in any way). 597 // For bytes, contains the C escaped value. All bytes >= 128 are escaped. 598 // TODO(kenton): Base-64 encode? 599 DefaultValue *string `protobuf:"bytes,7,opt,name=default_value,json=defaultValue" json:"default_value,omitempty"` 600 // If set, gives the index of a oneof in the containing type's oneof_decl 601 // list. This field is a member of that oneof. 602 OneofIndex *int32 `protobuf:"varint,9,opt,name=oneof_index,json=oneofIndex" json:"oneof_index,omitempty"` 603 // JSON name of this field. The value is set by protocol compiler. If the 604 // user has set a "json_name" option on this field, that option's value 605 // will be used. Otherwise, it's deduced from the field's name by converting 606 // it to camelCase. 607 JsonName *string `protobuf:"bytes,10,opt,name=json_name,json=jsonName" json:"json_name,omitempty"` 608 Options *FieldOptions `protobuf:"bytes,8,opt,name=options" json:"options,omitempty"` 609 XXX_unrecognized []byte `json:"-"` 610 } 611 612 func (m *FieldDescriptorProto) Reset() { *m = FieldDescriptorProto{} } 613 func (m *FieldDescriptorProto) String() string { return proto.CompactTextString(m) } 614 func (*FieldDescriptorProto) ProtoMessage() {} 615 func (*FieldDescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} } 616 617 func (m *FieldDescriptorProto) GetName() string { 618 if m != nil && m.Name != nil { 619 return *m.Name 620 } 621 return "" 622 } 623 624 func (m *FieldDescriptorProto) GetNumber() int32 { 625 if m != nil && m.Number != nil { 626 return *m.Number 627 } 628 return 0 629 } 630 631 func (m *FieldDescriptorProto) GetLabel() FieldDescriptorProto_Label { 632 if m != nil && m.Label != nil { 633 return *m.Label 634 } 635 return FieldDescriptorProto_LABEL_OPTIONAL 636 } 637 638 func (m *FieldDescriptorProto) GetType() FieldDescriptorProto_Type { 639 if m != nil && m.Type != nil { 640 return *m.Type 641 } 642 return FieldDescriptorProto_TYPE_DOUBLE 643 } 644 645 func (m *FieldDescriptorProto) GetTypeName() string { 646 if m != nil && m.TypeName != nil { 647 return *m.TypeName 648 } 649 return "" 650 } 651 652 func (m *FieldDescriptorProto) GetExtendee() string { 653 if m != nil && m.Extendee != nil { 654 return *m.Extendee 655 } 656 return "" 657 } 658 659 func (m *FieldDescriptorProto) GetDefaultValue() string { 660 if m != nil && m.DefaultValue != nil { 661 return *m.DefaultValue 662 } 663 return "" 664 } 665 666 func (m *FieldDescriptorProto) GetOneofIndex() int32 { 667 if m != nil && m.OneofIndex != nil { 668 return *m.OneofIndex 669 } 670 return 0 671 } 672 673 func (m *FieldDescriptorProto) GetJsonName() string { 674 if m != nil && m.JsonName != nil { 675 return *m.JsonName 676 } 677 return "" 678 } 679 680 func (m *FieldDescriptorProto) GetOptions() *FieldOptions { 681 if m != nil { 682 return m.Options 683 } 684 return nil 685 } 686 687 // Describes a oneof. 688 type OneofDescriptorProto struct { 689 Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` 690 XXX_unrecognized []byte `json:"-"` 691 } 692 693 func (m *OneofDescriptorProto) Reset() { *m = OneofDescriptorProto{} } 694 func (m *OneofDescriptorProto) String() string { return proto.CompactTextString(m) } 695 func (*OneofDescriptorProto) ProtoMessage() {} 696 func (*OneofDescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} } 697 698 func (m *OneofDescriptorProto) GetName() string { 699 if m != nil && m.Name != nil { 700 return *m.Name 701 } 702 return "" 703 } 704 705 // Describes an enum type. 706 type EnumDescriptorProto struct { 707 Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` 708 Value []*EnumValueDescriptorProto `protobuf:"bytes,2,rep,name=value" json:"value,omitempty"` 709 Options *EnumOptions `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"` 710 XXX_unrecognized []byte `json:"-"` 711 } 712 713 func (m *EnumDescriptorProto) Reset() { *m = EnumDescriptorProto{} } 714 func (m *EnumDescriptorProto) String() string { return proto.CompactTextString(m) } 715 func (*EnumDescriptorProto) ProtoMessage() {} 716 func (*EnumDescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} } 717 718 func (m *EnumDescriptorProto) GetName() string { 719 if m != nil && m.Name != nil { 720 return *m.Name 721 } 722 return "" 723 } 724 725 func (m *EnumDescriptorProto) GetValue() []*EnumValueDescriptorProto { 726 if m != nil { 727 return m.Value 728 } 729 return nil 730 } 731 732 func (m *EnumDescriptorProto) GetOptions() *EnumOptions { 733 if m != nil { 734 return m.Options 735 } 736 return nil 737 } 738 739 // Describes a value within an enum. 740 type EnumValueDescriptorProto struct { 741 Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` 742 Number *int32 `protobuf:"varint,2,opt,name=number" json:"number,omitempty"` 743 Options *EnumValueOptions `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"` 744 XXX_unrecognized []byte `json:"-"` 745 } 746 747 func (m *EnumValueDescriptorProto) Reset() { *m = EnumValueDescriptorProto{} } 748 func (m *EnumValueDescriptorProto) String() string { return proto.CompactTextString(m) } 749 func (*EnumValueDescriptorProto) ProtoMessage() {} 750 func (*EnumValueDescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} } 751 752 func (m *EnumValueDescriptorProto) GetName() string { 753 if m != nil && m.Name != nil { 754 return *m.Name 755 } 756 return "" 757 } 758 759 func (m *EnumValueDescriptorProto) GetNumber() int32 { 760 if m != nil && m.Number != nil { 761 return *m.Number 762 } 763 return 0 764 } 765 766 func (m *EnumValueDescriptorProto) GetOptions() *EnumValueOptions { 767 if m != nil { 768 return m.Options 769 } 770 return nil 771 } 772 773 // Describes a service. 774 type ServiceDescriptorProto struct { 775 Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` 776 Method []*MethodDescriptorProto `protobuf:"bytes,2,rep,name=method" json:"method,omitempty"` 777 Options *ServiceOptions `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"` 778 XXX_unrecognized []byte `json:"-"` 779 } 780 781 func (m *ServiceDescriptorProto) Reset() { *m = ServiceDescriptorProto{} } 782 func (m *ServiceDescriptorProto) String() string { return proto.CompactTextString(m) } 783 func (*ServiceDescriptorProto) ProtoMessage() {} 784 func (*ServiceDescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} } 785 786 func (m *ServiceDescriptorProto) GetName() string { 787 if m != nil && m.Name != nil { 788 return *m.Name 789 } 790 return "" 791 } 792 793 func (m *ServiceDescriptorProto) GetMethod() []*MethodDescriptorProto { 794 if m != nil { 795 return m.Method 796 } 797 return nil 798 } 799 800 func (m *ServiceDescriptorProto) GetOptions() *ServiceOptions { 801 if m != nil { 802 return m.Options 803 } 804 return nil 805 } 806 807 // Describes a method of a service. 808 type MethodDescriptorProto struct { 809 Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` 810 // Input and output type names. These are resolved in the same way as 811 // FieldDescriptorProto.type_name, but must refer to a message type. 812 InputType *string `protobuf:"bytes,2,opt,name=input_type,json=inputType" json:"input_type,omitempty"` 813 OutputType *string `protobuf:"bytes,3,opt,name=output_type,json=outputType" json:"output_type,omitempty"` 814 Options *MethodOptions `protobuf:"bytes,4,opt,name=options" json:"options,omitempty"` 815 // Identifies if client streams multiple client messages 816 ClientStreaming *bool `protobuf:"varint,5,opt,name=client_streaming,json=clientStreaming,def=0" json:"client_streaming,omitempty"` 817 // Identifies if server streams multiple server messages 818 ServerStreaming *bool `protobuf:"varint,6,opt,name=server_streaming,json=serverStreaming,def=0" json:"server_streaming,omitempty"` 819 XXX_unrecognized []byte `json:"-"` 820 } 821 822 func (m *MethodDescriptorProto) Reset() { *m = MethodDescriptorProto{} } 823 func (m *MethodDescriptorProto) String() string { return proto.CompactTextString(m) } 824 func (*MethodDescriptorProto) ProtoMessage() {} 825 func (*MethodDescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} } 826 827 const Default_MethodDescriptorProto_ClientStreaming bool = false 828 const Default_MethodDescriptorProto_ServerStreaming bool = false 829 830 func (m *MethodDescriptorProto) GetName() string { 831 if m != nil && m.Name != nil { 832 return *m.Name 833 } 834 return "" 835 } 836 837 func (m *MethodDescriptorProto) GetInputType() string { 838 if m != nil && m.InputType != nil { 839 return *m.InputType 840 } 841 return "" 842 } 843 844 func (m *MethodDescriptorProto) GetOutputType() string { 845 if m != nil && m.OutputType != nil { 846 return *m.OutputType 847 } 848 return "" 849 } 850 851 func (m *MethodDescriptorProto) GetOptions() *MethodOptions { 852 if m != nil { 853 return m.Options 854 } 855 return nil 856 } 857 858 func (m *MethodDescriptorProto) GetClientStreaming() bool { 859 if m != nil && m.ClientStreaming != nil { 860 return *m.ClientStreaming 861 } 862 return Default_MethodDescriptorProto_ClientStreaming 863 } 864 865 func (m *MethodDescriptorProto) GetServerStreaming() bool { 866 if m != nil && m.ServerStreaming != nil { 867 return *m.ServerStreaming 868 } 869 return Default_MethodDescriptorProto_ServerStreaming 870 } 871 872 type FileOptions struct { 873 // Sets the Java package where classes generated from this .proto will be 874 // placed. By default, the proto package is used, but this is often 875 // inappropriate because proto packages do not normally start with backwards 876 // domain names. 877 JavaPackage *string `protobuf:"bytes,1,opt,name=java_package,json=javaPackage" json:"java_package,omitempty"` 878 // If set, all the classes from the .proto file are wrapped in a single 879 // outer class with the given name. This applies to both Proto1 880 // (equivalent to the old "--one_java_file" option) and Proto2 (where 881 // a .proto always translates to a single class, but you may want to 882 // explicitly choose the class name). 883 JavaOuterClassname *string `protobuf:"bytes,8,opt,name=java_outer_classname,json=javaOuterClassname" json:"java_outer_classname,omitempty"` 884 // If set true, then the Java code generator will generate a separate .java 885 // file for each top-level message, enum, and service defined in the .proto 886 // file. Thus, these types will *not* be nested inside the outer class 887 // named by java_outer_classname. However, the outer class will still be 888 // generated to contain the file's getDescriptor() method as well as any 889 // top-level extensions defined in the file. 890 JavaMultipleFiles *bool `protobuf:"varint,10,opt,name=java_multiple_files,json=javaMultipleFiles,def=0" json:"java_multiple_files,omitempty"` 891 // If set true, then the Java code generator will generate equals() and 892 // hashCode() methods for all messages defined in the .proto file. 893 // This increases generated code size, potentially substantially for large 894 // protos, which may harm a memory-constrained application. 895 // - In the full runtime this is a speed optimization, as the 896 // AbstractMessage base class includes reflection-based implementations of 897 // these methods. 898 // - In the lite runtime, setting this option changes the semantics of 899 // equals() and hashCode() to more closely match those of the full runtime; 900 // the generated methods compute their results based on field values rather 901 // than object identity. (Implementations should not assume that hashcodes 902 // will be consistent across runtimes or versions of the protocol compiler.) 903 JavaGenerateEqualsAndHash *bool `protobuf:"varint,20,opt,name=java_generate_equals_and_hash,json=javaGenerateEqualsAndHash,def=0" json:"java_generate_equals_and_hash,omitempty"` 904 // If set true, then the Java2 code generator will generate code that 905 // throws an exception whenever an attempt is made to assign a non-UTF-8 906 // byte sequence to a string field. 907 // Message reflection will do the same. 908 // However, an extension field still accepts non-UTF-8 byte sequences. 909 // This option has no effect on when used with the lite runtime. 910 JavaStringCheckUtf8 *bool `protobuf:"varint,27,opt,name=java_string_check_utf8,json=javaStringCheckUtf8,def=0" json:"java_string_check_utf8,omitempty"` 911 OptimizeFor *FileOptions_OptimizeMode `protobuf:"varint,9,opt,name=optimize_for,json=optimizeFor,enum=google.protobuf.FileOptions_OptimizeMode,def=1" json:"optimize_for,omitempty"` 912 // Sets the Go package where structs generated from this .proto will be 913 // placed. If omitted, the Go package will be derived from the following: 914 // - The basename of the package import path, if provided. 915 // - Otherwise, the package statement in the .proto file, if present. 916 // - Otherwise, the basename of the .proto file, without extension. 917 GoPackage *string `protobuf:"bytes,11,opt,name=go_package,json=goPackage" json:"go_package,omitempty"` 918 // Should generic services be generated in each language? "Generic" services 919 // are not specific to any particular RPC system. They are generated by the 920 // main code generators in each language (without additional plugins). 921 // Generic services were the only kind of service generation supported by 922 // early versions of google.protobuf. 923 // 924 // Generic services are now considered deprecated in favor of using plugins 925 // that generate code specific to your particular RPC system. Therefore, 926 // these default to false. Old code which depends on generic services should 927 // explicitly set them to true. 928 CcGenericServices *bool `protobuf:"varint,16,opt,name=cc_generic_services,json=ccGenericServices,def=0" json:"cc_generic_services,omitempty"` 929 JavaGenericServices *bool `protobuf:"varint,17,opt,name=java_generic_services,json=javaGenericServices,def=0" json:"java_generic_services,omitempty"` 930 PyGenericServices *bool `protobuf:"varint,18,opt,name=py_generic_services,json=pyGenericServices,def=0" json:"py_generic_services,omitempty"` 931 // Is this file deprecated? 932 // Depending on the target platform, this can emit Deprecated annotations 933 // for everything in the file, or it will be completely ignored; in the very 934 // least, this is a formalization for deprecating files. 935 Deprecated *bool `protobuf:"varint,23,opt,name=deprecated,def=0" json:"deprecated,omitempty"` 936 // Enables the use of arenas for the proto messages in this file. This applies 937 // only to generated classes for C++. 938 CcEnableArenas *bool `protobuf:"varint,31,opt,name=cc_enable_arenas,json=ccEnableArenas,def=0" json:"cc_enable_arenas,omitempty"` 939 // Sets the objective c class prefix which is prepended to all objective c 940 // generated classes from this .proto. There is no default. 941 ObjcClassPrefix *string `protobuf:"bytes,36,opt,name=objc_class_prefix,json=objcClassPrefix" json:"objc_class_prefix,omitempty"` 942 // Namespace for generated classes; defaults to the package. 943 CsharpNamespace *string `protobuf:"bytes,37,opt,name=csharp_namespace,json=csharpNamespace" json:"csharp_namespace,omitempty"` 944 // Whether the nano proto compiler should generate in the deprecated non-nano 945 // suffixed package. 946 JavananoUseDeprecatedPackage *bool `protobuf:"varint,38,opt,name=javanano_use_deprecated_package,json=javananoUseDeprecatedPackage" json:"javanano_use_deprecated_package,omitempty"` 947 // The parser stores options it doesn't recognize here. See above. 948 UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"` 949 XXX_extensions map[int32]proto.Extension `json:"-"` 950 XXX_unrecognized []byte `json:"-"` 951 } 952 953 func (m *FileOptions) Reset() { *m = FileOptions{} } 954 func (m *FileOptions) String() string { return proto.CompactTextString(m) } 955 func (*FileOptions) ProtoMessage() {} 956 func (*FileOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} } 957 958 var extRange_FileOptions = []proto.ExtensionRange{ 959 {1000, 536870911}, 960 } 961 962 func (*FileOptions) ExtensionRangeArray() []proto.ExtensionRange { 963 return extRange_FileOptions 964 } 965 func (m *FileOptions) ExtensionMap() map[int32]proto.Extension { 966 if m.XXX_extensions == nil { 967 m.XXX_extensions = make(map[int32]proto.Extension) 968 } 969 return m.XXX_extensions 970 } 971 972 const Default_FileOptions_JavaMultipleFiles bool = false 973 const Default_FileOptions_JavaGenerateEqualsAndHash bool = false 974 const Default_FileOptions_JavaStringCheckUtf8 bool = false 975 const Default_FileOptions_OptimizeFor FileOptions_OptimizeMode = FileOptions_SPEED 976 const Default_FileOptions_CcGenericServices bool = false 977 const Default_FileOptions_JavaGenericServices bool = false 978 const Default_FileOptions_PyGenericServices bool = false 979 const Default_FileOptions_Deprecated bool = false 980 const Default_FileOptions_CcEnableArenas bool = false 981 982 func (m *FileOptions) GetJavaPackage() string { 983 if m != nil && m.JavaPackage != nil { 984 return *m.JavaPackage 985 } 986 return "" 987 } 988 989 func (m *FileOptions) GetJavaOuterClassname() string { 990 if m != nil && m.JavaOuterClassname != nil { 991 return *m.JavaOuterClassname 992 } 993 return "" 994 } 995 996 func (m *FileOptions) GetJavaMultipleFiles() bool { 997 if m != nil && m.JavaMultipleFiles != nil { 998 return *m.JavaMultipleFiles 999 } 1000 return Default_FileOptions_JavaMultipleFiles 1001 } 1002 1003 func (m *FileOptions) GetJavaGenerateEqualsAndHash() bool { 1004 if m != nil && m.JavaGenerateEqualsAndHash != nil { 1005 return *m.JavaGenerateEqualsAndHash 1006 } 1007 return Default_FileOptions_JavaGenerateEqualsAndHash 1008 } 1009 1010 func (m *FileOptions) GetJavaStringCheckUtf8() bool { 1011 if m != nil && m.JavaStringCheckUtf8 != nil { 1012 return *m.JavaStringCheckUtf8 1013 } 1014 return Default_FileOptions_JavaStringCheckUtf8 1015 } 1016 1017 func (m *FileOptions) GetOptimizeFor() FileOptions_OptimizeMode { 1018 if m != nil && m.OptimizeFor != nil { 1019 return *m.OptimizeFor 1020 } 1021 return Default_FileOptions_OptimizeFor 1022 } 1023 1024 func (m *FileOptions) GetGoPackage() string { 1025 if m != nil && m.GoPackage != nil { 1026 return *m.GoPackage 1027 } 1028 return "" 1029 } 1030 1031 func (m *FileOptions) GetCcGenericServices() bool { 1032 if m != nil && m.CcGenericServices != nil { 1033 return *m.CcGenericServices 1034 } 1035 return Default_FileOptions_CcGenericServices 1036 } 1037 1038 func (m *FileOptions) GetJavaGenericServices() bool { 1039 if m != nil && m.JavaGenericServices != nil { 1040 return *m.JavaGenericServices 1041 } 1042 return Default_FileOptions_JavaGenericServices 1043 } 1044 1045 func (m *FileOptions) GetPyGenericServices() bool { 1046 if m != nil && m.PyGenericServices != nil { 1047 return *m.PyGenericServices 1048 } 1049 return Default_FileOptions_PyGenericServices 1050 } 1051 1052 func (m *FileOptions) GetDeprecated() bool { 1053 if m != nil && m.Deprecated != nil { 1054 return *m.Deprecated 1055 } 1056 return Default_FileOptions_Deprecated 1057 } 1058 1059 func (m *FileOptions) GetCcEnableArenas() bool { 1060 if m != nil && m.CcEnableArenas != nil { 1061 return *m.CcEnableArenas 1062 } 1063 return Default_FileOptions_CcEnableArenas 1064 } 1065 1066 func (m *FileOptions) GetObjcClassPrefix() string { 1067 if m != nil && m.ObjcClassPrefix != nil { 1068 return *m.ObjcClassPrefix 1069 } 1070 return "" 1071 } 1072 1073 func (m *FileOptions) GetCsharpNamespace() string { 1074 if m != nil && m.CsharpNamespace != nil { 1075 return *m.CsharpNamespace 1076 } 1077 return "" 1078 } 1079 1080 func (m *FileOptions) GetJavananoUseDeprecatedPackage() bool { 1081 if m != nil && m.JavananoUseDeprecatedPackage != nil { 1082 return *m.JavananoUseDeprecatedPackage 1083 } 1084 return false 1085 } 1086 1087 func (m *FileOptions) GetUninterpretedOption() []*UninterpretedOption { 1088 if m != nil { 1089 return m.UninterpretedOption 1090 } 1091 return nil 1092 } 1093 1094 type MessageOptions struct { 1095 // Set true to use the old proto1 MessageSet wire format for extensions. 1096 // This is provided for backwards-compatibility with the MessageSet wire 1097 // format. You should not use this for any other reason: It's less 1098 // efficient, has fewer features, and is more complicated. 1099 // 1100 // The message must be defined exactly as follows: 1101 // message Foo { 1102 // option message_set_wire_format = true; 1103 // extensions 4 to max; 1104 // } 1105 // Note that the message cannot have any defined fields; MessageSets only 1106 // have extensions. 1107 // 1108 // All extensions of your type must be singular messages; e.g. they cannot 1109 // be int32s, enums, or repeated messages. 1110 // 1111 // Because this is an option, the above two restrictions are not enforced by 1112 // the protocol compiler. 1113 MessageSetWireFormat *bool `protobuf:"varint,1,opt,name=message_set_wire_format,json=messageSetWireFormat,def=0" json:"message_set_wire_format,omitempty"` 1114 // Disables the generation of the standard "descriptor()" accessor, which can 1115 // conflict with a field of the same name. This is meant to make migration 1116 // from proto1 easier; new code should avoid fields named "descriptor". 1117 NoStandardDescriptorAccessor *bool `protobuf:"varint,2,opt,name=no_standard_descriptor_accessor,json=noStandardDescriptorAccessor,def=0" json:"no_standard_descriptor_accessor,omitempty"` 1118 // Is this message deprecated? 1119 // Depending on the target platform, this can emit Deprecated annotations 1120 // for the message, or it will be completely ignored; in the very least, 1121 // this is a formalization for deprecating messages. 1122 Deprecated *bool `protobuf:"varint,3,opt,name=deprecated,def=0" json:"deprecated,omitempty"` 1123 // Whether the message is an automatically generated map entry type for the 1124 // maps field. 1125 // 1126 // For maps fields: 1127 // map<KeyType, ValueType> map_field = 1; 1128 // The parsed descriptor looks like: 1129 // message MapFieldEntry { 1130 // option map_entry = true; 1131 // optional KeyType key = 1; 1132 // optional ValueType value = 2; 1133 // } 1134 // repeated MapFieldEntry map_field = 1; 1135 // 1136 // Implementations may choose not to generate the map_entry=true message, but 1137 // use a native map in the target language to hold the keys and values. 1138 // The reflection APIs in such implementions still need to work as 1139 // if the field is a repeated message field. 1140 // 1141 // NOTE: Do not set the option in .proto files. Always use the maps syntax 1142 // instead. The option should only be implicitly set by the proto compiler 1143 // parser. 1144 MapEntry *bool `protobuf:"varint,7,opt,name=map_entry,json=mapEntry" json:"map_entry,omitempty"` 1145 // The parser stores options it doesn't recognize here. See above. 1146 UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"` 1147 XXX_extensions map[int32]proto.Extension `json:"-"` 1148 XXX_unrecognized []byte `json:"-"` 1149 } 1150 1151 func (m *MessageOptions) Reset() { *m = MessageOptions{} } 1152 func (m *MessageOptions) String() string { return proto.CompactTextString(m) } 1153 func (*MessageOptions) ProtoMessage() {} 1154 func (*MessageOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} } 1155 1156 var extRange_MessageOptions = []proto.ExtensionRange{ 1157 {1000, 536870911}, 1158 } 1159 1160 func (*MessageOptions) ExtensionRangeArray() []proto.ExtensionRange { 1161 return extRange_MessageOptions 1162 } 1163 func (m *MessageOptions) ExtensionMap() map[int32]proto.Extension { 1164 if m.XXX_extensions == nil { 1165 m.XXX_extensions = make(map[int32]proto.Extension) 1166 } 1167 return m.XXX_extensions 1168 } 1169 1170 const Default_MessageOptions_MessageSetWireFormat bool = false 1171 const Default_MessageOptions_NoStandardDescriptorAccessor bool = false 1172 const Default_MessageOptions_Deprecated bool = false 1173 1174 func (m *MessageOptions) GetMessageSetWireFormat() bool { 1175 if m != nil && m.MessageSetWireFormat != nil { 1176 return *m.MessageSetWireFormat 1177 } 1178 return Default_MessageOptions_MessageSetWireFormat 1179 } 1180 1181 func (m *MessageOptions) GetNoStandardDescriptorAccessor() bool { 1182 if m != nil && m.NoStandardDescriptorAccessor != nil { 1183 return *m.NoStandardDescriptorAccessor 1184 } 1185 return Default_MessageOptions_NoStandardDescriptorAccessor 1186 } 1187 1188 func (m *MessageOptions) GetDeprecated() bool { 1189 if m != nil && m.Deprecated != nil { 1190 return *m.Deprecated 1191 } 1192 return Default_MessageOptions_Deprecated 1193 } 1194 1195 func (m *MessageOptions) GetMapEntry() bool { 1196 if m != nil && m.MapEntry != nil { 1197 return *m.MapEntry 1198 } 1199 return false 1200 } 1201 1202 func (m *MessageOptions) GetUninterpretedOption() []*UninterpretedOption { 1203 if m != nil { 1204 return m.UninterpretedOption 1205 } 1206 return nil 1207 } 1208 1209 type FieldOptions struct { 1210 // The ctype option instructs the C++ code generator to use a different 1211 // representation of the field than it normally would. See the specific 1212 // options below. This option is not yet implemented in the open source 1213 // release -- sorry, we'll try to include it in a future version! 1214 Ctype *FieldOptions_CType `protobuf:"varint,1,opt,name=ctype,enum=google.protobuf.FieldOptions_CType,def=0" json:"ctype,omitempty"` 1215 // The packed option can be enabled for repeated primitive fields to enable 1216 // a more efficient representation on the wire. Rather than repeatedly 1217 // writing the tag and type for each element, the entire array is encoded as 1218 // a single length-delimited blob. In proto3, only explicit setting it to 1219 // false will avoid using packed encoding. 1220 Packed *bool `protobuf:"varint,2,opt,name=packed" json:"packed,omitempty"` 1221 // The jstype option determines the JavaScript type used for values of the 1222 // field. The option is permitted only for 64 bit integral and fixed types 1223 // (int64, uint64, sint64, fixed64, sfixed64). By default these types are 1224 // represented as JavaScript strings. This avoids loss of precision that can 1225 // happen when a large value is converted to a floating point JavaScript 1226 // numbers. Specifying JS_NUMBER for the jstype causes the generated 1227 // JavaScript code to use the JavaScript "number" type instead of strings. 1228 // This option is an enum to permit additional types to be added, 1229 // e.g. goog.math.Integer. 1230 Jstype *FieldOptions_JSType `protobuf:"varint,6,opt,name=jstype,enum=google.protobuf.FieldOptions_JSType,def=0" json:"jstype,omitempty"` 1231 // Should this field be parsed lazily? Lazy applies only to message-type 1232 // fields. It means that when the outer message is initially parsed, the 1233 // inner message's contents will not be parsed but instead stored in encoded 1234 // form. The inner message will actually be parsed when it is first accessed. 1235 // 1236 // This is only a hint. Implementations are free to choose whether to use 1237 // eager or lazy parsing regardless of the value of this option. However, 1238 // setting this option true suggests that the protocol author believes that 1239 // using lazy parsing on this field is worth the additional bookkeeping 1240 // overhead typically needed to implement it. 1241 // 1242 // This option does not affect the public interface of any generated code; 1243 // all method signatures remain the same. Furthermore, thread-safety of the 1244 // interface is not affected by this option; const methods remain safe to 1245 // call from multiple threads concurrently, while non-const methods continue 1246 // to require exclusive access. 1247 // 1248 // 1249 // Note that implementations may choose not to check required fields within 1250 // a lazy sub-message. That is, calling IsInitialized() on the outher message 1251 // may return true even if the inner message has missing required fields. 1252 // This is necessary because otherwise the inner message would have to be 1253 // parsed in order to perform the check, defeating the purpose of lazy 1254 // parsing. An implementation which chooses not to check required fields 1255 // must be consistent about it. That is, for any particular sub-message, the 1256 // implementation must either *always* check its required fields, or *never* 1257 // check its required fields, regardless of whether or not the message has 1258 // been parsed. 1259 Lazy *bool `protobuf:"varint,5,opt,name=lazy,def=0" json:"lazy,omitempty"` 1260 // Is this field deprecated? 1261 // Depending on the target platform, this can emit Deprecated annotations 1262 // for accessors, or it will be completely ignored; in the very least, this 1263 // is a formalization for deprecating fields. 1264 Deprecated *bool `protobuf:"varint,3,opt,name=deprecated,def=0" json:"deprecated,omitempty"` 1265 // For Google-internal migration only. Do not use. 1266 Weak *bool `protobuf:"varint,10,opt,name=weak,def=0" json:"weak,omitempty"` 1267 // The parser stores options it doesn't recognize here. See above. 1268 UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"` 1269 XXX_extensions map[int32]proto.Extension `json:"-"` 1270 XXX_unrecognized []byte `json:"-"` 1271 } 1272 1273 func (m *FieldOptions) Reset() { *m = FieldOptions{} } 1274 func (m *FieldOptions) String() string { return proto.CompactTextString(m) } 1275 func (*FieldOptions) ProtoMessage() {} 1276 func (*FieldOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} } 1277 1278 var extRange_FieldOptions = []proto.ExtensionRange{ 1279 {1000, 536870911}, 1280 } 1281 1282 func (*FieldOptions) ExtensionRangeArray() []proto.ExtensionRange { 1283 return extRange_FieldOptions 1284 } 1285 func (m *FieldOptions) ExtensionMap() map[int32]proto.Extension { 1286 if m.XXX_extensions == nil { 1287 m.XXX_extensions = make(map[int32]proto.Extension) 1288 } 1289 return m.XXX_extensions 1290 } 1291 1292 const Default_FieldOptions_Ctype FieldOptions_CType = FieldOptions_STRING 1293 const Default_FieldOptions_Jstype FieldOptions_JSType = FieldOptions_JS_NORMAL 1294 const Default_FieldOptions_Lazy bool = false 1295 const Default_FieldOptions_Deprecated bool = false 1296 const Default_FieldOptions_Weak bool = false 1297 1298 func (m *FieldOptions) GetCtype() FieldOptions_CType { 1299 if m != nil && m.Ctype != nil { 1300 return *m.Ctype 1301 } 1302 return Default_FieldOptions_Ctype 1303 } 1304 1305 func (m *FieldOptions) GetPacked() bool { 1306 if m != nil && m.Packed != nil { 1307 return *m.Packed 1308 } 1309 return false 1310 } 1311 1312 func (m *FieldOptions) GetJstype() FieldOptions_JSType { 1313 if m != nil && m.Jstype != nil { 1314 return *m.Jstype 1315 } 1316 return Default_FieldOptions_Jstype 1317 } 1318 1319 func (m *FieldOptions) GetLazy() bool { 1320 if m != nil && m.Lazy != nil { 1321 return *m.Lazy 1322 } 1323 return Default_FieldOptions_Lazy 1324 } 1325 1326 func (m *FieldOptions) GetDeprecated() bool { 1327 if m != nil && m.Deprecated != nil { 1328 return *m.Deprecated 1329 } 1330 return Default_FieldOptions_Deprecated 1331 } 1332 1333 func (m *FieldOptions) GetWeak() bool { 1334 if m != nil && m.Weak != nil { 1335 return *m.Weak 1336 } 1337 return Default_FieldOptions_Weak 1338 } 1339 1340 func (m *FieldOptions) GetUninterpretedOption() []*UninterpretedOption { 1341 if m != nil { 1342 return m.UninterpretedOption 1343 } 1344 return nil 1345 } 1346 1347 type EnumOptions struct { 1348 // Set this option to true to allow mapping different tag names to the same 1349 // value. 1350 AllowAlias *bool `protobuf:"varint,2,opt,name=allow_alias,json=allowAlias" json:"allow_alias,omitempty"` 1351 // Is this enum deprecated? 1352 // Depending on the target platform, this can emit Deprecated annotations 1353 // for the enum, or it will be completely ignored; in the very least, this 1354 // is a formalization for deprecating enums. 1355 Deprecated *bool `protobuf:"varint,3,opt,name=deprecated,def=0" json:"deprecated,omitempty"` 1356 // The parser stores options it doesn't recognize here. See above. 1357 UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"` 1358 XXX_extensions map[int32]proto.Extension `json:"-"` 1359 XXX_unrecognized []byte `json:"-"` 1360 } 1361 1362 func (m *EnumOptions) Reset() { *m = EnumOptions{} } 1363 func (m *EnumOptions) String() string { return proto.CompactTextString(m) } 1364 func (*EnumOptions) ProtoMessage() {} 1365 func (*EnumOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} } 1366 1367 var extRange_EnumOptions = []proto.ExtensionRange{ 1368 {1000, 536870911}, 1369 } 1370 1371 func (*EnumOptions) ExtensionRangeArray() []proto.ExtensionRange { 1372 return extRange_EnumOptions 1373 } 1374 func (m *EnumOptions) ExtensionMap() map[int32]proto.Extension { 1375 if m.XXX_extensions == nil { 1376 m.XXX_extensions = make(map[int32]proto.Extension) 1377 } 1378 return m.XXX_extensions 1379 } 1380 1381 const Default_EnumOptions_Deprecated bool = false 1382 1383 func (m *EnumOptions) GetAllowAlias() bool { 1384 if m != nil && m.AllowAlias != nil { 1385 return *m.AllowAlias 1386 } 1387 return false 1388 } 1389 1390 func (m *EnumOptions) GetDeprecated() bool { 1391 if m != nil && m.Deprecated != nil { 1392 return *m.Deprecated 1393 } 1394 return Default_EnumOptions_Deprecated 1395 } 1396 1397 func (m *EnumOptions) GetUninterpretedOption() []*UninterpretedOption { 1398 if m != nil { 1399 return m.UninterpretedOption 1400 } 1401 return nil 1402 } 1403 1404 type EnumValueOptions struct { 1405 // Is this enum value deprecated? 1406 // Depending on the target platform, this can emit Deprecated annotations 1407 // for the enum value, or it will be completely ignored; in the very least, 1408 // this is a formalization for deprecating enum values. 1409 Deprecated *bool `protobuf:"varint,1,opt,name=deprecated,def=0" json:"deprecated,omitempty"` 1410 // The parser stores options it doesn't recognize here. See above. 1411 UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"` 1412 XXX_extensions map[int32]proto.Extension `json:"-"` 1413 XXX_unrecognized []byte `json:"-"` 1414 } 1415 1416 func (m *EnumValueOptions) Reset() { *m = EnumValueOptions{} } 1417 func (m *EnumValueOptions) String() string { return proto.CompactTextString(m) } 1418 func (*EnumValueOptions) ProtoMessage() {} 1419 func (*EnumValueOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} } 1420 1421 var extRange_EnumValueOptions = []proto.ExtensionRange{ 1422 {1000, 536870911}, 1423 } 1424 1425 func (*EnumValueOptions) ExtensionRangeArray() []proto.ExtensionRange { 1426 return extRange_EnumValueOptions 1427 } 1428 func (m *EnumValueOptions) ExtensionMap() map[int32]proto.Extension { 1429 if m.XXX_extensions == nil { 1430 m.XXX_extensions = make(map[int32]proto.Extension) 1431 } 1432 return m.XXX_extensions 1433 } 1434 1435 const Default_EnumValueOptions_Deprecated bool = false 1436 1437 func (m *EnumValueOptions) GetDeprecated() bool { 1438 if m != nil && m.Deprecated != nil { 1439 return *m.Deprecated 1440 } 1441 return Default_EnumValueOptions_Deprecated 1442 } 1443 1444 func (m *EnumValueOptions) GetUninterpretedOption() []*UninterpretedOption { 1445 if m != nil { 1446 return m.UninterpretedOption 1447 } 1448 return nil 1449 } 1450 1451 type ServiceOptions struct { 1452 // Is this service deprecated? 1453 // Depending on the target platform, this can emit Deprecated annotations 1454 // for the service, or it will be completely ignored; in the very least, 1455 // this is a formalization for deprecating services. 1456 Deprecated *bool `protobuf:"varint,33,opt,name=deprecated,def=0" json:"deprecated,omitempty"` 1457 // The parser stores options it doesn't recognize here. See above. 1458 UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"` 1459 XXX_extensions map[int32]proto.Extension `json:"-"` 1460 XXX_unrecognized []byte `json:"-"` 1461 } 1462 1463 func (m *ServiceOptions) Reset() { *m = ServiceOptions{} } 1464 func (m *ServiceOptions) String() string { return proto.CompactTextString(m) } 1465 func (*ServiceOptions) ProtoMessage() {} 1466 func (*ServiceOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} } 1467 1468 var extRange_ServiceOptions = []proto.ExtensionRange{ 1469 {1000, 536870911}, 1470 } 1471 1472 func (*ServiceOptions) ExtensionRangeArray() []proto.ExtensionRange { 1473 return extRange_ServiceOptions 1474 } 1475 func (m *ServiceOptions) ExtensionMap() map[int32]proto.Extension { 1476 if m.XXX_extensions == nil { 1477 m.XXX_extensions = make(map[int32]proto.Extension) 1478 } 1479 return m.XXX_extensions 1480 } 1481 1482 const Default_ServiceOptions_Deprecated bool = false 1483 1484 func (m *ServiceOptions) GetDeprecated() bool { 1485 if m != nil && m.Deprecated != nil { 1486 return *m.Deprecated 1487 } 1488 return Default_ServiceOptions_Deprecated 1489 } 1490 1491 func (m *ServiceOptions) GetUninterpretedOption() []*UninterpretedOption { 1492 if m != nil { 1493 return m.UninterpretedOption 1494 } 1495 return nil 1496 } 1497 1498 type MethodOptions struct { 1499 // Is this method deprecated? 1500 // Depending on the target platform, this can emit Deprecated annotations 1501 // for the method, or it will be completely ignored; in the very least, 1502 // this is a formalization for deprecating methods. 1503 Deprecated *bool `protobuf:"varint,33,opt,name=deprecated,def=0" json:"deprecated,omitempty"` 1504 // The parser stores options it doesn't recognize here. See above. 1505 UninterpretedOption []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"` 1506 XXX_extensions map[int32]proto.Extension `json:"-"` 1507 XXX_unrecognized []byte `json:"-"` 1508 } 1509 1510 func (m *MethodOptions) Reset() { *m = MethodOptions{} } 1511 func (m *MethodOptions) String() string { return proto.CompactTextString(m) } 1512 func (*MethodOptions) ProtoMessage() {} 1513 func (*MethodOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} } 1514 1515 var extRange_MethodOptions = []proto.ExtensionRange{ 1516 {1000, 536870911}, 1517 } 1518 1519 func (*MethodOptions) ExtensionRangeArray() []proto.ExtensionRange { 1520 return extRange_MethodOptions 1521 } 1522 func (m *MethodOptions) ExtensionMap() map[int32]proto.Extension { 1523 if m.XXX_extensions == nil { 1524 m.XXX_extensions = make(map[int32]proto.Extension) 1525 } 1526 return m.XXX_extensions 1527 } 1528 1529 const Default_MethodOptions_Deprecated bool = false 1530 1531 func (m *MethodOptions) GetDeprecated() bool { 1532 if m != nil && m.Deprecated != nil { 1533 return *m.Deprecated 1534 } 1535 return Default_MethodOptions_Deprecated 1536 } 1537 1538 func (m *MethodOptions) GetUninterpretedOption() []*UninterpretedOption { 1539 if m != nil { 1540 return m.UninterpretedOption 1541 } 1542 return nil 1543 } 1544 1545 // A message representing a option the parser does not recognize. This only 1546 // appears in options protos created by the compiler::Parser class. 1547 // DescriptorPool resolves these when building Descriptor objects. Therefore, 1548 // options protos in descriptor objects (e.g. returned by Descriptor::options(), 1549 // or produced by Descriptor::CopyTo()) will never have UninterpretedOptions 1550 // in them. 1551 type UninterpretedOption struct { 1552 Name []*UninterpretedOption_NamePart `protobuf:"bytes,2,rep,name=name" json:"name,omitempty"` 1553 // The value of the uninterpreted option, in whatever type the tokenizer 1554 // identified it as during parsing. Exactly one of these should be set. 1555 IdentifierValue *string `protobuf:"bytes,3,opt,name=identifier_value,json=identifierValue" json:"identifier_value,omitempty"` 1556 PositiveIntValue *uint64 `protobuf:"varint,4,opt,name=positive_int_value,json=positiveIntValue" json:"positive_int_value,omitempty"` 1557 NegativeIntValue *int64 `protobuf:"varint,5,opt,name=negative_int_value,json=negativeIntValue" json:"negative_int_value,omitempty"` 1558 DoubleValue *float64 `protobuf:"fixed64,6,opt,name=double_value,json=doubleValue" json:"double_value,omitempty"` 1559 StringValue []byte `protobuf:"bytes,7,opt,name=string_value,json=stringValue" json:"string_value,omitempty"` 1560 AggregateValue *string `protobuf:"bytes,8,opt,name=aggregate_value,json=aggregateValue" json:"aggregate_value,omitempty"` 1561 XXX_unrecognized []byte `json:"-"` 1562 } 1563 1564 func (m *UninterpretedOption) Reset() { *m = UninterpretedOption{} } 1565 func (m *UninterpretedOption) String() string { return proto.CompactTextString(m) } 1566 func (*UninterpretedOption) ProtoMessage() {} 1567 func (*UninterpretedOption) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} } 1568 1569 func (m *UninterpretedOption) GetName() []*UninterpretedOption_NamePart { 1570 if m != nil { 1571 return m.Name 1572 } 1573 return nil 1574 } 1575 1576 func (m *UninterpretedOption) GetIdentifierValue() string { 1577 if m != nil && m.IdentifierValue != nil { 1578 return *m.IdentifierValue 1579 } 1580 return "" 1581 } 1582 1583 func (m *UninterpretedOption) GetPositiveIntValue() uint64 { 1584 if m != nil && m.PositiveIntValue != nil { 1585 return *m.PositiveIntValue 1586 } 1587 return 0 1588 } 1589 1590 func (m *UninterpretedOption) GetNegativeIntValue() int64 { 1591 if m != nil && m.NegativeIntValue != nil { 1592 return *m.NegativeIntValue 1593 } 1594 return 0 1595 } 1596 1597 func (m *UninterpretedOption) GetDoubleValue() float64 { 1598 if m != nil && m.DoubleValue != nil { 1599 return *m.DoubleValue 1600 } 1601 return 0 1602 } 1603 1604 func (m *UninterpretedOption) GetStringValue() []byte { 1605 if m != nil { 1606 return m.StringValue 1607 } 1608 return nil 1609 } 1610 1611 func (m *UninterpretedOption) GetAggregateValue() string { 1612 if m != nil && m.AggregateValue != nil { 1613 return *m.AggregateValue 1614 } 1615 return "" 1616 } 1617 1618 // The name of the uninterpreted option. Each string represents a segment in 1619 // a dot-separated name. is_extension is true iff a segment represents an 1620 // extension (denoted with parentheses in options specs in .proto files). 1621 // E.g.,{ ["foo", false], ["bar.baz", true], ["qux", false] } represents 1622 // "foo.(bar.baz).qux". 1623 type UninterpretedOption_NamePart struct { 1624 NamePart *string `protobuf:"bytes,1,req,name=name_part,json=namePart" json:"name_part,omitempty"` 1625 IsExtension *bool `protobuf:"varint,2,req,name=is_extension,json=isExtension" json:"is_extension,omitempty"` 1626 XXX_unrecognized []byte `json:"-"` 1627 } 1628 1629 func (m *UninterpretedOption_NamePart) Reset() { *m = UninterpretedOption_NamePart{} } 1630 func (m *UninterpretedOption_NamePart) String() string { return proto.CompactTextString(m) } 1631 func (*UninterpretedOption_NamePart) ProtoMessage() {} 1632 func (*UninterpretedOption_NamePart) Descriptor() ([]byte, []int) { 1633 return fileDescriptor0, []int{16, 0} 1634 } 1635 1636 func (m *UninterpretedOption_NamePart) GetNamePart() string { 1637 if m != nil && m.NamePart != nil { 1638 return *m.NamePart 1639 } 1640 return "" 1641 } 1642 1643 func (m *UninterpretedOption_NamePart) GetIsExtension() bool { 1644 if m != nil && m.IsExtension != nil { 1645 return *m.IsExtension 1646 } 1647 return false 1648 } 1649 1650 // Encapsulates information about the original source file from which a 1651 // FileDescriptorProto was generated. 1652 type SourceCodeInfo struct { 1653 // A Location identifies a piece of source code in a .proto file which 1654 // corresponds to a particular definition. This information is intended 1655 // to be useful to IDEs, code indexers, documentation generators, and similar 1656 // tools. 1657 // 1658 // For example, say we have a file like: 1659 // message Foo { 1660 // optional string foo = 1; 1661 // } 1662 // Let's look at just the field definition: 1663 // optional string foo = 1; 1664 // ^ ^^ ^^ ^ ^^^ 1665 // a bc de f ghi 1666 // We have the following locations: 1667 // span path represents 1668 // [a,i) [ 4, 0, 2, 0 ] The whole field definition. 1669 // [a,b) [ 4, 0, 2, 0, 4 ] The label (optional). 1670 // [c,d) [ 4, 0, 2, 0, 5 ] The type (string). 1671 // [e,f) [ 4, 0, 2, 0, 1 ] The name (foo). 1672 // [g,h) [ 4, 0, 2, 0, 3 ] The number (1). 1673 // 1674 // Notes: 1675 // - A location may refer to a repeated field itself (i.e. not to any 1676 // particular index within it). This is used whenever a set of elements are 1677 // logically enclosed in a single code segment. For example, an entire 1678 // extend block (possibly containing multiple extension definitions) will 1679 // have an outer location whose path refers to the "extensions" repeated 1680 // field without an index. 1681 // - Multiple locations may have the same path. This happens when a single 1682 // logical declaration is spread out across multiple places. The most 1683 // obvious example is the "extend" block again -- there may be multiple 1684 // extend blocks in the same scope, each of which will have the same path. 1685 // - A location's span is not always a subset of its parent's span. For 1686 // example, the "extendee" of an extension declaration appears at the 1687 // beginning of the "extend" block and is shared by all extensions within 1688 // the block. 1689 // - Just because a location's span is a subset of some other location's span 1690 // does not mean that it is a descendent. For example, a "group" defines 1691 // both a type and a field in a single declaration. Thus, the locations 1692 // corresponding to the type and field and their components will overlap. 1693 // - Code which tries to interpret locations should probably be designed to 1694 // ignore those that it doesn't understand, as more types of locations could 1695 // be recorded in the future. 1696 Location []*SourceCodeInfo_Location `protobuf:"bytes,1,rep,name=location" json:"location,omitempty"` 1697 XXX_unrecognized []byte `json:"-"` 1698 } 1699 1700 func (m *SourceCodeInfo) Reset() { *m = SourceCodeInfo{} } 1701 func (m *SourceCodeInfo) String() string { return proto.CompactTextString(m) } 1702 func (*SourceCodeInfo) ProtoMessage() {} 1703 func (*SourceCodeInfo) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} } 1704 1705 func (m *SourceCodeInfo) GetLocation() []*SourceCodeInfo_Location { 1706 if m != nil { 1707 return m.Location 1708 } 1709 return nil 1710 } 1711 1712 type SourceCodeInfo_Location struct { 1713 // Identifies which part of the FileDescriptorProto was defined at this 1714 // location. 1715 // 1716 // Each element is a field number or an index. They form a path from 1717 // the root FileDescriptorProto to the place where the definition. For 1718 // example, this path: 1719 // [ 4, 3, 2, 7, 1 ] 1720 // refers to: 1721 // file.message_type(3) // 4, 3 1722 // .field(7) // 2, 7 1723 // .name() // 1 1724 // This is because FileDescriptorProto.message_type has field number 4: 1725 // repeated DescriptorProto message_type = 4; 1726 // and DescriptorProto.field has field number 2: 1727 // repeated FieldDescriptorProto field = 2; 1728 // and FieldDescriptorProto.name has field number 1: 1729 // optional string name = 1; 1730 // 1731 // Thus, the above path gives the location of a field name. If we removed 1732 // the last element: 1733 // [ 4, 3, 2, 7 ] 1734 // this path refers to the whole field declaration (from the beginning 1735 // of the label to the terminating semicolon). 1736 Path []int32 `protobuf:"varint,1,rep,packed,name=path" json:"path,omitempty"` 1737 // Always has exactly three or four elements: start line, start column, 1738 // end line (optional, otherwise assumed same as start line), end column. 1739 // These are packed into a single field for efficiency. Note that line 1740 // and column numbers are zero-based -- typically you will want to add 1741 // 1 to each before displaying to a user. 1742 Span []int32 `protobuf:"varint,2,rep,packed,name=span" json:"span,omitempty"` 1743 // If this SourceCodeInfo represents a complete declaration, these are any 1744 // comments appearing before and after the declaration which appear to be 1745 // attached to the declaration. 1746 // 1747 // A series of line comments appearing on consecutive lines, with no other 1748 // tokens appearing on those lines, will be treated as a single comment. 1749 // 1750 // leading_detached_comments will keep paragraphs of comments that appear 1751 // before (but not connected to) the current element. Each paragraph, 1752 // separated by empty lines, will be one comment element in the repeated 1753 // field. 1754 // 1755 // Only the comment content is provided; comment markers (e.g. //) are 1756 // stripped out. For block comments, leading whitespace and an asterisk 1757 // will be stripped from the beginning of each line other than the first. 1758 // Newlines are included in the output. 1759 // 1760 // Examples: 1761 // 1762 // optional int32 foo = 1; // Comment attached to foo. 1763 // // Comment attached to bar. 1764 // optional int32 bar = 2; 1765 // 1766 // optional string baz = 3; 1767 // // Comment attached to baz. 1768 // // Another line attached to baz. 1769 // 1770 // // Comment attached to qux. 1771 // // 1772 // // Another line attached to qux. 1773 // optional double qux = 4; 1774 // 1775 // // Detached comment for corge. This is not leading or trailing comments 1776 // // to qux or corge because there are blank lines separating it from 1777 // // both. 1778 // 1779 // // Detached comment for corge paragraph 2. 1780 // 1781 // optional string corge = 5; 1782 // /* Block comment attached 1783 // * to corge. Leading asterisks 1784 // * will be removed. */ 1785 // /* Block comment attached to 1786 // * grault. */ 1787 // optional int32 grault = 6; 1788 // 1789 // // ignored detached comments. 1790 LeadingComments *string `protobuf:"bytes,3,opt,name=leading_comments,json=leadingComments" json:"leading_comments,omitempty"` 1791 TrailingComments *string `protobuf:"bytes,4,opt,name=trailing_comments,json=trailingComments" json:"trailing_comments,omitempty"` 1792 LeadingDetachedComments []string `protobuf:"bytes,6,rep,name=leading_detached_comments,json=leadingDetachedComments" json:"leading_detached_comments,omitempty"` 1793 XXX_unrecognized []byte `json:"-"` 1794 } 1795 1796 func (m *SourceCodeInfo_Location) Reset() { *m = SourceCodeInfo_Location{} } 1797 func (m *SourceCodeInfo_Location) String() string { return proto.CompactTextString(m) } 1798 func (*SourceCodeInfo_Location) ProtoMessage() {} 1799 func (*SourceCodeInfo_Location) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17, 0} } 1800 1801 func (m *SourceCodeInfo_Location) GetPath() []int32 { 1802 if m != nil { 1803 return m.Path 1804 } 1805 return nil 1806 } 1807 1808 func (m *SourceCodeInfo_Location) GetSpan() []int32 { 1809 if m != nil { 1810 return m.Span 1811 } 1812 return nil 1813 } 1814 1815 func (m *SourceCodeInfo_Location) GetLeadingComments() string { 1816 if m != nil && m.LeadingComments != nil { 1817 return *m.LeadingComments 1818 } 1819 return "" 1820 } 1821 1822 func (m *SourceCodeInfo_Location) GetTrailingComments() string { 1823 if m != nil && m.TrailingComments != nil { 1824 return *m.TrailingComments 1825 } 1826 return "" 1827 } 1828 1829 func (m *SourceCodeInfo_Location) GetLeadingDetachedComments() []string { 1830 if m != nil { 1831 return m.LeadingDetachedComments 1832 } 1833 return nil 1834 } 1835 1836 func init() { 1837 proto.RegisterType((*FileDescriptorSet)(nil), "google.protobuf.FileDescriptorSet") 1838 proto.RegisterType((*FileDescriptorProto)(nil), "google.protobuf.FileDescriptorProto") 1839 proto.RegisterType((*DescriptorProto)(nil), "google.protobuf.DescriptorProto") 1840 proto.RegisterType((*DescriptorProto_ExtensionRange)(nil), "google.protobuf.DescriptorProto.ExtensionRange") 1841 proto.RegisterType((*DescriptorProto_ReservedRange)(nil), "google.protobuf.DescriptorProto.ReservedRange") 1842 proto.RegisterType((*FieldDescriptorProto)(nil), "google.protobuf.FieldDescriptorProto") 1843 proto.RegisterType((*OneofDescriptorProto)(nil), "google.protobuf.OneofDescriptorProto") 1844 proto.RegisterType((*EnumDescriptorProto)(nil), "google.protobuf.EnumDescriptorProto") 1845 proto.RegisterType((*EnumValueDescriptorProto)(nil), "google.protobuf.EnumValueDescriptorProto") 1846 proto.RegisterType((*ServiceDescriptorProto)(nil), "google.protobuf.ServiceDescriptorProto") 1847 proto.RegisterType((*MethodDescriptorProto)(nil), "google.protobuf.MethodDescriptorProto") 1848 proto.RegisterType((*FileOptions)(nil), "google.protobuf.FileOptions") 1849 proto.RegisterType((*MessageOptions)(nil), "google.protobuf.MessageOptions") 1850 proto.RegisterType((*FieldOptions)(nil), "google.protobuf.FieldOptions") 1851 proto.RegisterType((*EnumOptions)(nil), "google.protobuf.EnumOptions") 1852 proto.RegisterType((*EnumValueOptions)(nil), "google.protobuf.EnumValueOptions") 1853 proto.RegisterType((*ServiceOptions)(nil), "google.protobuf.ServiceOptions") 1854 proto.RegisterType((*MethodOptions)(nil), "google.protobuf.MethodOptions") 1855 proto.RegisterType((*UninterpretedOption)(nil), "google.protobuf.UninterpretedOption") 1856 proto.RegisterType((*UninterpretedOption_NamePart)(nil), "google.protobuf.UninterpretedOption.NamePart") 1857 proto.RegisterType((*SourceCodeInfo)(nil), "google.protobuf.SourceCodeInfo") 1858 proto.RegisterType((*SourceCodeInfo_Location)(nil), "google.protobuf.SourceCodeInfo.Location") 1859 proto.RegisterEnum("google.protobuf.FieldDescriptorProto_Type", FieldDescriptorProto_Type_name, FieldDescriptorProto_Type_value) 1860 proto.RegisterEnum("google.protobuf.FieldDescriptorProto_Label", FieldDescriptorProto_Label_name, FieldDescriptorProto_Label_value) 1861 proto.RegisterEnum("google.protobuf.FileOptions_OptimizeMode", FileOptions_OptimizeMode_name, FileOptions_OptimizeMode_value) 1862 proto.RegisterEnum("google.protobuf.FieldOptions_CType", FieldOptions_CType_name, FieldOptions_CType_value) 1863 proto.RegisterEnum("google.protobuf.FieldOptions_JSType", FieldOptions_JSType_name, FieldOptions_JSType_value) 1864 } 1865 1866 var fileDescriptor0 = []byte{ 1867 // 2199 bytes of a gzipped FileDescriptorProto 1868 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xcc, 0x58, 0x4f, 0x73, 0xdb, 0xd6, 1869 0x11, 0x2f, 0xff, 0x8a, 0x5c, 0x52, 0x24, 0xf4, 0xa4, 0xd8, 0xb4, 0x62, 0x47, 0x36, 0x63, 0xc7, 1870 0x8e, 0xd3, 0x52, 0x19, 0xb7, 0x49, 0x5c, 0xa5, 0x93, 0x0e, 0x45, 0xc2, 0x0a, 0x3d, 0x94, 0xc8, 1871 0x82, 0x64, 0xeb, 0xe4, 0x82, 0x81, 0xc0, 0x47, 0x0a, 0x36, 0x08, 0xb0, 0x00, 0x68, 0x5b, 0x39, 1872 0x75, 0xa6, 0xa7, 0x7e, 0x83, 0x4e, 0xdb, 0xe9, 0x21, 0x97, 0xcc, 0xf4, 0x03, 0xf4, 0xd0, 0x7b, 1873 0xaf, 0x3d, 0xf4, 0xdc, 0x63, 0x67, 0xda, 0x6f, 0xd0, 0x6b, 0xf7, 0xbd, 0x07, 0x80, 0x00, 0x09, 1874 0xc5, 0x6a, 0x66, 0x52, 0x47, 0x17, 0xf1, 0xed, 0xfe, 0x76, 0xb1, 0x6f, 0xdf, 0xef, 0xed, 0x2e, 1875 0x00, 0x37, 0xa7, 0xb6, 0x3d, 0x35, 0xe9, 0xfe, 0xdc, 0xb1, 0x3d, 0xfb, 0x74, 0x31, 0xd9, 0x1f, 1876 0x53, 0x57, 0x77, 0x8c, 0xb9, 0x67, 0x3b, 0x0d, 0x2e, 0x23, 0x55, 0x81, 0x68, 0x04, 0x88, 0xfa, 1877 0x31, 0x6c, 0x3d, 0x32, 0x4c, 0xda, 0x0e, 0x81, 0x03, 0xea, 0x91, 0x87, 0x90, 0x9d, 0xa0, 0xb0, 1878 0x96, 0xba, 0x99, 0xb9, 0x57, 0x7a, 0x70, 0xbb, 0xb1, 0x62, 0xd4, 0x88, 0x5b, 0xf4, 0x99, 0x58, 1879 0xe1, 0x16, 0xf5, 0x7f, 0x66, 0x61, 0x3b, 0x41, 0x4b, 0x08, 0x64, 0x2d, 0x6d, 0xc6, 0x3c, 0xa6, 1880 0xee, 0x15, 0x15, 0xfe, 0x9b, 0xd4, 0x60, 0x63, 0xae, 0xe9, 0xcf, 0xb4, 0x29, 0xad, 0xa5, 0xb9, 1881 0x38, 0x58, 0x92, 0xb7, 0x00, 0xc6, 0x74, 0x4e, 0xad, 0x31, 0xb5, 0xf4, 0xf3, 0x5a, 0x06, 0xa3, 1882 0x28, 0x2a, 0x11, 0x09, 0x79, 0x0f, 0xb6, 0xe6, 0x8b, 0x53, 0xd3, 0xd0, 0xd5, 0x08, 0x0c, 0x10, 1883 0x96, 0x53, 0x24, 0xa1, 0x68, 0x2f, 0xc1, 0x77, 0xa1, 0xfa, 0x82, 0x6a, 0xcf, 0xa2, 0xd0, 0x12, 1884 0x87, 0x56, 0x98, 0x38, 0x02, 0x6c, 0x41, 0x79, 0x46, 0x5d, 0x17, 0x03, 0x50, 0xbd, 0xf3, 0x39, 1885 0xad, 0x65, 0xf9, 0xee, 0x6f, 0xae, 0xed, 0x7e, 0x75, 0xe7, 0x25, 0xdf, 0x6a, 0x88, 0x46, 0xa4, 1886 0x09, 0x45, 0x6a, 0x2d, 0x66, 0xc2, 0x43, 0xee, 0x82, 0xfc, 0xc9, 0x88, 0x58, 0xf5, 0x52, 0x60, 1887 0x66, 0xbe, 0x8b, 0x0d, 0x97, 0x3a, 0xcf, 0x0d, 0x9d, 0xd6, 0xf2, 0xdc, 0xc1, 0xdd, 0x35, 0x07, 1888 0x03, 0xa1, 0x5f, 0xf5, 0x11, 0xd8, 0xe1, 0x56, 0x8a, 0xf4, 0xa5, 0x47, 0x2d, 0xd7, 0xb0, 0xad, 1889 0xda, 0x06, 0x77, 0x72, 0x27, 0xe1, 0x14, 0xa9, 0x39, 0x5e, 0x75, 0xb1, 0xb4, 0x23, 0x1f, 0xc2, 1890 0x86, 0x3d, 0xf7, 0xf0, 0x97, 0x5b, 0x2b, 0xe0, 0xf9, 0x94, 0x1e, 0x5c, 0x4f, 0x24, 0x42, 0x4f, 1891 0x60, 0x94, 0x00, 0x4c, 0x3a, 0x20, 0xb9, 0xf6, 0xc2, 0xd1, 0xa9, 0xaa, 0xdb, 0x63, 0xaa, 0x1a, 1892 0xd6, 0xc4, 0xae, 0x15, 0xb9, 0x83, 0xbd, 0xf5, 0x8d, 0x70, 0x60, 0x0b, 0x71, 0x1d, 0x84, 0x29, 1893 0x15, 0x37, 0xb6, 0x26, 0x57, 0x20, 0xef, 0x9e, 0x5b, 0x9e, 0xf6, 0xb2, 0x56, 0xe6, 0x0c, 0xf1, 1894 0x57, 0xf5, 0xff, 0xe4, 0xa0, 0x7a, 0x19, 0x8a, 0x7d, 0x0c, 0xb9, 0x09, 0xdb, 0x25, 0x12, 0xec, 1895 0x7f, 0xc8, 0x81, 0xb0, 0x89, 0x27, 0x31, 0xff, 0x0d, 0x93, 0xd8, 0x84, 0x92, 0x45, 0x5d, 0x8f, 1896 0x8e, 0x05, 0x23, 0x32, 0x97, 0xe4, 0x14, 0x08, 0xa3, 0x75, 0x4a, 0x65, 0xbf, 0x11, 0xa5, 0x9e, 1897 0x40, 0x35, 0x0c, 0x49, 0x75, 0x34, 0x6b, 0x1a, 0x70, 0x73, 0xff, 0x55, 0x91, 0x34, 0xe4, 0xc0, 1898 0x4e, 0x61, 0x66, 0x4a, 0x85, 0xc6, 0xd6, 0xa4, 0x0d, 0x60, 0x5b, 0xd4, 0x9e, 0xe0, 0xf5, 0xd2, 1899 0x4d, 0xe4, 0x49, 0x72, 0x96, 0x7a, 0x0c, 0xb2, 0x96, 0x25, 0x5b, 0x48, 0x75, 0x93, 0xfc, 0x78, 1900 0x49, 0xb5, 0x8d, 0x0b, 0x98, 0x72, 0x2c, 0x2e, 0xd9, 0x1a, 0xdb, 0x46, 0x50, 0x71, 0x28, 0xe3, 1901 0x3d, 0xa6, 0x58, 0xec, 0xac, 0xc8, 0x83, 0x68, 0xbc, 0x72, 0x67, 0x8a, 0x6f, 0x26, 0x36, 0xb6, 1902 0xe9, 0x44, 0x97, 0xe4, 0x6d, 0x08, 0x05, 0x2a, 0xa7, 0x15, 0xf0, 0x2a, 0x54, 0x0e, 0x84, 0x27, 1903 0x28, 0xdb, 0x7d, 0x08, 0x95, 0x78, 0x7a, 0xc8, 0x0e, 0xe4, 0x5c, 0x4f, 0x73, 0x3c, 0xce, 0xc2, 1904 0x9c, 0x22, 0x16, 0x44, 0x82, 0x0c, 0x16, 0x19, 0x5e, 0xe5, 0x72, 0x0a, 0xfb, 0xb9, 0xfb, 0x11, 1905 0x6c, 0xc6, 0x1e, 0x7f, 0x59, 0xc3, 0xfa, 0x6f, 0xf3, 0xb0, 0x93, 0xc4, 0xb9, 0x44, 0xfa, 0xe3, 1906 0xf5, 0x41, 0x06, 0x9c, 0x52, 0x07, 0x79, 0xc7, 0x3c, 0xf8, 0x2b, 0x64, 0x54, 0xce, 0xd4, 0x4e, 1907 0xa9, 0x89, 0x6c, 0x4a, 0xdd, 0xab, 0x3c, 0x78, 0xef, 0x52, 0xac, 0x6e, 0x74, 0x99, 0x89, 0x22, 1908 0x2c, 0xc9, 0x27, 0x90, 0xf5, 0x4b, 0x1c, 0xf3, 0x70, 0xff, 0x72, 0x1e, 0x18, 0x17, 0x15, 0x6e, 1909 0x47, 0xde, 0x84, 0x22, 0xfb, 0x2f, 0x72, 0x9b, 0xe7, 0x31, 0x17, 0x98, 0x80, 0xe5, 0x95, 0xec, 1910 0x42, 0x81, 0xd3, 0x6c, 0x4c, 0x83, 0xd6, 0x10, 0xae, 0xd9, 0xc1, 0x8c, 0xe9, 0x44, 0x5b, 0x98, 1911 0x9e, 0xfa, 0x5c, 0x33, 0x17, 0x94, 0x13, 0x06, 0x0f, 0xc6, 0x17, 0xfe, 0x9c, 0xc9, 0xc8, 0x1e, 1912 0x94, 0x04, 0x2b, 0x0d, 0xb4, 0x79, 0xc9, 0xab, 0x4f, 0x4e, 0x11, 0x44, 0xed, 0x30, 0x09, 0x7b, 1913 0xfc, 0x53, 0x17, 0xef, 0x82, 0x7f, 0xb4, 0xfc, 0x11, 0x4c, 0xc0, 0x1f, 0xff, 0xd1, 0x6a, 0xe1, 1914 0xbb, 0x91, 0xbc, 0xbd, 0x55, 0x2e, 0xd6, 0xff, 0x9c, 0x86, 0x2c, 0xbf, 0x6f, 0x55, 0x28, 0x0d, 1915 0x3f, 0xeb, 0xcb, 0x6a, 0xbb, 0x37, 0x3a, 0xec, 0xca, 0x52, 0x8a, 0x54, 0x00, 0xb8, 0xe0, 0x51, 1916 0xb7, 0xd7, 0x1c, 0x4a, 0xe9, 0x70, 0xdd, 0x39, 0x19, 0x7e, 0xf8, 0x23, 0x29, 0x13, 0x1a, 0x8c, 1917 0x84, 0x20, 0x1b, 0x05, 0xfc, 0xf0, 0x81, 0x94, 0x43, 0x26, 0x94, 0x85, 0x83, 0xce, 0x13, 0xb9, 1918 0x8d, 0x88, 0x7c, 0x5c, 0x82, 0x98, 0x0d, 0xb2, 0x09, 0x45, 0x2e, 0x39, 0xec, 0xf5, 0xba, 0x52, 1919 0x21, 0xf4, 0x39, 0x18, 0x2a, 0x9d, 0x93, 0x23, 0xa9, 0x18, 0xfa, 0x3c, 0x52, 0x7a, 0xa3, 0xbe, 1920 0x04, 0xa1, 0x87, 0x63, 0x79, 0x30, 0x68, 0x1e, 0xc9, 0x52, 0x29, 0x44, 0x1c, 0x7e, 0x36, 0x94, 1921 0x07, 0x52, 0x39, 0x16, 0x16, 0x3e, 0x62, 0x33, 0x7c, 0x84, 0x7c, 0x32, 0x3a, 0x96, 0x2a, 0x64, 1922 0x0b, 0x36, 0xc5, 0x23, 0x82, 0x20, 0xaa, 0x2b, 0x22, 0x8c, 0x54, 0x5a, 0x06, 0x22, 0xbc, 0x6c, 1923 0xc5, 0x04, 0x88, 0x20, 0xf5, 0x16, 0xe4, 0x38, 0xbb, 0x90, 0xc5, 0x95, 0x6e, 0xf3, 0x50, 0xee, 1924 0xaa, 0xbd, 0xfe, 0xb0, 0xd3, 0x3b, 0x69, 0x76, 0x31, 0x77, 0xa1, 0x4c, 0x91, 0x7f, 0x36, 0xea, 1925 0x28, 0x72, 0x1b, 0xf3, 0x17, 0x91, 0xf5, 0xe5, 0xe6, 0x10, 0x65, 0x99, 0xfa, 0x7d, 0xd8, 0x49, 1926 0xaa, 0x33, 0x49, 0x37, 0xa3, 0xfe, 0x65, 0x0a, 0xb6, 0x13, 0x4a, 0x66, 0xe2, 0x2d, 0xfa, 0x29, 1927 0xe4, 0x04, 0xd3, 0x44, 0x13, 0x79, 0x37, 0xb1, 0xf6, 0x72, 0xde, 0xad, 0x35, 0x12, 0x6e, 0x17, 1928 0x6d, 0xa4, 0x99, 0x0b, 0x1a, 0x29, 0x73, 0xb1, 0x46, 0xa7, 0x5f, 0xa7, 0xa0, 0x76, 0x91, 0xef, 1929 0x57, 0xdc, 0xf7, 0x74, 0xec, 0xbe, 0x7f, 0xbc, 0x1a, 0xc0, 0xad, 0x8b, 0xf7, 0xb0, 0x16, 0xc5, 1930 0x57, 0x29, 0xb8, 0x92, 0x3c, 0x6f, 0x24, 0xc6, 0xf0, 0x09, 0xe4, 0x67, 0xd4, 0x3b, 0xb3, 0x83, 1931 0x9e, 0xfb, 0x4e, 0x42, 0x25, 0x67, 0xea, 0xd5, 0x5c, 0xf9, 0x56, 0xd1, 0x56, 0x90, 0xb9, 0x68, 1932 0x68, 0x10, 0xd1, 0xac, 0x45, 0xfa, 0x9b, 0x34, 0xbc, 0x91, 0xe8, 0x3c, 0x31, 0xd0, 0x1b, 0x00, 1933 0x86, 0x35, 0x5f, 0x78, 0xa2, 0xaf, 0x8a, 0x32, 0x53, 0xe4, 0x12, 0x7e, 0x85, 0x59, 0x09, 0x59, 1934 0x78, 0xa1, 0x3e, 0xc3, 0xf5, 0x20, 0x44, 0x1c, 0xf0, 0x70, 0x19, 0x68, 0x96, 0x07, 0xfa, 0xd6, 1935 0x05, 0x3b, 0x5d, 0x6b, 0x59, 0xef, 0x83, 0xa4, 0x9b, 0x06, 0xb5, 0x3c, 0xd5, 0xf5, 0x1c, 0xaa, 1936 0xcd, 0x0c, 0x6b, 0xca, 0xeb, 0x68, 0xe1, 0x20, 0x37, 0xd1, 0x4c, 0x97, 0x2a, 0x55, 0xa1, 0x1e, 1937 0x04, 0x5a, 0x66, 0xc1, 0x9b, 0x85, 0x13, 0xb1, 0xc8, 0xc7, 0x2c, 0x84, 0x3a, 0xb4, 0xa8, 0xff, 1938 0x7d, 0x03, 0x4a, 0x91, 0xe9, 0x8c, 0xdc, 0x82, 0xf2, 0x53, 0xed, 0xb9, 0xa6, 0x06, 0x13, 0xb7, 1939 0xc8, 0x44, 0x89, 0xc9, 0xfa, 0xfe, 0xd4, 0xfd, 0x3e, 0xec, 0x70, 0x08, 0xee, 0x11, 0x1f, 0xa4, 1940 0x9b, 0x9a, 0xeb, 0xf2, 0xa4, 0x15, 0x38, 0x94, 0x30, 0x5d, 0x8f, 0xa9, 0x5a, 0x81, 0x86, 0x7c, 1941 0x00, 0xdb, 0xdc, 0x62, 0x86, 0x85, 0xd7, 0x98, 0x9b, 0x54, 0x65, 0xef, 0x00, 0x2e, 0xaf, 0xa7, 1942 0x61, 0x64, 0x5b, 0x0c, 0x71, 0xec, 0x03, 0x58, 0x44, 0x2e, 0x39, 0x82, 0x1b, 0xdc, 0x6c, 0x4a, 1943 0x2d, 0xea, 0x68, 0x1e, 0x55, 0xe9, 0x2f, 0x17, 0x88, 0x55, 0x35, 0x6b, 0xac, 0x9e, 0x69, 0xee, 1944 0x59, 0x6d, 0x27, 0xea, 0xe0, 0x1a, 0xc3, 0x1e, 0xf9, 0x50, 0x99, 0x23, 0x9b, 0xd6, 0xf8, 0x53, 1945 0xc4, 0x91, 0x03, 0xb8, 0xc2, 0x1d, 0x61, 0x52, 0x70, 0xcf, 0xaa, 0x7e, 0x46, 0xf5, 0x67, 0xea, 1946 0xc2, 0x9b, 0x3c, 0xac, 0xbd, 0x19, 0xf5, 0xc0, 0x83, 0x1c, 0x70, 0x4c, 0x8b, 0x41, 0x46, 0x88, 1947 0x20, 0x03, 0x28, 0xb3, 0xf3, 0x98, 0x19, 0x5f, 0x60, 0xd8, 0xb6, 0xc3, 0x7b, 0x44, 0x25, 0xe1, 1948 0x72, 0x47, 0x92, 0xd8, 0xe8, 0xf9, 0x06, 0xc7, 0x38, 0x9f, 0x1e, 0xe4, 0x06, 0x7d, 0x59, 0x6e, 1949 0x2b, 0xa5, 0xc0, 0xcb, 0x23, 0xdb, 0x61, 0x9c, 0x9a, 0xda, 0x61, 0x8e, 0x4b, 0x82, 0x53, 0x53, 1950 0x3b, 0xc8, 0x30, 0xe6, 0x4b, 0xd7, 0xc5, 0xb6, 0xf1, 0xdd, 0xc5, 0x1f, 0xd6, 0xdd, 0x9a, 0x14, 1951 0xcb, 0x97, 0xae, 0x1f, 0x09, 0x80, 0x4f, 0x73, 0x17, 0xaf, 0xc4, 0x1b, 0xcb, 0x7c, 0x45, 0x0d, 1952 0xb7, 0xd6, 0x76, 0xb9, 0x6a, 0x8a, 0x4f, 0x9c, 0x9f, 0xaf, 0x1b, 0x92, 0xd8, 0x13, 0xe7, 0xe7, 1953 0xab, 0x66, 0x77, 0xf8, 0x0b, 0x98, 0x43, 0x75, 0x4c, 0xf9, 0xb8, 0x76, 0x35, 0x8a, 0x8e, 0x28, 1954 0xc8, 0x3e, 0x12, 0x59, 0x57, 0xa9, 0xa5, 0x9d, 0xe2, 0xd9, 0x6b, 0x0e, 0xfe, 0x70, 0x6b, 0x7b, 1955 0x51, 0x70, 0x45, 0xd7, 0x65, 0xae, 0x6d, 0x72, 0x25, 0xb9, 0x0f, 0x5b, 0xf6, 0xe9, 0x53, 0x5d, 1956 0x90, 0x4b, 0x45, 0x3f, 0x13, 0xe3, 0x65, 0xed, 0x36, 0x4f, 0x53, 0x95, 0x29, 0x38, 0xb5, 0xfa, 1957 0x5c, 0x4c, 0xde, 0x45, 0xe7, 0xee, 0x99, 0xe6, 0xcc, 0x79, 0x93, 0x76, 0x31, 0xa9, 0xb4, 0x76, 1958 0x47, 0x40, 0x85, 0xfc, 0x24, 0x10, 0x13, 0x19, 0xf6, 0xd8, 0xe6, 0x2d, 0xcd, 0xb2, 0xd5, 0x85, 1959 0x4b, 0xd5, 0x65, 0x88, 0xe1, 0x59, 0xbc, 0xc3, 0xc2, 0x52, 0xae, 0x07, 0xb0, 0x91, 0x8b, 0xc5, 1960 0x2c, 0x00, 0x05, 0xc7, 0xf3, 0x04, 0x76, 0x16, 0x96, 0x61, 0x21, 0xc5, 0x51, 0xc3, 0x8c, 0xc5, 1961 0x85, 0xad, 0xfd, 0x6b, 0xe3, 0x82, 0xa1, 0x7b, 0x14, 0x45, 0x0b, 0x92, 0x28, 0xdb, 0x8b, 0x75, 1962 0x61, 0xfd, 0x00, 0xca, 0x51, 0xee, 0x90, 0x22, 0x08, 0xf6, 0x60, 0x77, 0xc3, 0x8e, 0xda, 0xea, 1963 0xb5, 0x59, 0x2f, 0xfc, 0x5c, 0xc6, 0xc6, 0x86, 0x3d, 0xb9, 0xdb, 0x19, 0xca, 0xaa, 0x32, 0x3a, 1964 0x19, 0x76, 0x8e, 0x65, 0x29, 0x73, 0xbf, 0x58, 0xf8, 0xf7, 0x86, 0xf4, 0x2b, 0xfc, 0x4b, 0xd7, 1965 0xff, 0x9a, 0x86, 0x4a, 0x7c, 0x0e, 0x26, 0x3f, 0x81, 0xab, 0xc1, 0x4b, 0xab, 0x4b, 0x3d, 0xf5, 1966 0x85, 0xe1, 0x70, 0x3a, 0xcf, 0x34, 0x31, 0x49, 0x86, 0x27, 0xb1, 0xe3, 0xa3, 0xf0, 0xf5, 0xfe, 1967 0x17, 0x88, 0x79, 0xc4, 0x21, 0xa4, 0x0b, 0x7b, 0x98, 0x32, 0x9c, 0x35, 0xad, 0xb1, 0xe6, 0x8c, 1968 0xd5, 0xe5, 0xe7, 0x02, 0x55, 0xd3, 0x91, 0x07, 0xae, 0x2d, 0x3a, 0x49, 0xe8, 0xe5, 0xba, 0x65, 1969 0x0f, 0x7c, 0xf0, 0xb2, 0xc4, 0x36, 0x7d, 0xe8, 0x0a, 0x6b, 0x32, 0x17, 0xb1, 0x06, 0x67, 0xaf, 1970 0x99, 0x36, 0x47, 0xda, 0x78, 0xce, 0x39, 0x9f, 0xde, 0x0a, 0x4a, 0x01, 0x05, 0x32, 0x5b, 0x7f, 1971 0x7b, 0x67, 0x10, 0xcd, 0xe3, 0x3f, 0x32, 0x50, 0x8e, 0x4e, 0x70, 0x6c, 0x20, 0xd6, 0x79, 0x99, 1972 0x4f, 0xf1, 0x2a, 0xf0, 0xf6, 0xd7, 0xce, 0x7b, 0x8d, 0x16, 0xab, 0xff, 0x07, 0x79, 0x31, 0x57, 1973 0x29, 0xc2, 0x92, 0xf5, 0x5e, 0xc6, 0x35, 0x2a, 0xa6, 0xf5, 0x82, 0xe2, 0xaf, 0xb0, 0xd8, 0xe5, 1974 0x9f, 0xba, 0xdc, 0x77, 0x9e, 0xfb, 0xbe, 0xfd, 0xf5, 0xbe, 0x1f, 0x0f, 0xb8, 0xf3, 0xe2, 0xe3, 1975 0x81, 0x7a, 0xd2, 0x53, 0x8e, 0x9b, 0x5d, 0xc5, 0x37, 0x27, 0xd7, 0x20, 0x6b, 0x6a, 0x5f, 0x9c, 1976 0xc7, 0x3b, 0x05, 0x17, 0x5d, 0x36, 0xf1, 0xe8, 0x81, 0x7d, 0xf2, 0x88, 0xd7, 0x67, 0x2e, 0xfa, 1977 0x16, 0xa9, 0xbf, 0x0f, 0x39, 0x9e, 0x2f, 0x02, 0xe0, 0x67, 0x4c, 0xfa, 0x1e, 0x29, 0x40, 0xb6, 1978 0xd5, 0x53, 0x18, 0xfd, 0x91, 0xef, 0x42, 0xaa, 0xf6, 0x3b, 0x72, 0x0b, 0x6f, 0x40, 0xfd, 0x03, 1979 0xc8, 0x8b, 0x24, 0xb0, 0xab, 0x11, 0xa6, 0x01, 0x8d, 0xc4, 0xd2, 0xf7, 0x91, 0x0a, 0xb4, 0xa3, 1980 0xe3, 0x43, 0x59, 0x91, 0xd2, 0xd1, 0xe3, 0xfd, 0x4b, 0x0a, 0x4a, 0x91, 0x81, 0x8a, 0xb5, 0x72, 1981 0xcd, 0x34, 0xed, 0x17, 0xaa, 0x66, 0x1a, 0x58, 0xa1, 0xc4, 0xf9, 0x00, 0x17, 0x35, 0x99, 0xe4, 1982 0xb2, 0xf9, 0xfb, 0xbf, 0x70, 0xf3, 0x8f, 0x29, 0x90, 0x56, 0x87, 0xb1, 0x95, 0x00, 0x53, 0xaf, 1983 0x35, 0xc0, 0x3f, 0xa4, 0xa0, 0x12, 0x9f, 0xc0, 0x56, 0xc2, 0xbb, 0xf5, 0x5a, 0xc3, 0xfb, 0x7d, 1984 0x0a, 0x36, 0x63, 0x73, 0xd7, 0x77, 0x2a, 0xba, 0xdf, 0x65, 0x60, 0x3b, 0xc1, 0x0e, 0x0b, 0x90, 1985 0x18, 0x50, 0xc5, 0xcc, 0xfc, 0x83, 0xcb, 0x3c, 0xab, 0xc1, 0xfa, 0x5f, 0x5f, 0x73, 0x3c, 0x7f, 1986 0x9e, 0xc5, 0x7e, 0x69, 0x8c, 0xb1, 0xa8, 0x1a, 0x13, 0x03, 0xc7, 0x37, 0xf1, 0xc6, 0x22, 0xa6, 1987 0xd6, 0xea, 0x52, 0x2e, 0x5e, 0x8f, 0xbf, 0x0f, 0x64, 0x6e, 0xbb, 0x86, 0x67, 0x3c, 0x67, 0x9f, 1988 0xe7, 0x82, 0x17, 0x69, 0x36, 0xc5, 0x66, 0x15, 0x29, 0xd0, 0x74, 0x2c, 0x2f, 0x44, 0x5b, 0x74, 1989 0xaa, 0xad, 0xa0, 0x59, 0x19, 0xca, 0x28, 0x52, 0xa0, 0x09, 0xd1, 0x38, 0x68, 0x8e, 0xed, 0x05, 1990 0x1b, 0x08, 0x04, 0x8e, 0x55, 0xbd, 0x94, 0x52, 0x12, 0xb2, 0x10, 0xe2, 0x4f, 0x6c, 0xcb, 0x37, 1991 0xf8, 0xb2, 0x52, 0x12, 0x32, 0x01, 0xb9, 0x0b, 0x55, 0x6d, 0x3a, 0x75, 0x98, 0xf3, 0xc0, 0x91, 1992 0x18, 0x43, 0x2b, 0xa1, 0x98, 0x03, 0x77, 0x1f, 0x43, 0x21, 0xc8, 0x03, 0x6b, 0x2c, 0x2c, 0x13, 1993 0xd8, 0xf3, 0xf9, 0x77, 0x94, 0x34, 0x7b, 0xa9, 0xb7, 0x02, 0x25, 0x3e, 0xd4, 0x70, 0xd5, 0xe5, 1994 0x07, 0xbd, 0x34, 0xea, 0x0b, 0x4a, 0xc9, 0x70, 0xc3, 0x2f, 0x38, 0xf5, 0xaf, 0xb0, 0xbd, 0xc6, 1995 0x3f, 0x48, 0x92, 0x36, 0x14, 0x4c, 0x1b, 0xf9, 0xc1, 0x2c, 0xc4, 0xd7, 0xf0, 0x7b, 0xaf, 0xf8, 1996 0x86, 0xd9, 0xe8, 0xfa, 0x78, 0x25, 0xb4, 0xdc, 0xfd, 0x5b, 0x0a, 0x0a, 0x81, 0x18, 0x1b, 0x45, 1997 0x76, 0xae, 0x79, 0x67, 0xdc, 0x5d, 0xee, 0x30, 0x2d, 0xa5, 0x14, 0xbe, 0x66, 0x72, 0x9c, 0x66, 1998 0x2c, 0x4e, 0x01, 0x5f, 0xce, 0xd6, 0xec, 0x5c, 0x4d, 0xaa, 0x8d, 0xf9, 0x80, 0x6b, 0xcf, 0x66, 1999 0x78, 0x92, 0x6e, 0x70, 0xae, 0xbe, 0xbc, 0xe5, 0x8b, 0xd9, 0x77, 0x71, 0xcf, 0xd1, 0x0c, 0x33, 2000 0x86, 0xcd, 0x72, 0xac, 0x14, 0x28, 0x42, 0xf0, 0x01, 0x5c, 0x0b, 0xfc, 0x8e, 0xa9, 0xa7, 0xe1, 2001 0xf0, 0x3c, 0x5e, 0x1a, 0xe5, 0xf9, 0xd7, 0xae, 0xab, 0x3e, 0xa0, 0xed, 0xeb, 0x03, 0xdb, 0xc3, 2002 0x27, 0x38, 0xc8, 0xda, 0xb3, 0xd5, 0x4c, 0x1c, 0x4a, 0x2b, 0xef, 0x5d, 0xee, 0xa7, 0xa9, 0xcf, 2003 0x61, 0x39, 0x54, 0x7c, 0x99, 0xce, 0x1c, 0xf5, 0x0f, 0xff, 0x94, 0xde, 0x3d, 0x12, 0x76, 0xfd, 2004 0x20, 0x83, 0x0a, 0x9d, 0x98, 0x54, 0x67, 0xd9, 0xf9, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xc3, 2005 0xe8, 0xdf, 0x9c, 0xc3, 0x18, 0x00, 0x00, 2006 }