@@ -134,11 +134,7 @@ impl StatusCode {
134134 let offset = ( self . 0 . get ( ) - 100 ) as usize ;
135135 let offset = offset * 3 ;
136136
137- unsafe {
138- CODES_AS_STR
139- . get_unchecked ( offset..)
140- . get_unchecked ( ..3 )
141- }
137+ unsafe { CODE_DIGITS . get_unchecked ( offset..offset+3 ) }
142138 }
143139
144140 /// Get the standardised `reason-phrase` for this status code.
@@ -533,68 +529,51 @@ impl fmt::Display for InvalidStatusCode {
533529
534530impl Error for InvalidStatusCode { }
535531
536- macro_rules! status_code_strs {
537- ( $( $num: expr, ) +) => {
538- const CODES_AS_STR : & ' static str = concat!(
539- $(
540- stringify!( $num) ,
541- ) +
542- ) ;
543- }
544- }
545-
546- status_code_strs ! (
547- 100 , 101 , 102 , 103 , 104 , 105 , 106 , 107 , 108 , 109 , 110 , 111 , 112 , 113 , 114 , 115 , 116 , 117 , 118 , 119 ,
548- 120 , 121 , 122 , 123 , 124 , 125 , 126 , 127 , 128 , 129 , 130 , 131 , 132 , 133 , 134 , 135 , 136 , 137 , 138 , 139 ,
549- 140 , 141 , 142 , 143 , 144 , 145 , 146 , 147 , 148 , 149 , 150 , 151 , 152 , 153 , 154 , 155 , 156 , 157 , 158 , 159 ,
550- 160 , 161 , 162 , 163 , 164 , 165 , 166 , 167 , 168 , 169 , 170 , 171 , 172 , 173 , 174 , 175 , 176 , 177 , 178 , 179 ,
551- 180 , 181 , 182 , 183 , 184 , 185 , 186 , 187 , 188 , 189 , 190 , 191 , 192 , 193 , 194 , 195 , 196 , 197 , 198 , 199 ,
552-
553- 200 , 201 , 202 , 203 , 204 , 205 , 206 , 207 , 208 , 209 , 210 , 211 , 212 , 213 , 214 , 215 , 216 , 217 , 218 , 219 ,
554- 220 , 221 , 222 , 223 , 224 , 225 , 226 , 227 , 228 , 229 , 230 , 231 , 232 , 233 , 234 , 235 , 236 , 237 , 238 , 239 ,
555- 240 , 241 , 242 , 243 , 244 , 245 , 246 , 247 , 248 , 249 , 250 , 251 , 252 , 253 , 254 , 255 , 256 , 257 , 258 , 259 ,
556- 260 , 261 , 262 , 263 , 264 , 265 , 266 , 267 , 268 , 269 , 270 , 271 , 272 , 273 , 274 , 275 , 276 , 277 , 278 , 279 ,
557- 280 , 281 , 282 , 283 , 284 , 285 , 286 , 287 , 288 , 289 , 290 , 291 , 292 , 293 , 294 , 295 , 296 , 297 , 298 , 299 ,
558-
559- 300 , 301 , 302 , 303 , 304 , 305 , 306 , 307 , 308 , 309 , 310 , 311 , 312 , 313 , 314 , 315 , 316 , 317 , 318 , 319 ,
560- 320 , 321 , 322 , 323 , 324 , 325 , 326 , 327 , 328 , 329 , 330 , 331 , 332 , 333 , 334 , 335 , 336 , 337 , 338 , 339 ,
561- 340 , 341 , 342 , 343 , 344 , 345 , 346 , 347 , 348 , 349 , 350 , 351 , 352 , 353 , 354 , 355 , 356 , 357 , 358 , 359 ,
562- 360 , 361 , 362 , 363 , 364 , 365 , 366 , 367 , 368 , 369 , 370 , 371 , 372 , 373 , 374 , 375 , 376 , 377 , 378 , 379 ,
563- 380 , 381 , 382 , 383 , 384 , 385 , 386 , 387 , 388 , 389 , 390 , 391 , 392 , 393 , 394 , 395 , 396 , 397 , 398 , 399 ,
564-
565- 400 , 401 , 402 , 403 , 404 , 405 , 406 , 407 , 408 , 409 , 410 , 411 , 412 , 413 , 414 , 415 , 416 , 417 , 418 , 419 ,
566- 420 , 421 , 422 , 423 , 424 , 425 , 426 , 427 , 428 , 429 , 430 , 431 , 432 , 433 , 434 , 435 , 436 , 437 , 438 , 439 ,
567- 440 , 441 , 442 , 443 , 444 , 445 , 446 , 447 , 448 , 449 , 450 , 451 , 452 , 453 , 454 , 455 , 456 , 457 , 458 , 459 ,
568- 460 , 461 , 462 , 463 , 464 , 465 , 466 , 467 , 468 , 469 , 470 , 471 , 472 , 473 , 474 , 475 , 476 , 477 , 478 , 479 ,
569- 480 , 481 , 482 , 483 , 484 , 485 , 486 , 487 , 488 , 489 , 490 , 491 , 492 , 493 , 494 , 495 , 496 , 497 , 498 , 499 ,
570-
571- 500 , 501 , 502 , 503 , 504 , 505 , 506 , 507 , 508 , 509 , 510 , 511 , 512 , 513 , 514 , 515 , 516 , 517 , 518 , 519 ,
572- 520 , 521 , 522 , 523 , 524 , 525 , 526 , 527 , 528 , 529 , 530 , 531 , 532 , 533 , 534 , 535 , 536 , 537 , 538 , 539 ,
573- 540 , 541 , 542 , 543 , 544 , 545 , 546 , 547 , 548 , 549 , 550 , 551 , 552 , 553 , 554 , 555 , 556 , 557 , 558 , 559 ,
574- 560 , 561 , 562 , 563 , 564 , 565 , 566 , 567 , 568 , 569 , 570 , 571 , 572 , 573 , 574 , 575 , 576 , 577 , 578 , 579 ,
575- 580 , 581 , 582 , 583 , 584 , 585 , 586 , 587 , 588 , 589 , 590 , 591 , 592 , 593 , 594 , 595 , 596 , 597 , 598 , 599 ,
576-
577- 600 , 601 , 602 , 603 , 604 , 605 , 606 , 607 , 608 , 609 , 610 , 611 , 612 , 613 , 614 , 615 , 616 , 617 , 618 , 619 ,
578- 620 , 621 , 622 , 623 , 624 , 625 , 626 , 627 , 628 , 629 , 630 , 631 , 632 , 633 , 634 , 635 , 636 , 637 , 638 , 639 ,
579- 640 , 641 , 642 , 643 , 644 , 645 , 646 , 647 , 648 , 649 , 650 , 651 , 652 , 653 , 654 , 655 , 656 , 657 , 658 , 659 ,
580- 660 , 661 , 662 , 663 , 664 , 665 , 666 , 667 , 668 , 669 , 670 , 671 , 672 , 673 , 674 , 675 , 676 , 677 , 678 , 679 ,
581- 680 , 681 , 682 , 683 , 684 , 685 , 686 , 687 , 688 , 689 , 690 , 691 , 692 , 693 , 694 , 695 , 696 , 697 , 698 , 699 ,
582-
583- 700 , 701 , 702 , 703 , 704 , 705 , 706 , 707 , 708 , 709 , 710 , 711 , 712 , 713 , 714 , 715 , 716 , 717 , 718 , 719 ,
584- 720 , 721 , 722 , 723 , 724 , 725 , 726 , 727 , 728 , 729 , 730 , 731 , 732 , 733 , 734 , 735 , 736 , 737 , 738 , 739 ,
585- 740 , 741 , 742 , 743 , 744 , 745 , 746 , 747 , 748 , 749 , 750 , 751 , 752 , 753 , 754 , 755 , 756 , 757 , 758 , 759 ,
586- 760 , 761 , 762 , 763 , 764 , 765 , 766 , 767 , 768 , 769 , 770 , 771 , 772 , 773 , 774 , 775 , 776 , 777 , 778 , 779 ,
587- 780 , 781 , 782 , 783 , 784 , 785 , 786 , 787 , 788 , 789 , 790 , 791 , 792 , 793 , 794 , 795 , 796 , 797 , 798 , 799 ,
588-
589- 800 , 801 , 802 , 803 , 804 , 805 , 806 , 807 , 808 , 809 , 810 , 811 , 812 , 813 , 814 , 815 , 816 , 817 , 818 , 819 ,
590- 820 , 821 , 822 , 823 , 824 , 825 , 826 , 827 , 828 , 829 , 830 , 831 , 832 , 833 , 834 , 835 , 836 , 837 , 838 , 839 ,
591- 840 , 841 , 842 , 843 , 844 , 845 , 846 , 847 , 848 , 849 , 850 , 851 , 852 , 853 , 854 , 855 , 856 , 857 , 858 , 859 ,
592- 860 , 861 , 862 , 863 , 864 , 865 , 866 , 867 , 868 , 869 , 870 , 871 , 872 , 873 , 874 , 875 , 876 , 877 , 878 , 879 ,
593- 880 , 881 , 882 , 883 , 884 , 885 , 886 , 887 , 888 , 889 , 890 , 891 , 892 , 893 , 894 , 895 , 896 , 897 , 898 , 899 ,
594-
595- 900 , 901 , 902 , 903 , 904 , 905 , 906 , 907 , 908 , 909 , 910 , 911 , 912 , 913 , 914 , 915 , 916 , 917 , 918 , 919 ,
596- 920 , 921 , 922 , 923 , 924 , 925 , 926 , 927 , 928 , 929 , 930 , 931 , 932 , 933 , 934 , 935 , 936 , 937 , 938 , 939 ,
597- 940 , 941 , 942 , 943 , 944 , 945 , 946 , 947 , 948 , 949 , 950 , 951 , 952 , 953 , 954 , 955 , 956 , 957 , 958 , 959 ,
598- 960 , 961 , 962 , 963 , 964 , 965 , 966 , 967 , 968 , 969 , 970 , 971 , 972 , 973 , 974 , 975 , 976 , 977 , 978 , 979 ,
599- 980 , 981 , 982 , 983 , 984 , 985 , 986 , 987 , 988 , 989 , 990 , 991 , 992 , 993 , 994 , 995 , 996 , 997 , 998 , 999 ,
600- ) ;
532+ // A string of packed 3-ASCII-digit status code values for the supported range
533+ // of (100..=999)
534+ const CODE_DIGITS : & ' static str = "\
535+ 100101102103104105106107108109110111112113114115116117118119\
536+ 120121122123124125126127128129130131132133134135136137138139\
537+ 140141142143144145146147148149150151152153154155156157158159\
538+ 160161162163164165166167168169170171172173174175176177178179\
539+ 180181182183184185186187188189190191192193194195196197198199\
540+ 200201202203204205206207208209210211212213214215216217218219\
541+ 220221222223224225226227228229230231232233234235236237238239\
542+ 240241242243244245246247248249250251252253254255256257258259\
543+ 260261262263264265266267268269270271272273274275276277278279\
544+ 280281282283284285286287288289290291292293294295296297298299\
545+ 300301302303304305306307308309310311312313314315316317318319\
546+ 320321322323324325326327328329330331332333334335336337338339\
547+ 340341342343344345346347348349350351352353354355356357358359\
548+ 360361362363364365366367368369370371372373374375376377378379\
549+ 380381382383384385386387388389390391392393394395396397398399\
550+ 400401402403404405406407408409410411412413414415416417418419\
551+ 420421422423424425426427428429430431432433434435436437438439\
552+ 440441442443444445446447448449450451452453454455456457458459\
553+ 460461462463464465466467468469470471472473474475476477478479\
554+ 480481482483484485486487488489490491492493494495496497498499\
555+ 500501502503504505506507508509510511512513514515516517518519\
556+ 520521522523524525526527528529530531532533534535536537538539\
557+ 540541542543544545546547548549550551552553554555556557558559\
558+ 560561562563564565566567568569570571572573574575576577578579\
559+ 580581582583584585586587588589590591592593594595596597598599\
560+ 600601602603604605606607608609610611612613614615616617618619\
561+ 620621622623624625626627628629630631632633634635636637638639\
562+ 640641642643644645646647648649650651652653654655656657658659\
563+ 660661662663664665666667668669670671672673674675676677678679\
564+ 680681682683684685686687688689690691692693694695696697698699\
565+ 700701702703704705706707708709710711712713714715716717718719\
566+ 720721722723724725726727728729730731732733734735736737738739\
567+ 740741742743744745746747748749750751752753754755756757758759\
568+ 760761762763764765766767768769770771772773774775776777778779\
569+ 780781782783784785786787788789790791792793794795796797798799\
570+ 800801802803804805806807808809810811812813814815816817818819\
571+ 820821822823824825826827828829830831832833834835836837838839\
572+ 840841842843844845846847848849850851852853854855856857858859\
573+ 860861862863864865866867868869870871872873874875876877878879\
574+ 880881882883884885886887888889890891892893894895896897898899\
575+ 900901902903904905906907908909910911912913914915916917918919\
576+ 920921922923924925926927928929930931932933934935936937938939\
577+ 940941942943944945946947948949950951952953954955956957958959\
578+ 960961962963964965966967968969970971972973974975976977978979\
579+ 980981982983984985986987988989990991992993994995996997998999";
0 commit comments