github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/libraries/pingcap/tipb/src/select.rs (about) 1 // This file is generated. Do not edit 2 // @generated 3 4 #![allow(dead_code)] 5 #![allow(non_camel_case_types)] 6 #![allow(non_snake_case)] 7 #![allow(non_upper_case_globals)] 8 #![allow(unused_imports)] 9 10 use protobuf::Message as Message_imported_for_functions; 11 use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; 12 13 #[derive(Clone,Default)] 14 pub struct KeyRange { 15 // message fields 16 low: ::protobuf::SingularField<::std::vec::Vec<u8>>, 17 high: ::protobuf::SingularField<::std::vec::Vec<u8>>, 18 // special fields 19 unknown_fields: ::protobuf::UnknownFields, 20 cached_size: ::std::cell::Cell<u32>, 21 } 22 23 // see codegen.rs for the explanation why impl Sync explicitly 24 unsafe impl ::std::marker::Sync for KeyRange {} 25 26 impl KeyRange { 27 pub fn new() -> KeyRange { 28 ::std::default::Default::default() 29 } 30 31 pub fn default_instance() -> &'static KeyRange { 32 static mut instance: ::protobuf::lazy::Lazy<KeyRange> = ::protobuf::lazy::Lazy { 33 lock: ::protobuf::lazy::ONCE_INIT, 34 ptr: 0 as *const KeyRange, 35 }; 36 unsafe { 37 instance.get(|| { 38 KeyRange { 39 low: ::protobuf::SingularField::none(), 40 high: ::protobuf::SingularField::none(), 41 unknown_fields: ::protobuf::UnknownFields::new(), 42 cached_size: ::std::cell::Cell::new(0), 43 } 44 }) 45 } 46 } 47 48 // optional bytes low = 1; 49 50 pub fn clear_low(&mut self) { 51 self.low.clear(); 52 } 53 54 pub fn has_low(&self) -> bool { 55 self.low.is_some() 56 } 57 58 // Param is passed by value, moved 59 pub fn set_low(&mut self, v: ::std::vec::Vec<u8>) { 60 self.low = ::protobuf::SingularField::some(v); 61 } 62 63 // Mutable pointer to the field. 64 // If field is not initialized, it is initialized with default value first. 65 pub fn mut_low<'a>(&'a mut self) -> &'a mut ::std::vec::Vec<u8> { 66 if self.low.is_none() { 67 self.low.set_default(); 68 }; 69 self.low.as_mut().unwrap() 70 } 71 72 // Take field 73 pub fn take_low(&mut self) -> ::std::vec::Vec<u8> { 74 self.low.take().unwrap_or_else(|| ::std::vec::Vec::new()) 75 } 76 77 pub fn get_low<'a>(&'a self) -> &'a [u8] { 78 match self.low.as_ref() { 79 Some(v) => &v, 80 None => &[], 81 } 82 } 83 84 // optional bytes high = 2; 85 86 pub fn clear_high(&mut self) { 87 self.high.clear(); 88 } 89 90 pub fn has_high(&self) -> bool { 91 self.high.is_some() 92 } 93 94 // Param is passed by value, moved 95 pub fn set_high(&mut self, v: ::std::vec::Vec<u8>) { 96 self.high = ::protobuf::SingularField::some(v); 97 } 98 99 // Mutable pointer to the field. 100 // If field is not initialized, it is initialized with default value first. 101 pub fn mut_high<'a>(&'a mut self) -> &'a mut ::std::vec::Vec<u8> { 102 if self.high.is_none() { 103 self.high.set_default(); 104 }; 105 self.high.as_mut().unwrap() 106 } 107 108 // Take field 109 pub fn take_high(&mut self) -> ::std::vec::Vec<u8> { 110 self.high.take().unwrap_or_else(|| ::std::vec::Vec::new()) 111 } 112 113 pub fn get_high<'a>(&'a self) -> &'a [u8] { 114 match self.high.as_ref() { 115 Some(v) => &v, 116 None => &[], 117 } 118 } 119 } 120 121 impl ::protobuf::Message for KeyRange { 122 fn is_initialized(&self) -> bool { 123 true 124 } 125 126 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> { 127 while !try!(is.eof()) { 128 let (field_number, wire_type) = try!(is.read_tag_unpack()); 129 match field_number { 130 1 => { 131 try!(::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.low)); 132 }, 133 2 => { 134 try!(::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.high)); 135 }, 136 _ => { 137 try!(::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())); 138 }, 139 }; 140 } 141 ::std::result::Result::Ok(()) 142 } 143 144 // Compute sizes of nested messages 145 #[allow(unused_variables)] 146 fn compute_size(&self) -> u32 { 147 let mut my_size = 0; 148 for value in self.low.iter() { 149 my_size += ::protobuf::rt::bytes_size(1, &value); 150 }; 151 for value in self.high.iter() { 152 my_size += ::protobuf::rt::bytes_size(2, &value); 153 }; 154 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); 155 self.cached_size.set(my_size); 156 my_size 157 } 158 159 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { 160 if let Some(v) = self.low.as_ref() { 161 try!(os.write_bytes(1, &v)); 162 }; 163 if let Some(v) = self.high.as_ref() { 164 try!(os.write_bytes(2, &v)); 165 }; 166 try!(os.write_unknown_fields(self.get_unknown_fields())); 167 ::std::result::Result::Ok(()) 168 } 169 170 fn get_cached_size(&self) -> u32 { 171 self.cached_size.get() 172 } 173 174 fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields { 175 &self.unknown_fields 176 } 177 178 fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields { 179 &mut self.unknown_fields 180 } 181 182 fn type_id(&self) -> ::std::any::TypeId { 183 ::std::any::TypeId::of::<KeyRange>() 184 } 185 186 fn as_any(&self) -> &::std::any::Any { 187 self as &::std::any::Any 188 } 189 190 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { 191 ::protobuf::MessageStatic::descriptor_static(None::<Self>) 192 } 193 } 194 195 impl ::protobuf::MessageStatic for KeyRange { 196 fn new() -> KeyRange { 197 KeyRange::new() 198 } 199 200 fn descriptor_static(_: ::std::option::Option<KeyRange>) -> &'static ::protobuf::reflect::MessageDescriptor { 201 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { 202 lock: ::protobuf::lazy::ONCE_INIT, 203 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, 204 }; 205 unsafe { 206 descriptor.get(|| { 207 let mut fields = ::std::vec::Vec::new(); 208 fields.push(::protobuf::reflect::accessor::make_singular_bytes_accessor( 209 "low", 210 KeyRange::has_low, 211 KeyRange::get_low, 212 )); 213 fields.push(::protobuf::reflect::accessor::make_singular_bytes_accessor( 214 "high", 215 KeyRange::has_high, 216 KeyRange::get_high, 217 )); 218 ::protobuf::reflect::MessageDescriptor::new::<KeyRange>( 219 "KeyRange", 220 fields, 221 file_descriptor_proto() 222 ) 223 }) 224 } 225 } 226 } 227 228 impl ::protobuf::Clear for KeyRange { 229 fn clear(&mut self) { 230 self.clear_low(); 231 self.clear_high(); 232 self.unknown_fields.clear(); 233 } 234 } 235 236 impl ::std::cmp::PartialEq for KeyRange { 237 fn eq(&self, other: &KeyRange) -> bool { 238 self.low == other.low && 239 self.high == other.high && 240 self.unknown_fields == other.unknown_fields 241 } 242 } 243 244 impl ::std::fmt::Debug for KeyRange { 245 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { 246 ::protobuf::text_format::fmt(self, f) 247 } 248 } 249 250 #[derive(Clone,Default)] 251 pub struct ByItem { 252 // message fields 253 expr: ::protobuf::SingularPtrField<super::expression::Expr>, 254 desc: ::std::option::Option<bool>, 255 // special fields 256 unknown_fields: ::protobuf::UnknownFields, 257 cached_size: ::std::cell::Cell<u32>, 258 } 259 260 // see codegen.rs for the explanation why impl Sync explicitly 261 unsafe impl ::std::marker::Sync for ByItem {} 262 263 impl ByItem { 264 pub fn new() -> ByItem { 265 ::std::default::Default::default() 266 } 267 268 pub fn default_instance() -> &'static ByItem { 269 static mut instance: ::protobuf::lazy::Lazy<ByItem> = ::protobuf::lazy::Lazy { 270 lock: ::protobuf::lazy::ONCE_INIT, 271 ptr: 0 as *const ByItem, 272 }; 273 unsafe { 274 instance.get(|| { 275 ByItem { 276 expr: ::protobuf::SingularPtrField::none(), 277 desc: ::std::option::Option::None, 278 unknown_fields: ::protobuf::UnknownFields::new(), 279 cached_size: ::std::cell::Cell::new(0), 280 } 281 }) 282 } 283 } 284 285 // optional .tipb.Expr expr = 1; 286 287 pub fn clear_expr(&mut self) { 288 self.expr.clear(); 289 } 290 291 pub fn has_expr(&self) -> bool { 292 self.expr.is_some() 293 } 294 295 // Param is passed by value, moved 296 pub fn set_expr(&mut self, v: super::expression::Expr) { 297 self.expr = ::protobuf::SingularPtrField::some(v); 298 } 299 300 // Mutable pointer to the field. 301 // If field is not initialized, it is initialized with default value first. 302 pub fn mut_expr<'a>(&'a mut self) -> &'a mut super::expression::Expr { 303 if self.expr.is_none() { 304 self.expr.set_default(); 305 }; 306 self.expr.as_mut().unwrap() 307 } 308 309 // Take field 310 pub fn take_expr(&mut self) -> super::expression::Expr { 311 self.expr.take().unwrap_or_else(|| super::expression::Expr::new()) 312 } 313 314 pub fn get_expr<'a>(&'a self) -> &'a super::expression::Expr { 315 self.expr.as_ref().unwrap_or_else(|| super::expression::Expr::default_instance()) 316 } 317 318 // optional bool desc = 2; 319 320 pub fn clear_desc(&mut self) { 321 self.desc = ::std::option::Option::None; 322 } 323 324 pub fn has_desc(&self) -> bool { 325 self.desc.is_some() 326 } 327 328 // Param is passed by value, moved 329 pub fn set_desc(&mut self, v: bool) { 330 self.desc = ::std::option::Option::Some(v); 331 } 332 333 pub fn get_desc<'a>(&self) -> bool { 334 self.desc.unwrap_or(false) 335 } 336 } 337 338 impl ::protobuf::Message for ByItem { 339 fn is_initialized(&self) -> bool { 340 true 341 } 342 343 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> { 344 while !try!(is.eof()) { 345 let (field_number, wire_type) = try!(is.read_tag_unpack()); 346 match field_number { 347 1 => { 348 try!(::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.expr)); 349 }, 350 2 => { 351 if wire_type != ::protobuf::wire_format::WireTypeVarint { 352 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); 353 }; 354 let tmp = try!(is.read_bool()); 355 self.desc = ::std::option::Option::Some(tmp); 356 }, 357 _ => { 358 try!(::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())); 359 }, 360 }; 361 } 362 ::std::result::Result::Ok(()) 363 } 364 365 // Compute sizes of nested messages 366 #[allow(unused_variables)] 367 fn compute_size(&self) -> u32 { 368 let mut my_size = 0; 369 for value in self.expr.iter() { 370 let len = value.compute_size(); 371 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; 372 }; 373 if self.desc.is_some() { 374 my_size += 2; 375 }; 376 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); 377 self.cached_size.set(my_size); 378 my_size 379 } 380 381 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { 382 if let Some(v) = self.expr.as_ref() { 383 try!(os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)); 384 try!(os.write_raw_varint32(v.get_cached_size())); 385 try!(v.write_to_with_cached_sizes(os)); 386 }; 387 if let Some(v) = self.desc { 388 try!(os.write_bool(2, v)); 389 }; 390 try!(os.write_unknown_fields(self.get_unknown_fields())); 391 ::std::result::Result::Ok(()) 392 } 393 394 fn get_cached_size(&self) -> u32 { 395 self.cached_size.get() 396 } 397 398 fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields { 399 &self.unknown_fields 400 } 401 402 fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields { 403 &mut self.unknown_fields 404 } 405 406 fn type_id(&self) -> ::std::any::TypeId { 407 ::std::any::TypeId::of::<ByItem>() 408 } 409 410 fn as_any(&self) -> &::std::any::Any { 411 self as &::std::any::Any 412 } 413 414 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { 415 ::protobuf::MessageStatic::descriptor_static(None::<Self>) 416 } 417 } 418 419 impl ::protobuf::MessageStatic for ByItem { 420 fn new() -> ByItem { 421 ByItem::new() 422 } 423 424 fn descriptor_static(_: ::std::option::Option<ByItem>) -> &'static ::protobuf::reflect::MessageDescriptor { 425 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { 426 lock: ::protobuf::lazy::ONCE_INIT, 427 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, 428 }; 429 unsafe { 430 descriptor.get(|| { 431 let mut fields = ::std::vec::Vec::new(); 432 fields.push(::protobuf::reflect::accessor::make_singular_message_accessor( 433 "expr", 434 ByItem::has_expr, 435 ByItem::get_expr, 436 )); 437 fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor( 438 "desc", 439 ByItem::has_desc, 440 ByItem::get_desc, 441 )); 442 ::protobuf::reflect::MessageDescriptor::new::<ByItem>( 443 "ByItem", 444 fields, 445 file_descriptor_proto() 446 ) 447 }) 448 } 449 } 450 } 451 452 impl ::protobuf::Clear for ByItem { 453 fn clear(&mut self) { 454 self.clear_expr(); 455 self.clear_desc(); 456 self.unknown_fields.clear(); 457 } 458 } 459 460 impl ::std::cmp::PartialEq for ByItem { 461 fn eq(&self, other: &ByItem) -> bool { 462 self.expr == other.expr && 463 self.desc == other.desc && 464 self.unknown_fields == other.unknown_fields 465 } 466 } 467 468 impl ::std::fmt::Debug for ByItem { 469 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { 470 ::protobuf::text_format::fmt(self, f) 471 } 472 } 473 474 #[derive(Clone,Default)] 475 pub struct SelectRequest { 476 // message fields 477 start_ts: ::std::option::Option<u64>, 478 table_info: ::protobuf::SingularPtrField<super::schema::TableInfo>, 479 index_info: ::protobuf::SingularPtrField<super::schema::IndexInfo>, 480 fields: ::protobuf::RepeatedField<super::expression::Expr>, 481 ranges: ::protobuf::RepeatedField<KeyRange>, 482 distinct: ::std::option::Option<bool>, 483 field_where: ::protobuf::SingularPtrField<super::expression::Expr>, 484 group_by: ::protobuf::RepeatedField<ByItem>, 485 having: ::protobuf::SingularPtrField<super::expression::Expr>, 486 order_by: ::protobuf::RepeatedField<ByItem>, 487 limit: ::std::option::Option<i64>, 488 // special fields 489 unknown_fields: ::protobuf::UnknownFields, 490 cached_size: ::std::cell::Cell<u32>, 491 } 492 493 // see codegen.rs for the explanation why impl Sync explicitly 494 unsafe impl ::std::marker::Sync for SelectRequest {} 495 496 impl SelectRequest { 497 pub fn new() -> SelectRequest { 498 ::std::default::Default::default() 499 } 500 501 pub fn default_instance() -> &'static SelectRequest { 502 static mut instance: ::protobuf::lazy::Lazy<SelectRequest> = ::protobuf::lazy::Lazy { 503 lock: ::protobuf::lazy::ONCE_INIT, 504 ptr: 0 as *const SelectRequest, 505 }; 506 unsafe { 507 instance.get(|| { 508 SelectRequest { 509 start_ts: ::std::option::Option::None, 510 table_info: ::protobuf::SingularPtrField::none(), 511 index_info: ::protobuf::SingularPtrField::none(), 512 fields: ::protobuf::RepeatedField::new(), 513 ranges: ::protobuf::RepeatedField::new(), 514 distinct: ::std::option::Option::None, 515 field_where: ::protobuf::SingularPtrField::none(), 516 group_by: ::protobuf::RepeatedField::new(), 517 having: ::protobuf::SingularPtrField::none(), 518 order_by: ::protobuf::RepeatedField::new(), 519 limit: ::std::option::Option::None, 520 unknown_fields: ::protobuf::UnknownFields::new(), 521 cached_size: ::std::cell::Cell::new(0), 522 } 523 }) 524 } 525 } 526 527 // optional uint64 start_ts = 1; 528 529 pub fn clear_start_ts(&mut self) { 530 self.start_ts = ::std::option::Option::None; 531 } 532 533 pub fn has_start_ts(&self) -> bool { 534 self.start_ts.is_some() 535 } 536 537 // Param is passed by value, moved 538 pub fn set_start_ts(&mut self, v: u64) { 539 self.start_ts = ::std::option::Option::Some(v); 540 } 541 542 pub fn get_start_ts<'a>(&self) -> u64 { 543 self.start_ts.unwrap_or(0) 544 } 545 546 // optional .tipb.TableInfo table_info = 2; 547 548 pub fn clear_table_info(&mut self) { 549 self.table_info.clear(); 550 } 551 552 pub fn has_table_info(&self) -> bool { 553 self.table_info.is_some() 554 } 555 556 // Param is passed by value, moved 557 pub fn set_table_info(&mut self, v: super::schema::TableInfo) { 558 self.table_info = ::protobuf::SingularPtrField::some(v); 559 } 560 561 // Mutable pointer to the field. 562 // If field is not initialized, it is initialized with default value first. 563 pub fn mut_table_info<'a>(&'a mut self) -> &'a mut super::schema::TableInfo { 564 if self.table_info.is_none() { 565 self.table_info.set_default(); 566 }; 567 self.table_info.as_mut().unwrap() 568 } 569 570 // Take field 571 pub fn take_table_info(&mut self) -> super::schema::TableInfo { 572 self.table_info.take().unwrap_or_else(|| super::schema::TableInfo::new()) 573 } 574 575 pub fn get_table_info<'a>(&'a self) -> &'a super::schema::TableInfo { 576 self.table_info.as_ref().unwrap_or_else(|| super::schema::TableInfo::default_instance()) 577 } 578 579 // optional .tipb.IndexInfo index_info = 3; 580 581 pub fn clear_index_info(&mut self) { 582 self.index_info.clear(); 583 } 584 585 pub fn has_index_info(&self) -> bool { 586 self.index_info.is_some() 587 } 588 589 // Param is passed by value, moved 590 pub fn set_index_info(&mut self, v: super::schema::IndexInfo) { 591 self.index_info = ::protobuf::SingularPtrField::some(v); 592 } 593 594 // Mutable pointer to the field. 595 // If field is not initialized, it is initialized with default value first. 596 pub fn mut_index_info<'a>(&'a mut self) -> &'a mut super::schema::IndexInfo { 597 if self.index_info.is_none() { 598 self.index_info.set_default(); 599 }; 600 self.index_info.as_mut().unwrap() 601 } 602 603 // Take field 604 pub fn take_index_info(&mut self) -> super::schema::IndexInfo { 605 self.index_info.take().unwrap_or_else(|| super::schema::IndexInfo::new()) 606 } 607 608 pub fn get_index_info<'a>(&'a self) -> &'a super::schema::IndexInfo { 609 self.index_info.as_ref().unwrap_or_else(|| super::schema::IndexInfo::default_instance()) 610 } 611 612 // repeated .tipb.Expr fields = 4; 613 614 pub fn clear_fields(&mut self) { 615 self.fields.clear(); 616 } 617 618 // Param is passed by value, moved 619 pub fn set_fields(&mut self, v: ::protobuf::RepeatedField<super::expression::Expr>) { 620 self.fields = v; 621 } 622 623 // Mutable pointer to the field. 624 pub fn mut_fields<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<super::expression::Expr> { 625 &mut self.fields 626 } 627 628 // Take field 629 pub fn take_fields(&mut self) -> ::protobuf::RepeatedField<super::expression::Expr> { 630 ::std::mem::replace(&mut self.fields, ::protobuf::RepeatedField::new()) 631 } 632 633 pub fn get_fields<'a>(&'a self) -> &'a [super::expression::Expr] { 634 &self.fields 635 } 636 637 // repeated .tipb.KeyRange ranges = 5; 638 639 pub fn clear_ranges(&mut self) { 640 self.ranges.clear(); 641 } 642 643 // Param is passed by value, moved 644 pub fn set_ranges(&mut self, v: ::protobuf::RepeatedField<KeyRange>) { 645 self.ranges = v; 646 } 647 648 // Mutable pointer to the field. 649 pub fn mut_ranges<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<KeyRange> { 650 &mut self.ranges 651 } 652 653 // Take field 654 pub fn take_ranges(&mut self) -> ::protobuf::RepeatedField<KeyRange> { 655 ::std::mem::replace(&mut self.ranges, ::protobuf::RepeatedField::new()) 656 } 657 658 pub fn get_ranges<'a>(&'a self) -> &'a [KeyRange] { 659 &self.ranges 660 } 661 662 // optional bool distinct = 6; 663 664 pub fn clear_distinct(&mut self) { 665 self.distinct = ::std::option::Option::None; 666 } 667 668 pub fn has_distinct(&self) -> bool { 669 self.distinct.is_some() 670 } 671 672 // Param is passed by value, moved 673 pub fn set_distinct(&mut self, v: bool) { 674 self.distinct = ::std::option::Option::Some(v); 675 } 676 677 pub fn get_distinct<'a>(&self) -> bool { 678 self.distinct.unwrap_or(false) 679 } 680 681 // optional .tipb.Expr where = 7; 682 683 pub fn clear_field_where(&mut self) { 684 self.field_where.clear(); 685 } 686 687 pub fn has_field_where(&self) -> bool { 688 self.field_where.is_some() 689 } 690 691 // Param is passed by value, moved 692 pub fn set_field_where(&mut self, v: super::expression::Expr) { 693 self.field_where = ::protobuf::SingularPtrField::some(v); 694 } 695 696 // Mutable pointer to the field. 697 // If field is not initialized, it is initialized with default value first. 698 pub fn mut_field_where<'a>(&'a mut self) -> &'a mut super::expression::Expr { 699 if self.field_where.is_none() { 700 self.field_where.set_default(); 701 }; 702 self.field_where.as_mut().unwrap() 703 } 704 705 // Take field 706 pub fn take_field_where(&mut self) -> super::expression::Expr { 707 self.field_where.take().unwrap_or_else(|| super::expression::Expr::new()) 708 } 709 710 pub fn get_field_where<'a>(&'a self) -> &'a super::expression::Expr { 711 self.field_where.as_ref().unwrap_or_else(|| super::expression::Expr::default_instance()) 712 } 713 714 // repeated .tipb.ByItem group_by = 8; 715 716 pub fn clear_group_by(&mut self) { 717 self.group_by.clear(); 718 } 719 720 // Param is passed by value, moved 721 pub fn set_group_by(&mut self, v: ::protobuf::RepeatedField<ByItem>) { 722 self.group_by = v; 723 } 724 725 // Mutable pointer to the field. 726 pub fn mut_group_by<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<ByItem> { 727 &mut self.group_by 728 } 729 730 // Take field 731 pub fn take_group_by(&mut self) -> ::protobuf::RepeatedField<ByItem> { 732 ::std::mem::replace(&mut self.group_by, ::protobuf::RepeatedField::new()) 733 } 734 735 pub fn get_group_by<'a>(&'a self) -> &'a [ByItem] { 736 &self.group_by 737 } 738 739 // optional .tipb.Expr having = 9; 740 741 pub fn clear_having(&mut self) { 742 self.having.clear(); 743 } 744 745 pub fn has_having(&self) -> bool { 746 self.having.is_some() 747 } 748 749 // Param is passed by value, moved 750 pub fn set_having(&mut self, v: super::expression::Expr) { 751 self.having = ::protobuf::SingularPtrField::some(v); 752 } 753 754 // Mutable pointer to the field. 755 // If field is not initialized, it is initialized with default value first. 756 pub fn mut_having<'a>(&'a mut self) -> &'a mut super::expression::Expr { 757 if self.having.is_none() { 758 self.having.set_default(); 759 }; 760 self.having.as_mut().unwrap() 761 } 762 763 // Take field 764 pub fn take_having(&mut self) -> super::expression::Expr { 765 self.having.take().unwrap_or_else(|| super::expression::Expr::new()) 766 } 767 768 pub fn get_having<'a>(&'a self) -> &'a super::expression::Expr { 769 self.having.as_ref().unwrap_or_else(|| super::expression::Expr::default_instance()) 770 } 771 772 // repeated .tipb.ByItem order_by = 10; 773 774 pub fn clear_order_by(&mut self) { 775 self.order_by.clear(); 776 } 777 778 // Param is passed by value, moved 779 pub fn set_order_by(&mut self, v: ::protobuf::RepeatedField<ByItem>) { 780 self.order_by = v; 781 } 782 783 // Mutable pointer to the field. 784 pub fn mut_order_by<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<ByItem> { 785 &mut self.order_by 786 } 787 788 // Take field 789 pub fn take_order_by(&mut self) -> ::protobuf::RepeatedField<ByItem> { 790 ::std::mem::replace(&mut self.order_by, ::protobuf::RepeatedField::new()) 791 } 792 793 pub fn get_order_by<'a>(&'a self) -> &'a [ByItem] { 794 &self.order_by 795 } 796 797 // optional int64 limit = 12; 798 799 pub fn clear_limit(&mut self) { 800 self.limit = ::std::option::Option::None; 801 } 802 803 pub fn has_limit(&self) -> bool { 804 self.limit.is_some() 805 } 806 807 // Param is passed by value, moved 808 pub fn set_limit(&mut self, v: i64) { 809 self.limit = ::std::option::Option::Some(v); 810 } 811 812 pub fn get_limit<'a>(&self) -> i64 { 813 self.limit.unwrap_or(0) 814 } 815 } 816 817 impl ::protobuf::Message for SelectRequest { 818 fn is_initialized(&self) -> bool { 819 true 820 } 821 822 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> { 823 while !try!(is.eof()) { 824 let (field_number, wire_type) = try!(is.read_tag_unpack()); 825 match field_number { 826 1 => { 827 if wire_type != ::protobuf::wire_format::WireTypeVarint { 828 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); 829 }; 830 let tmp = try!(is.read_uint64()); 831 self.start_ts = ::std::option::Option::Some(tmp); 832 }, 833 2 => { 834 try!(::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.table_info)); 835 }, 836 3 => { 837 try!(::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.index_info)); 838 }, 839 4 => { 840 try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.fields)); 841 }, 842 5 => { 843 try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.ranges)); 844 }, 845 6 => { 846 if wire_type != ::protobuf::wire_format::WireTypeVarint { 847 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); 848 }; 849 let tmp = try!(is.read_bool()); 850 self.distinct = ::std::option::Option::Some(tmp); 851 }, 852 7 => { 853 try!(::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.field_where)); 854 }, 855 8 => { 856 try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.group_by)); 857 }, 858 9 => { 859 try!(::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.having)); 860 }, 861 10 => { 862 try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.order_by)); 863 }, 864 12 => { 865 if wire_type != ::protobuf::wire_format::WireTypeVarint { 866 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); 867 }; 868 let tmp = try!(is.read_int64()); 869 self.limit = ::std::option::Option::Some(tmp); 870 }, 871 _ => { 872 try!(::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())); 873 }, 874 }; 875 } 876 ::std::result::Result::Ok(()) 877 } 878 879 // Compute sizes of nested messages 880 #[allow(unused_variables)] 881 fn compute_size(&self) -> u32 { 882 let mut my_size = 0; 883 for value in self.start_ts.iter() { 884 my_size += ::protobuf::rt::value_size(1, *value, ::protobuf::wire_format::WireTypeVarint); 885 }; 886 for value in self.table_info.iter() { 887 let len = value.compute_size(); 888 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; 889 }; 890 for value in self.index_info.iter() { 891 let len = value.compute_size(); 892 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; 893 }; 894 for value in self.fields.iter() { 895 let len = value.compute_size(); 896 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; 897 }; 898 for value in self.ranges.iter() { 899 let len = value.compute_size(); 900 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; 901 }; 902 if self.distinct.is_some() { 903 my_size += 2; 904 }; 905 for value in self.field_where.iter() { 906 let len = value.compute_size(); 907 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; 908 }; 909 for value in self.group_by.iter() { 910 let len = value.compute_size(); 911 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; 912 }; 913 for value in self.having.iter() { 914 let len = value.compute_size(); 915 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; 916 }; 917 for value in self.order_by.iter() { 918 let len = value.compute_size(); 919 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; 920 }; 921 for value in self.limit.iter() { 922 my_size += ::protobuf::rt::value_size(12, *value, ::protobuf::wire_format::WireTypeVarint); 923 }; 924 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); 925 self.cached_size.set(my_size); 926 my_size 927 } 928 929 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { 930 if let Some(v) = self.start_ts { 931 try!(os.write_uint64(1, v)); 932 }; 933 if let Some(v) = self.table_info.as_ref() { 934 try!(os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)); 935 try!(os.write_raw_varint32(v.get_cached_size())); 936 try!(v.write_to_with_cached_sizes(os)); 937 }; 938 if let Some(v) = self.index_info.as_ref() { 939 try!(os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)); 940 try!(os.write_raw_varint32(v.get_cached_size())); 941 try!(v.write_to_with_cached_sizes(os)); 942 }; 943 for v in self.fields.iter() { 944 try!(os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)); 945 try!(os.write_raw_varint32(v.get_cached_size())); 946 try!(v.write_to_with_cached_sizes(os)); 947 }; 948 for v in self.ranges.iter() { 949 try!(os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)); 950 try!(os.write_raw_varint32(v.get_cached_size())); 951 try!(v.write_to_with_cached_sizes(os)); 952 }; 953 if let Some(v) = self.distinct { 954 try!(os.write_bool(6, v)); 955 }; 956 if let Some(v) = self.field_where.as_ref() { 957 try!(os.write_tag(7, ::protobuf::wire_format::WireTypeLengthDelimited)); 958 try!(os.write_raw_varint32(v.get_cached_size())); 959 try!(v.write_to_with_cached_sizes(os)); 960 }; 961 for v in self.group_by.iter() { 962 try!(os.write_tag(8, ::protobuf::wire_format::WireTypeLengthDelimited)); 963 try!(os.write_raw_varint32(v.get_cached_size())); 964 try!(v.write_to_with_cached_sizes(os)); 965 }; 966 if let Some(v) = self.having.as_ref() { 967 try!(os.write_tag(9, ::protobuf::wire_format::WireTypeLengthDelimited)); 968 try!(os.write_raw_varint32(v.get_cached_size())); 969 try!(v.write_to_with_cached_sizes(os)); 970 }; 971 for v in self.order_by.iter() { 972 try!(os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)); 973 try!(os.write_raw_varint32(v.get_cached_size())); 974 try!(v.write_to_with_cached_sizes(os)); 975 }; 976 if let Some(v) = self.limit { 977 try!(os.write_int64(12, v)); 978 }; 979 try!(os.write_unknown_fields(self.get_unknown_fields())); 980 ::std::result::Result::Ok(()) 981 } 982 983 fn get_cached_size(&self) -> u32 { 984 self.cached_size.get() 985 } 986 987 fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields { 988 &self.unknown_fields 989 } 990 991 fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields { 992 &mut self.unknown_fields 993 } 994 995 fn type_id(&self) -> ::std::any::TypeId { 996 ::std::any::TypeId::of::<SelectRequest>() 997 } 998 999 fn as_any(&self) -> &::std::any::Any { 1000 self as &::std::any::Any 1001 } 1002 1003 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { 1004 ::protobuf::MessageStatic::descriptor_static(None::<Self>) 1005 } 1006 } 1007 1008 impl ::protobuf::MessageStatic for SelectRequest { 1009 fn new() -> SelectRequest { 1010 SelectRequest::new() 1011 } 1012 1013 fn descriptor_static(_: ::std::option::Option<SelectRequest>) -> &'static ::protobuf::reflect::MessageDescriptor { 1014 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { 1015 lock: ::protobuf::lazy::ONCE_INIT, 1016 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, 1017 }; 1018 unsafe { 1019 descriptor.get(|| { 1020 let mut fields = ::std::vec::Vec::new(); 1021 fields.push(::protobuf::reflect::accessor::make_singular_u64_accessor( 1022 "start_ts", 1023 SelectRequest::has_start_ts, 1024 SelectRequest::get_start_ts, 1025 )); 1026 fields.push(::protobuf::reflect::accessor::make_singular_message_accessor( 1027 "table_info", 1028 SelectRequest::has_table_info, 1029 SelectRequest::get_table_info, 1030 )); 1031 fields.push(::protobuf::reflect::accessor::make_singular_message_accessor( 1032 "index_info", 1033 SelectRequest::has_index_info, 1034 SelectRequest::get_index_info, 1035 )); 1036 fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor( 1037 "fields", 1038 SelectRequest::get_fields, 1039 )); 1040 fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor( 1041 "ranges", 1042 SelectRequest::get_ranges, 1043 )); 1044 fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor( 1045 "distinct", 1046 SelectRequest::has_distinct, 1047 SelectRequest::get_distinct, 1048 )); 1049 fields.push(::protobuf::reflect::accessor::make_singular_message_accessor( 1050 "where", 1051 SelectRequest::has_field_where, 1052 SelectRequest::get_field_where, 1053 )); 1054 fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor( 1055 "group_by", 1056 SelectRequest::get_group_by, 1057 )); 1058 fields.push(::protobuf::reflect::accessor::make_singular_message_accessor( 1059 "having", 1060 SelectRequest::has_having, 1061 SelectRequest::get_having, 1062 )); 1063 fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor( 1064 "order_by", 1065 SelectRequest::get_order_by, 1066 )); 1067 fields.push(::protobuf::reflect::accessor::make_singular_i64_accessor( 1068 "limit", 1069 SelectRequest::has_limit, 1070 SelectRequest::get_limit, 1071 )); 1072 ::protobuf::reflect::MessageDescriptor::new::<SelectRequest>( 1073 "SelectRequest", 1074 fields, 1075 file_descriptor_proto() 1076 ) 1077 }) 1078 } 1079 } 1080 } 1081 1082 impl ::protobuf::Clear for SelectRequest { 1083 fn clear(&mut self) { 1084 self.clear_start_ts(); 1085 self.clear_table_info(); 1086 self.clear_index_info(); 1087 self.clear_fields(); 1088 self.clear_ranges(); 1089 self.clear_distinct(); 1090 self.clear_field_where(); 1091 self.clear_group_by(); 1092 self.clear_having(); 1093 self.clear_order_by(); 1094 self.clear_limit(); 1095 self.unknown_fields.clear(); 1096 } 1097 } 1098 1099 impl ::std::cmp::PartialEq for SelectRequest { 1100 fn eq(&self, other: &SelectRequest) -> bool { 1101 self.start_ts == other.start_ts && 1102 self.table_info == other.table_info && 1103 self.index_info == other.index_info && 1104 self.fields == other.fields && 1105 self.ranges == other.ranges && 1106 self.distinct == other.distinct && 1107 self.field_where == other.field_where && 1108 self.group_by == other.group_by && 1109 self.having == other.having && 1110 self.order_by == other.order_by && 1111 self.limit == other.limit && 1112 self.unknown_fields == other.unknown_fields 1113 } 1114 } 1115 1116 impl ::std::fmt::Debug for SelectRequest { 1117 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { 1118 ::protobuf::text_format::fmt(self, f) 1119 } 1120 } 1121 1122 #[derive(Clone,Default)] 1123 pub struct Row { 1124 // message fields 1125 handle: ::protobuf::SingularField<::std::vec::Vec<u8>>, 1126 data: ::protobuf::SingularField<::std::vec::Vec<u8>>, 1127 // special fields 1128 unknown_fields: ::protobuf::UnknownFields, 1129 cached_size: ::std::cell::Cell<u32>, 1130 } 1131 1132 // see codegen.rs for the explanation why impl Sync explicitly 1133 unsafe impl ::std::marker::Sync for Row {} 1134 1135 impl Row { 1136 pub fn new() -> Row { 1137 ::std::default::Default::default() 1138 } 1139 1140 pub fn default_instance() -> &'static Row { 1141 static mut instance: ::protobuf::lazy::Lazy<Row> = ::protobuf::lazy::Lazy { 1142 lock: ::protobuf::lazy::ONCE_INIT, 1143 ptr: 0 as *const Row, 1144 }; 1145 unsafe { 1146 instance.get(|| { 1147 Row { 1148 handle: ::protobuf::SingularField::none(), 1149 data: ::protobuf::SingularField::none(), 1150 unknown_fields: ::protobuf::UnknownFields::new(), 1151 cached_size: ::std::cell::Cell::new(0), 1152 } 1153 }) 1154 } 1155 } 1156 1157 // optional bytes handle = 1; 1158 1159 pub fn clear_handle(&mut self) { 1160 self.handle.clear(); 1161 } 1162 1163 pub fn has_handle(&self) -> bool { 1164 self.handle.is_some() 1165 } 1166 1167 // Param is passed by value, moved 1168 pub fn set_handle(&mut self, v: ::std::vec::Vec<u8>) { 1169 self.handle = ::protobuf::SingularField::some(v); 1170 } 1171 1172 // Mutable pointer to the field. 1173 // If field is not initialized, it is initialized with default value first. 1174 pub fn mut_handle<'a>(&'a mut self) -> &'a mut ::std::vec::Vec<u8> { 1175 if self.handle.is_none() { 1176 self.handle.set_default(); 1177 }; 1178 self.handle.as_mut().unwrap() 1179 } 1180 1181 // Take field 1182 pub fn take_handle(&mut self) -> ::std::vec::Vec<u8> { 1183 self.handle.take().unwrap_or_else(|| ::std::vec::Vec::new()) 1184 } 1185 1186 pub fn get_handle<'a>(&'a self) -> &'a [u8] { 1187 match self.handle.as_ref() { 1188 Some(v) => &v, 1189 None => &[], 1190 } 1191 } 1192 1193 // optional bytes data = 2; 1194 1195 pub fn clear_data(&mut self) { 1196 self.data.clear(); 1197 } 1198 1199 pub fn has_data(&self) -> bool { 1200 self.data.is_some() 1201 } 1202 1203 // Param is passed by value, moved 1204 pub fn set_data(&mut self, v: ::std::vec::Vec<u8>) { 1205 self.data = ::protobuf::SingularField::some(v); 1206 } 1207 1208 // Mutable pointer to the field. 1209 // If field is not initialized, it is initialized with default value first. 1210 pub fn mut_data<'a>(&'a mut self) -> &'a mut ::std::vec::Vec<u8> { 1211 if self.data.is_none() { 1212 self.data.set_default(); 1213 }; 1214 self.data.as_mut().unwrap() 1215 } 1216 1217 // Take field 1218 pub fn take_data(&mut self) -> ::std::vec::Vec<u8> { 1219 self.data.take().unwrap_or_else(|| ::std::vec::Vec::new()) 1220 } 1221 1222 pub fn get_data<'a>(&'a self) -> &'a [u8] { 1223 match self.data.as_ref() { 1224 Some(v) => &v, 1225 None => &[], 1226 } 1227 } 1228 } 1229 1230 impl ::protobuf::Message for Row { 1231 fn is_initialized(&self) -> bool { 1232 true 1233 } 1234 1235 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> { 1236 while !try!(is.eof()) { 1237 let (field_number, wire_type) = try!(is.read_tag_unpack()); 1238 match field_number { 1239 1 => { 1240 try!(::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.handle)); 1241 }, 1242 2 => { 1243 try!(::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.data)); 1244 }, 1245 _ => { 1246 try!(::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())); 1247 }, 1248 }; 1249 } 1250 ::std::result::Result::Ok(()) 1251 } 1252 1253 // Compute sizes of nested messages 1254 #[allow(unused_variables)] 1255 fn compute_size(&self) -> u32 { 1256 let mut my_size = 0; 1257 for value in self.handle.iter() { 1258 my_size += ::protobuf::rt::bytes_size(1, &value); 1259 }; 1260 for value in self.data.iter() { 1261 my_size += ::protobuf::rt::bytes_size(2, &value); 1262 }; 1263 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); 1264 self.cached_size.set(my_size); 1265 my_size 1266 } 1267 1268 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { 1269 if let Some(v) = self.handle.as_ref() { 1270 try!(os.write_bytes(1, &v)); 1271 }; 1272 if let Some(v) = self.data.as_ref() { 1273 try!(os.write_bytes(2, &v)); 1274 }; 1275 try!(os.write_unknown_fields(self.get_unknown_fields())); 1276 ::std::result::Result::Ok(()) 1277 } 1278 1279 fn get_cached_size(&self) -> u32 { 1280 self.cached_size.get() 1281 } 1282 1283 fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields { 1284 &self.unknown_fields 1285 } 1286 1287 fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields { 1288 &mut self.unknown_fields 1289 } 1290 1291 fn type_id(&self) -> ::std::any::TypeId { 1292 ::std::any::TypeId::of::<Row>() 1293 } 1294 1295 fn as_any(&self) -> &::std::any::Any { 1296 self as &::std::any::Any 1297 } 1298 1299 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { 1300 ::protobuf::MessageStatic::descriptor_static(None::<Self>) 1301 } 1302 } 1303 1304 impl ::protobuf::MessageStatic for Row { 1305 fn new() -> Row { 1306 Row::new() 1307 } 1308 1309 fn descriptor_static(_: ::std::option::Option<Row>) -> &'static ::protobuf::reflect::MessageDescriptor { 1310 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { 1311 lock: ::protobuf::lazy::ONCE_INIT, 1312 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, 1313 }; 1314 unsafe { 1315 descriptor.get(|| { 1316 let mut fields = ::std::vec::Vec::new(); 1317 fields.push(::protobuf::reflect::accessor::make_singular_bytes_accessor( 1318 "handle", 1319 Row::has_handle, 1320 Row::get_handle, 1321 )); 1322 fields.push(::protobuf::reflect::accessor::make_singular_bytes_accessor( 1323 "data", 1324 Row::has_data, 1325 Row::get_data, 1326 )); 1327 ::protobuf::reflect::MessageDescriptor::new::<Row>( 1328 "Row", 1329 fields, 1330 file_descriptor_proto() 1331 ) 1332 }) 1333 } 1334 } 1335 } 1336 1337 impl ::protobuf::Clear for Row { 1338 fn clear(&mut self) { 1339 self.clear_handle(); 1340 self.clear_data(); 1341 self.unknown_fields.clear(); 1342 } 1343 } 1344 1345 impl ::std::cmp::PartialEq for Row { 1346 fn eq(&self, other: &Row) -> bool { 1347 self.handle == other.handle && 1348 self.data == other.data && 1349 self.unknown_fields == other.unknown_fields 1350 } 1351 } 1352 1353 impl ::std::fmt::Debug for Row { 1354 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { 1355 ::protobuf::text_format::fmt(self, f) 1356 } 1357 } 1358 1359 #[derive(Clone,Default)] 1360 pub struct Error { 1361 // message fields 1362 code: ::std::option::Option<i32>, 1363 msg: ::protobuf::SingularField<::std::string::String>, 1364 // special fields 1365 unknown_fields: ::protobuf::UnknownFields, 1366 cached_size: ::std::cell::Cell<u32>, 1367 } 1368 1369 // see codegen.rs for the explanation why impl Sync explicitly 1370 unsafe impl ::std::marker::Sync for Error {} 1371 1372 impl Error { 1373 pub fn new() -> Error { 1374 ::std::default::Default::default() 1375 } 1376 1377 pub fn default_instance() -> &'static Error { 1378 static mut instance: ::protobuf::lazy::Lazy<Error> = ::protobuf::lazy::Lazy { 1379 lock: ::protobuf::lazy::ONCE_INIT, 1380 ptr: 0 as *const Error, 1381 }; 1382 unsafe { 1383 instance.get(|| { 1384 Error { 1385 code: ::std::option::Option::None, 1386 msg: ::protobuf::SingularField::none(), 1387 unknown_fields: ::protobuf::UnknownFields::new(), 1388 cached_size: ::std::cell::Cell::new(0), 1389 } 1390 }) 1391 } 1392 } 1393 1394 // optional int32 code = 1; 1395 1396 pub fn clear_code(&mut self) { 1397 self.code = ::std::option::Option::None; 1398 } 1399 1400 pub fn has_code(&self) -> bool { 1401 self.code.is_some() 1402 } 1403 1404 // Param is passed by value, moved 1405 pub fn set_code(&mut self, v: i32) { 1406 self.code = ::std::option::Option::Some(v); 1407 } 1408 1409 pub fn get_code<'a>(&self) -> i32 { 1410 self.code.unwrap_or(0) 1411 } 1412 1413 // optional string msg = 2; 1414 1415 pub fn clear_msg(&mut self) { 1416 self.msg.clear(); 1417 } 1418 1419 pub fn has_msg(&self) -> bool { 1420 self.msg.is_some() 1421 } 1422 1423 // Param is passed by value, moved 1424 pub fn set_msg(&mut self, v: ::std::string::String) { 1425 self.msg = ::protobuf::SingularField::some(v); 1426 } 1427 1428 // Mutable pointer to the field. 1429 // If field is not initialized, it is initialized with default value first. 1430 pub fn mut_msg<'a>(&'a mut self) -> &'a mut ::std::string::String { 1431 if self.msg.is_none() { 1432 self.msg.set_default(); 1433 }; 1434 self.msg.as_mut().unwrap() 1435 } 1436 1437 // Take field 1438 pub fn take_msg(&mut self) -> ::std::string::String { 1439 self.msg.take().unwrap_or_else(|| ::std::string::String::new()) 1440 } 1441 1442 pub fn get_msg<'a>(&'a self) -> &'a str { 1443 match self.msg.as_ref() { 1444 Some(v) => &v, 1445 None => "", 1446 } 1447 } 1448 } 1449 1450 impl ::protobuf::Message for Error { 1451 fn is_initialized(&self) -> bool { 1452 true 1453 } 1454 1455 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> { 1456 while !try!(is.eof()) { 1457 let (field_number, wire_type) = try!(is.read_tag_unpack()); 1458 match field_number { 1459 1 => { 1460 if wire_type != ::protobuf::wire_format::WireTypeVarint { 1461 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); 1462 }; 1463 let tmp = try!(is.read_int32()); 1464 self.code = ::std::option::Option::Some(tmp); 1465 }, 1466 2 => { 1467 try!(::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.msg)); 1468 }, 1469 _ => { 1470 try!(::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())); 1471 }, 1472 }; 1473 } 1474 ::std::result::Result::Ok(()) 1475 } 1476 1477 // Compute sizes of nested messages 1478 #[allow(unused_variables)] 1479 fn compute_size(&self) -> u32 { 1480 let mut my_size = 0; 1481 for value in self.code.iter() { 1482 my_size += ::protobuf::rt::value_size(1, *value, ::protobuf::wire_format::WireTypeVarint); 1483 }; 1484 for value in self.msg.iter() { 1485 my_size += ::protobuf::rt::string_size(2, &value); 1486 }; 1487 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); 1488 self.cached_size.set(my_size); 1489 my_size 1490 } 1491 1492 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { 1493 if let Some(v) = self.code { 1494 try!(os.write_int32(1, v)); 1495 }; 1496 if let Some(v) = self.msg.as_ref() { 1497 try!(os.write_string(2, &v)); 1498 }; 1499 try!(os.write_unknown_fields(self.get_unknown_fields())); 1500 ::std::result::Result::Ok(()) 1501 } 1502 1503 fn get_cached_size(&self) -> u32 { 1504 self.cached_size.get() 1505 } 1506 1507 fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields { 1508 &self.unknown_fields 1509 } 1510 1511 fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields { 1512 &mut self.unknown_fields 1513 } 1514 1515 fn type_id(&self) -> ::std::any::TypeId { 1516 ::std::any::TypeId::of::<Error>() 1517 } 1518 1519 fn as_any(&self) -> &::std::any::Any { 1520 self as &::std::any::Any 1521 } 1522 1523 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { 1524 ::protobuf::MessageStatic::descriptor_static(None::<Self>) 1525 } 1526 } 1527 1528 impl ::protobuf::MessageStatic for Error { 1529 fn new() -> Error { 1530 Error::new() 1531 } 1532 1533 fn descriptor_static(_: ::std::option::Option<Error>) -> &'static ::protobuf::reflect::MessageDescriptor { 1534 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { 1535 lock: ::protobuf::lazy::ONCE_INIT, 1536 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, 1537 }; 1538 unsafe { 1539 descriptor.get(|| { 1540 let mut fields = ::std::vec::Vec::new(); 1541 fields.push(::protobuf::reflect::accessor::make_singular_i32_accessor( 1542 "code", 1543 Error::has_code, 1544 Error::get_code, 1545 )); 1546 fields.push(::protobuf::reflect::accessor::make_singular_string_accessor( 1547 "msg", 1548 Error::has_msg, 1549 Error::get_msg, 1550 )); 1551 ::protobuf::reflect::MessageDescriptor::new::<Error>( 1552 "Error", 1553 fields, 1554 file_descriptor_proto() 1555 ) 1556 }) 1557 } 1558 } 1559 } 1560 1561 impl ::protobuf::Clear for Error { 1562 fn clear(&mut self) { 1563 self.clear_code(); 1564 self.clear_msg(); 1565 self.unknown_fields.clear(); 1566 } 1567 } 1568 1569 impl ::std::cmp::PartialEq for Error { 1570 fn eq(&self, other: &Error) -> bool { 1571 self.code == other.code && 1572 self.msg == other.msg && 1573 self.unknown_fields == other.unknown_fields 1574 } 1575 } 1576 1577 impl ::std::fmt::Debug for Error { 1578 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { 1579 ::protobuf::text_format::fmt(self, f) 1580 } 1581 } 1582 1583 #[derive(Clone,Default)] 1584 pub struct SelectResponse { 1585 // message fields 1586 error: ::protobuf::SingularPtrField<Error>, 1587 rows: ::protobuf::RepeatedField<Row>, 1588 // special fields 1589 unknown_fields: ::protobuf::UnknownFields, 1590 cached_size: ::std::cell::Cell<u32>, 1591 } 1592 1593 // see codegen.rs for the explanation why impl Sync explicitly 1594 unsafe impl ::std::marker::Sync for SelectResponse {} 1595 1596 impl SelectResponse { 1597 pub fn new() -> SelectResponse { 1598 ::std::default::Default::default() 1599 } 1600 1601 pub fn default_instance() -> &'static SelectResponse { 1602 static mut instance: ::protobuf::lazy::Lazy<SelectResponse> = ::protobuf::lazy::Lazy { 1603 lock: ::protobuf::lazy::ONCE_INIT, 1604 ptr: 0 as *const SelectResponse, 1605 }; 1606 unsafe { 1607 instance.get(|| { 1608 SelectResponse { 1609 error: ::protobuf::SingularPtrField::none(), 1610 rows: ::protobuf::RepeatedField::new(), 1611 unknown_fields: ::protobuf::UnknownFields::new(), 1612 cached_size: ::std::cell::Cell::new(0), 1613 } 1614 }) 1615 } 1616 } 1617 1618 // optional .tipb.Error error = 1; 1619 1620 pub fn clear_error(&mut self) { 1621 self.error.clear(); 1622 } 1623 1624 pub fn has_error(&self) -> bool { 1625 self.error.is_some() 1626 } 1627 1628 // Param is passed by value, moved 1629 pub fn set_error(&mut self, v: Error) { 1630 self.error = ::protobuf::SingularPtrField::some(v); 1631 } 1632 1633 // Mutable pointer to the field. 1634 // If field is not initialized, it is initialized with default value first. 1635 pub fn mut_error<'a>(&'a mut self) -> &'a mut Error { 1636 if self.error.is_none() { 1637 self.error.set_default(); 1638 }; 1639 self.error.as_mut().unwrap() 1640 } 1641 1642 // Take field 1643 pub fn take_error(&mut self) -> Error { 1644 self.error.take().unwrap_or_else(|| Error::new()) 1645 } 1646 1647 pub fn get_error<'a>(&'a self) -> &'a Error { 1648 self.error.as_ref().unwrap_or_else(|| Error::default_instance()) 1649 } 1650 1651 // repeated .tipb.Row rows = 2; 1652 1653 pub fn clear_rows(&mut self) { 1654 self.rows.clear(); 1655 } 1656 1657 // Param is passed by value, moved 1658 pub fn set_rows(&mut self, v: ::protobuf::RepeatedField<Row>) { 1659 self.rows = v; 1660 } 1661 1662 // Mutable pointer to the field. 1663 pub fn mut_rows<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<Row> { 1664 &mut self.rows 1665 } 1666 1667 // Take field 1668 pub fn take_rows(&mut self) -> ::protobuf::RepeatedField<Row> { 1669 ::std::mem::replace(&mut self.rows, ::protobuf::RepeatedField::new()) 1670 } 1671 1672 pub fn get_rows<'a>(&'a self) -> &'a [Row] { 1673 &self.rows 1674 } 1675 } 1676 1677 impl ::protobuf::Message for SelectResponse { 1678 fn is_initialized(&self) -> bool { 1679 true 1680 } 1681 1682 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> { 1683 while !try!(is.eof()) { 1684 let (field_number, wire_type) = try!(is.read_tag_unpack()); 1685 match field_number { 1686 1 => { 1687 try!(::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.error)); 1688 }, 1689 2 => { 1690 try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.rows)); 1691 }, 1692 _ => { 1693 try!(::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())); 1694 }, 1695 }; 1696 } 1697 ::std::result::Result::Ok(()) 1698 } 1699 1700 // Compute sizes of nested messages 1701 #[allow(unused_variables)] 1702 fn compute_size(&self) -> u32 { 1703 let mut my_size = 0; 1704 for value in self.error.iter() { 1705 let len = value.compute_size(); 1706 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; 1707 }; 1708 for value in self.rows.iter() { 1709 let len = value.compute_size(); 1710 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; 1711 }; 1712 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); 1713 self.cached_size.set(my_size); 1714 my_size 1715 } 1716 1717 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { 1718 if let Some(v) = self.error.as_ref() { 1719 try!(os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)); 1720 try!(os.write_raw_varint32(v.get_cached_size())); 1721 try!(v.write_to_with_cached_sizes(os)); 1722 }; 1723 for v in self.rows.iter() { 1724 try!(os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)); 1725 try!(os.write_raw_varint32(v.get_cached_size())); 1726 try!(v.write_to_with_cached_sizes(os)); 1727 }; 1728 try!(os.write_unknown_fields(self.get_unknown_fields())); 1729 ::std::result::Result::Ok(()) 1730 } 1731 1732 fn get_cached_size(&self) -> u32 { 1733 self.cached_size.get() 1734 } 1735 1736 fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields { 1737 &self.unknown_fields 1738 } 1739 1740 fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields { 1741 &mut self.unknown_fields 1742 } 1743 1744 fn type_id(&self) -> ::std::any::TypeId { 1745 ::std::any::TypeId::of::<SelectResponse>() 1746 } 1747 1748 fn as_any(&self) -> &::std::any::Any { 1749 self as &::std::any::Any 1750 } 1751 1752 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { 1753 ::protobuf::MessageStatic::descriptor_static(None::<Self>) 1754 } 1755 } 1756 1757 impl ::protobuf::MessageStatic for SelectResponse { 1758 fn new() -> SelectResponse { 1759 SelectResponse::new() 1760 } 1761 1762 fn descriptor_static(_: ::std::option::Option<SelectResponse>) -> &'static ::protobuf::reflect::MessageDescriptor { 1763 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { 1764 lock: ::protobuf::lazy::ONCE_INIT, 1765 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, 1766 }; 1767 unsafe { 1768 descriptor.get(|| { 1769 let mut fields = ::std::vec::Vec::new(); 1770 fields.push(::protobuf::reflect::accessor::make_singular_message_accessor( 1771 "error", 1772 SelectResponse::has_error, 1773 SelectResponse::get_error, 1774 )); 1775 fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor( 1776 "rows", 1777 SelectResponse::get_rows, 1778 )); 1779 ::protobuf::reflect::MessageDescriptor::new::<SelectResponse>( 1780 "SelectResponse", 1781 fields, 1782 file_descriptor_proto() 1783 ) 1784 }) 1785 } 1786 } 1787 } 1788 1789 impl ::protobuf::Clear for SelectResponse { 1790 fn clear(&mut self) { 1791 self.clear_error(); 1792 self.clear_rows(); 1793 self.unknown_fields.clear(); 1794 } 1795 } 1796 1797 impl ::std::cmp::PartialEq for SelectResponse { 1798 fn eq(&self, other: &SelectResponse) -> bool { 1799 self.error == other.error && 1800 self.rows == other.rows && 1801 self.unknown_fields == other.unknown_fields 1802 } 1803 } 1804 1805 impl ::std::fmt::Debug for SelectResponse { 1806 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { 1807 ::protobuf::text_format::fmt(self, f) 1808 } 1809 } 1810 1811 static file_descriptor_proto_data: &'static [u8] = &[ 1812 0x0a, 0x0c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 1813 0x74, 0x69, 0x70, 0x62, 0x1a, 0x10, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 1814 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x70, 1815 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x25, 0x0a, 0x08, 0x4b, 0x65, 0x79, 0x52, 0x61, 0x6e, 0x67, 0x65, 1816 0x12, 0x0b, 0x0a, 0x03, 0x6c, 0x6f, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x12, 0x0c, 0x0a, 1817 0x04, 0x68, 0x69, 0x67, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x22, 0x30, 0x0a, 0x06, 0x42, 1818 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x18, 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 1819 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x74, 0x69, 0x70, 0x62, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x12, 1820 0x0c, 0x0a, 0x04, 0x64, 0x65, 0x73, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x22, 0xbf, 0x02, 1821 0x0a, 0x0d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 1822 0x10, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 1823 0x04, 0x12, 0x23, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 1824 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x74, 0x69, 0x70, 0x62, 0x2e, 0x54, 0x61, 0x62, 1825 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 1826 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x74, 0x69, 0x70, 1827 0x62, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x06, 0x66, 1828 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x74, 0x69, 1829 0x70, 0x62, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x12, 0x1e, 0x0a, 0x06, 0x72, 0x61, 0x6e, 0x67, 0x65, 1830 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x74, 0x69, 0x70, 0x62, 0x2e, 0x4b, 1831 0x65, 0x79, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x74, 0x69, 1832 0x6e, 0x63, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x12, 0x19, 0x0a, 0x05, 0x77, 0x68, 0x65, 1833 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x74, 0x69, 0x70, 0x62, 0x2e, 1834 0x45, 0x78, 0x70, 0x72, 0x12, 0x1e, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x62, 0x79, 1835 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x74, 0x69, 0x70, 0x62, 0x2e, 0x42, 0x79, 1836 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1a, 0x0a, 0x06, 0x68, 0x61, 0x76, 0x69, 0x6e, 0x67, 0x18, 0x09, 1837 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x74, 0x69, 0x70, 0x62, 0x2e, 0x45, 0x78, 0x70, 0x72, 1838 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x0a, 0x20, 0x03, 1839 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x74, 0x69, 0x70, 0x62, 0x2e, 0x42, 0x79, 0x49, 0x74, 0x65, 0x6d, 1840 0x12, 0x0d, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x22, 1841 0x23, 0x0a, 0x03, 0x52, 0x6f, 0x77, 0x12, 0x0e, 0x0a, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 1842 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x12, 0x0c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 1843 0x20, 0x01, 0x28, 0x0c, 0x22, 0x22, 0x0a, 0x05, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x0c, 0x0a, 1844 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x12, 0x0b, 0x0a, 0x03, 0x6d, 1845 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x22, 0x45, 0x0a, 0x0e, 0x53, 0x65, 0x6c, 0x65, 1846 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x05, 0x65, 0x72, 1847 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x69, 0x70, 0x62, 1848 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x17, 0x0a, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x02, 1849 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x74, 0x69, 0x70, 0x62, 0x2e, 0x52, 0x6f, 0x77, 0x42, 1850 0x19, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x2e, 0x70, 0x69, 0x6e, 0x67, 0x63, 0x61, 0x70, 0x2e, 0x74, 1851 0x69, 0x64, 0x62, 0x2e, 0x74, 0x69, 0x70, 0x62, 0x50, 0x01, 0x4a, 0xaf, 0x14, 0x0a, 0x06, 0x12, 1852 0x04, 0x00, 0x00, 0x4c, 0x01, 0x0a, 0x08, 0x0a, 0x01, 0x02, 0x12, 0x03, 0x02, 0x08, 0x0c, 0x0a, 1853 0x08, 0x0a, 0x01, 0x08, 0x12, 0x03, 0x04, 0x00, 0x22, 0x0a, 0x0b, 0x0a, 0x04, 0x08, 0xe7, 0x07, 1854 0x00, 0x12, 0x03, 0x04, 0x00, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x08, 0xe7, 0x07, 0x00, 0x02, 0x12, 1855 0x03, 0x04, 0x07, 0x1a, 0x0a, 0x0d, 0x0a, 0x06, 0x08, 0xe7, 0x07, 0x00, 0x02, 0x00, 0x12, 0x03, 1856 0x04, 0x07, 0x1a, 0x0a, 0x0e, 0x0a, 0x07, 0x08, 0xe7, 0x07, 0x00, 0x02, 0x00, 0x01, 0x12, 0x03, 1857 0x04, 0x07, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x08, 0xe7, 0x07, 0x00, 0x03, 0x12, 0x03, 0x04, 0x1d, 1858 0x21, 0x0a, 0x08, 0x0a, 0x01, 0x08, 0x12, 0x03, 0x05, 0x00, 0x2e, 0x0a, 0x0b, 0x0a, 0x04, 0x08, 1859 0xe7, 0x07, 0x01, 0x12, 0x03, 0x05, 0x00, 0x2e, 0x0a, 0x0c, 0x0a, 0x05, 0x08, 0xe7, 0x07, 0x01, 1860 0x02, 0x12, 0x03, 0x05, 0x07, 0x13, 0x0a, 0x0d, 0x0a, 0x06, 0x08, 0xe7, 0x07, 0x01, 0x02, 0x00, 1861 0x12, 0x03, 0x05, 0x07, 0x13, 0x0a, 0x0e, 0x0a, 0x07, 0x08, 0xe7, 0x07, 0x01, 0x02, 0x00, 0x01, 1862 0x12, 0x03, 0x05, 0x07, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x08, 0xe7, 0x07, 0x01, 0x07, 0x12, 0x03, 1863 0x05, 0x16, 0x2d, 0x0a, 0x09, 0x0a, 0x02, 0x03, 0x00, 0x12, 0x03, 0x07, 0x07, 0x19, 0x0a, 0x09, 1864 0x0a, 0x02, 0x03, 0x01, 0x12, 0x03, 0x08, 0x07, 0x15, 0x0a, 0x65, 0x0a, 0x02, 0x04, 0x00, 0x12, 1865 0x04, 0x0b, 0x00, 0x0e, 0x01, 0x1a, 0x59, 0x20, 0x4b, 0x65, 0x79, 0x52, 0x61, 0x6e, 0x67, 0x65, 1866 0x20, 0x69, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x20, 1867 0x69, 0x6e, 0x64, 0x65, 0x78, 0x20, 0x6b, 0x65, 0x79, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x2c, 1868 0x20, 0x6c, 0x6f, 0x77, 0x20, 0x69, 0x73, 0x20, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x2c, 0x20, 1869 0x68, 0x69, 0x67, 0x68, 0x20, 0x69, 0x73, 0x20, 0x6f, 0x70, 0x65, 0x6e, 0x2e, 0x20, 0x28, 0x6c, 1870 0x6f, 0x77, 0x20, 0x3c, 0x3d, 0x20, 0x78, 0x20, 0x3c, 0x20, 0x68, 0x69, 0x67, 0x68, 0x29, 0x0a, 1871 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x00, 0x01, 0x12, 0x03, 0x0b, 0x08, 0x10, 0x0a, 0x0b, 0x0a, 0x04, 1872 0x04, 0x00, 0x02, 0x00, 0x12, 0x03, 0x0c, 0x08, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 1873 0x00, 0x04, 0x12, 0x03, 0x0c, 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x05, 1874 0x12, 0x03, 0x0c, 0x11, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x01, 0x12, 0x03, 1875 0x0c, 0x17, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x03, 0x12, 0x03, 0x0c, 0x1d, 1876 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x01, 0x12, 0x03, 0x0d, 0x08, 0x20, 0x0a, 0x0c, 1877 0x0a, 0x05, 0x04, 0x00, 0x02, 0x01, 0x04, 0x12, 0x03, 0x0d, 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 1878 0x04, 0x00, 0x02, 0x01, 0x05, 0x12, 0x03, 0x0d, 0x11, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 1879 0x02, 0x01, 0x01, 0x12, 0x03, 0x0d, 0x17, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x01, 1880 0x03, 0x12, 0x03, 0x0d, 0x1e, 0x1f, 0x0a, 0x34, 0x0a, 0x02, 0x04, 0x01, 0x12, 0x04, 0x11, 0x00, 1881 0x14, 0x01, 0x1a, 0x28, 0x20, 0x42, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x20, 0x74, 0x79, 0x70, 0x65, 1882 0x20, 0x66, 0x6f, 0x72, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x62, 0x79, 0x20, 0x61, 0x6e, 1883 0x64, 0x20, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x20, 0x62, 0x79, 0x2e, 0x0a, 0x0a, 0x0a, 0x0a, 0x03, 1884 0x04, 0x01, 0x01, 0x12, 0x03, 0x11, 0x08, 0x0e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x00, 1885 0x12, 0x03, 0x12, 0x08, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x04, 0x12, 0x03, 1886 0x12, 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x06, 0x12, 0x03, 0x12, 0x11, 1887 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x01, 0x12, 0x03, 0x12, 0x16, 0x1a, 0x0a, 1888 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x03, 0x12, 0x03, 0x12, 0x1d, 0x1e, 0x0a, 0x0b, 0x0a, 1889 0x04, 0x04, 0x01, 0x02, 0x01, 0x12, 0x03, 0x13, 0x08, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 1890 0x02, 0x01, 0x04, 0x12, 0x03, 0x13, 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, 1891 0x05, 0x12, 0x03, 0x13, 0x11, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, 0x01, 0x12, 1892 0x03, 0x13, 0x16, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, 0x03, 0x12, 0x03, 0x13, 1893 0x1d, 0x1e, 0x0a, 0x45, 0x0a, 0x02, 0x04, 0x02, 0x12, 0x04, 0x17, 0x00, 0x39, 0x01, 0x1a, 0x39, 1894 0x20, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x20, 0x77, 1895 0x6f, 0x72, 0x6b, 0x73, 0x20, 0x6c, 0x69, 0x6b, 0x65, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6d, 0x70, 1896 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x20, 0x73, 0x74, 1897 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x0a, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x02, 0x01, 1898 0x12, 0x03, 0x17, 0x08, 0x15, 0x0a, 0x2b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x00, 0x12, 0x03, 0x19, 1899 0x08, 0x25, 0x1a, 0x1e, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 1900 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 1901 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x04, 0x12, 0x03, 0x19, 0x08, 0x10, 1902 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x05, 0x12, 0x03, 0x19, 0x11, 0x17, 0x0a, 0x0c, 1903 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x01, 0x12, 0x03, 0x19, 0x18, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 1904 0x04, 0x02, 0x02, 0x00, 0x03, 0x12, 0x03, 0x19, 0x23, 0x24, 0x0a, 0x5f, 0x0a, 0x04, 0x04, 0x02, 1905 0x02, 0x01, 0x12, 0x03, 0x1c, 0x08, 0x2a, 0x1a, 0x52, 0x20, 0x49, 0x66, 0x20, 0x74, 0x61, 0x62, 1906 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6e, 1907 0x75, 0x6c, 0x6c, 0x2c, 0x20, 0x69, 0x74, 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 1908 0x74, 0x73, 0x20, 0x61, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x73, 0x63, 0x61, 0x6e, 0x2c, 1909 0x20, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x20, 0x77, 0x6f, 0x75, 0x6c, 1910 0x64, 0x20, 0x62, 0x65, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 1911 0x02, 0x02, 0x01, 0x04, 0x12, 0x03, 0x1c, 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 1912 0x01, 0x06, 0x12, 0x03, 0x1c, 0x11, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, 0x01, 1913 0x12, 0x03, 0x1c, 0x1b, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, 0x03, 0x12, 0x03, 1914 0x1c, 0x28, 0x29, 0x0a, 0x60, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x02, 0x12, 0x03, 0x1f, 0x08, 0x2a, 1915 0x1a, 0x53, 0x20, 0x49, 0x66, 0x20, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 1916 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x2c, 0x20, 0x69, 0x74, 1917 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x69, 1918 0x6e, 0x64, 0x65, 0x78, 0x20, 0x73, 0x63, 0x61, 0x6e, 0x2c, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 1919 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x20, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x20, 0x6e, 1920 0x75, 0x6c, 0x6c, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x02, 0x04, 0x12, 0x03, 1921 0x1f, 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x02, 0x06, 0x12, 0x03, 0x1f, 0x11, 1922 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x02, 0x01, 0x12, 0x03, 0x1f, 0x1b, 0x25, 0x0a, 1923 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x02, 0x03, 0x12, 0x03, 0x1f, 0x28, 0x29, 0x0a, 0xab, 0x01, 1924 0x0a, 0x04, 0x04, 0x02, 0x02, 0x03, 0x12, 0x03, 0x23, 0x08, 0x21, 0x1a, 0x9d, 0x01, 0x20, 0x66, 1925 0x69, 0x65, 0x6c, 0x64, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x20, 0x73, 0x65, 0x6c, 0x65, 1926 0x63, 0x74, 0x65, 0x64, 0x2c, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x20, 0x74, 0x79, 0x70, 1927 0x65, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x20, 1928 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x73, 0x69, 1929 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x73, 0x63, 0x61, 0x6e, 0x2e, 0x0a, 0x20, 0x6f, 0x72, 0x20, 0x61, 1930 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 1931 0x69, 0x6f, 0x6e, 0x2e, 0x20, 0x49, 0x66, 0x20, 0x6e, 0x6f, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 1932 0x73, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x2c, 0x20, 0x6f, 0x6e, 0x6c, 1933 0x79, 0x20, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 1934 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 1935 0x02, 0x02, 0x03, 0x04, 0x12, 0x03, 0x23, 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 1936 0x03, 0x06, 0x12, 0x03, 0x23, 0x11, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x03, 0x01, 1937 0x12, 0x03, 0x23, 0x16, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x03, 0x03, 0x12, 0x03, 1938 0x23, 0x1f, 0x20, 0x0a, 0x34, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x04, 0x12, 0x03, 0x26, 0x08, 0x25, 1939 0x1a, 0x27, 0x20, 0x64, 0x69, 0x73, 0x6a, 0x6f, 0x69, 0x6e, 0x74, 0x20, 0x68, 0x61, 0x6e, 0x64, 1940 0x6c, 0x65, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x20, 1941 0x73, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 1942 0x04, 0x04, 0x12, 0x03, 0x26, 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x04, 0x06, 1943 0x12, 0x03, 0x26, 0x11, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x04, 0x01, 0x12, 0x03, 1944 0x26, 0x1a, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x04, 0x03, 0x12, 0x03, 0x26, 0x23, 1945 0x24, 0x0a, 0x1f, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x05, 0x12, 0x03, 0x29, 0x08, 0x23, 0x1a, 0x12, 1946 0x20, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x20, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 1947 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x05, 0x04, 0x12, 0x03, 0x29, 0x08, 0x10, 1948 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x05, 0x05, 0x12, 0x03, 0x29, 0x11, 0x15, 0x0a, 0x0c, 1949 0x0a, 0x05, 0x04, 0x02, 0x02, 0x05, 0x01, 0x12, 0x03, 0x29, 0x16, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 1950 0x04, 0x02, 0x02, 0x05, 0x03, 0x12, 0x03, 0x29, 0x21, 0x22, 0x0a, 0x1f, 0x0a, 0x04, 0x04, 0x02, 1951 0x02, 0x06, 0x12, 0x03, 0x2c, 0x08, 0x20, 0x1a, 0x12, 0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 1952 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 1953 0x02, 0x02, 0x06, 0x04, 0x12, 0x03, 0x2c, 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 1954 0x06, 0x06, 0x12, 0x03, 0x2c, 0x11, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x06, 0x01, 1955 0x12, 0x03, 0x2c, 0x16, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x06, 0x03, 0x12, 0x03, 1956 0x2c, 0x1e, 0x1f, 0x0a, 0x1f, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x07, 0x12, 0x03, 0x2f, 0x08, 0x25, 1957 0x1a, 0x12, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x62, 0x79, 0x20, 0x63, 0x6c, 0x61, 0x75, 1958 0x73, 0x65, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x07, 0x04, 0x12, 0x03, 0x2f, 1959 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x07, 0x06, 0x12, 0x03, 0x2f, 0x11, 0x17, 1960 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x07, 0x01, 0x12, 0x03, 0x2f, 0x18, 0x20, 0x0a, 0x0c, 1961 0x0a, 0x05, 0x04, 0x02, 0x02, 0x07, 0x03, 0x12, 0x03, 0x2f, 0x23, 0x24, 0x0a, 0x1d, 0x0a, 0x04, 1962 0x04, 0x02, 0x02, 0x08, 0x12, 0x03, 0x32, 0x08, 0x21, 0x1a, 0x10, 0x20, 0x68, 0x61, 0x76, 0x69, 1963 0x6e, 0x67, 0x20, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 1964 0x02, 0x02, 0x08, 0x04, 0x12, 0x03, 0x32, 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 1965 0x08, 0x06, 0x12, 0x03, 0x32, 0x11, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x08, 0x01, 1966 0x12, 0x03, 0x32, 0x16, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x08, 0x03, 0x12, 0x03, 1967 0x32, 0x1f, 0x20, 0x0a, 0x1f, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x09, 0x12, 0x03, 0x35, 0x08, 0x26, 1968 0x1a, 0x12, 0x20, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x20, 0x62, 0x79, 0x20, 0x63, 0x6c, 0x61, 0x75, 1969 0x73, 0x65, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x09, 0x04, 0x12, 0x03, 0x35, 1970 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x09, 0x06, 0x12, 0x03, 0x35, 0x11, 0x17, 1971 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x09, 0x01, 0x12, 0x03, 0x35, 0x18, 0x20, 0x0a, 0x0c, 1972 0x0a, 0x05, 0x04, 0x02, 0x02, 0x09, 0x03, 0x12, 0x03, 0x35, 0x23, 0x25, 0x0a, 0x2f, 0x0a, 0x04, 1973 0x04, 0x02, 0x02, 0x0a, 0x12, 0x03, 0x38, 0x08, 0x22, 0x1a, 0x22, 0x20, 0x6c, 0x69, 0x6d, 0x69, 1974 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x20, 0x74, 0x6f, 0x20, 1975 0x62, 0x65, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 1976 0x05, 0x04, 0x02, 0x02, 0x0a, 0x04, 0x12, 0x03, 0x38, 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 1977 0x02, 0x02, 0x0a, 0x05, 0x12, 0x03, 0x38, 0x11, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 1978 0x0a, 0x01, 0x12, 0x03, 0x38, 0x17, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0a, 0x03, 1979 0x12, 0x03, 0x38, 0x1f, 0x21, 0x0a, 0x2c, 0x0a, 0x02, 0x04, 0x03, 0x12, 0x04, 0x3c, 0x00, 0x3f, 1980 0x01, 0x1a, 0x20, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x61, 1981 0x6c, 0x6c, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x65, 0x78, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 1982 0x74, 0x2e, 0x0a, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x03, 0x01, 0x12, 0x03, 0x3c, 0x08, 0x0b, 0x0a, 1983 0x0b, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x00, 0x12, 0x03, 0x3d, 0x08, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 1984 0x04, 0x03, 0x02, 0x00, 0x04, 0x12, 0x03, 0x3d, 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 1985 0x02, 0x00, 0x05, 0x12, 0x03, 0x3d, 0x11, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 1986 0x01, 0x12, 0x03, 0x3d, 0x17, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x03, 0x12, 1987 0x03, 0x3d, 0x20, 0x21, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x01, 0x12, 0x03, 0x3e, 0x08, 1988 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x01, 0x04, 0x12, 0x03, 0x3e, 0x08, 0x10, 0x0a, 1989 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x01, 0x05, 0x12, 0x03, 0x3e, 0x11, 0x16, 0x0a, 0x0c, 0x0a, 1990 0x05, 0x04, 0x03, 0x02, 0x01, 0x01, 0x12, 0x03, 0x3e, 0x17, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 1991 0x03, 0x02, 0x01, 0x03, 0x12, 0x03, 0x3e, 0x1e, 0x1f, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x04, 0x12, 1992 0x04, 0x41, 0x00, 0x44, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x04, 0x01, 0x12, 0x03, 0x41, 0x08, 1993 0x0d, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x00, 0x12, 0x03, 0x42, 0x08, 0x20, 0x0a, 0x0c, 1994 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x04, 0x12, 0x03, 0x42, 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 1995 0x04, 0x04, 0x02, 0x00, 0x05, 0x12, 0x03, 0x42, 0x11, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 1996 0x02, 0x00, 0x01, 0x12, 0x03, 0x42, 0x17, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 1997 0x03, 0x12, 0x03, 0x42, 0x1e, 0x1f, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x01, 0x12, 0x03, 1998 0x43, 0x08, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x01, 0x04, 0x12, 0x03, 0x43, 0x08, 1999 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x01, 0x05, 0x12, 0x03, 0x43, 0x11, 0x17, 0x0a, 2000 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x01, 0x01, 0x12, 0x03, 0x43, 0x18, 0x1b, 0x0a, 0x0c, 0x0a, 2001 0x05, 0x04, 0x04, 0x02, 0x01, 0x03, 0x12, 0x03, 0x43, 0x1e, 0x1f, 0x0a, 0x29, 0x0a, 0x02, 0x04, 2002 0x05, 0x12, 0x04, 0x47, 0x00, 0x4c, 0x01, 0x1a, 0x1d, 0x20, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 2003 0x73, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 2004 0x75, 0x65, 0x73, 0x74, 0x2e, 0x0a, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x05, 0x01, 0x12, 0x03, 0x47, 2005 0x08, 0x16, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x00, 0x12, 0x03, 0x48, 0x08, 0x21, 0x0a, 2006 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x04, 0x12, 0x03, 0x48, 0x08, 0x10, 0x0a, 0x0c, 0x0a, 2007 0x05, 0x04, 0x05, 0x02, 0x00, 0x06, 0x12, 0x03, 0x48, 0x11, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 2008 0x05, 0x02, 0x00, 0x01, 0x12, 0x03, 0x48, 0x17, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 2009 0x00, 0x03, 0x12, 0x03, 0x48, 0x1f, 0x20, 0x0a, 0x1b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x01, 0x12, 2010 0x03, 0x4b, 0x08, 0x1e, 0x1a, 0x0e, 0x20, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x20, 0x72, 0x6f, 2011 0x77, 0x73, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x04, 0x12, 0x03, 0x4b, 2012 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x06, 0x12, 0x03, 0x4b, 0x11, 0x14, 2013 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x01, 0x12, 0x03, 0x4b, 0x15, 0x19, 0x0a, 0x0c, 2014 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x03, 0x12, 0x03, 0x4b, 0x1c, 0x1d, 2015 ]; 2016 2017 static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy { 2018 lock: ::protobuf::lazy::ONCE_INIT, 2019 ptr: 0 as *const ::protobuf::descriptor::FileDescriptorProto, 2020 }; 2021 2022 fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { 2023 ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() 2024 } 2025 2026 pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { 2027 unsafe { 2028 file_descriptor_proto_lazy.get(|| { 2029 parse_descriptor_proto() 2030 }) 2031 } 2032 }