Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1824)

Side by Side Diff: common/proto/google/descriptor/descriptor.pb.go

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

Powered by Google App Engine
This is Rietveld 408576698