Files
boc/rust-service/target/debug/deps/libbytes-f60c5f60586b21ed.rmeta
T

1910 lines
572 KiB
Plaintext
Raw Normal View History

rust
#rustc 1.96.0 (ac68faa20 2026-05-25)ÁíàÄTËŸ ÜJîÄ)'ß\¥!-3d1337db07d0b3aeÁ¤²XctÔ'ÐÓ©z¨ɽÓ-a4945860e1c53b00Á¤°ð ¾ä-±($²ï=©Ã-7e98a21bfd32b0edÁÀ뉊]!ÜÛê(¹Þ—šên-5be7b69c3ff7b5b8ÁòÖÀH•‘PIÓHã#£-055f30b747f859b6Árustc_std_workspace_coreÁ­Cçß^ò½èÝ$­Çÿ+Cé-c4878ee60b2242c9ÁŸÃï+Ñ]ŠqB<ÏïW#-8dd1dd90e70d0b6aÁ miniz_oxideÁ€š»J(P>àö÷g\K-1eb618da2918ab7fÁadler2ÁÆ;+Þ®5¥Ìýݰ¦ÛLˆ-f7919172d268e069Á hashbrownÁPäV9ÒÆèÜ"ÊÖVŽ\-0fc2184a5da6723aÁrustc_std_workspace_allocÁs&ØòØy¯s•bæ!‰ýŠ-97e4bf30be240674Á
std_detectÁhŠBîÙºÌI®ËÅš-9dbbf8346ba7ac8bÁrustc_demangleÁûë9´Ç×@Œ’ùXFº-f33013f239bf9f14Ácfg_ifÁÜLhž§Œaã¯>­-0a71c8f33a838301Á addr2lineÁ׎Þ!]8V$É@@-e618e6be60e87ba2ÁgimliÁ¸
°µ~Î1‹Ñt ðÁ€w-1f7768a68858f670ÁobjectÁ
áPÃ?­À¶¼QHJ¥-914cd6a4dbe590d1ÁmemchrÁ›º«8Ór­2Ù $¨ûib-cf21ca6f2bb15dcdÁë
‹ás«LÖ€îâƒ×ɯŒ-ee6f3747e38367f0Á£ptr_mapÁ<»íµ $±í£fuzzÁ$ýô$ëôœ PTR_WIDTHÁL®!û32ÁÜŠ!œtestsÁ,•‘$Š‘œã$Æß$´ß AtomicPtrÁL¤»extra-platformsÁÜÝ AtomicUsizeÁ\¯»å"®»å7ç$‰serdeÁ,í»Ç ŒÕí¤ÀbufÁbuf_implÁ 
  
buf_try_get_implÁ buf_get_implÁ sign_extendÁBufÁ remainingÁchunkÁchunks_vectoredÁ'aÁadvanceÁ
has_remainingÁ
copy_to_sliceÁ! get_u8Áget_i8Áget_u16Á
get_u16_leÁ
get_u16_neÁget_i16Á
get_i16_leÁ
get_i16_neÁget_u32Á
get_u32_leÁ
get_u32_neÁget_i32Á
get_i32_leÁ
get_i32_neÁget_u64Á
get_u64_leÁ
get_u64_neÁget_i64Á
get_i64_leÁ
get_i64_neÁget_u128Á get_u128_leÁ get_u128_neÁget_i128Á get_i128_leÁ get_i128_neÁget_uintÁ get_uint_leÁ get_uint_neÁget_intÁ
get_int_leÁ
get_int_neÁget_f32Á
get_f32_leÁ
get_f32_neÁget_f64Á
get_f64_leÁ
get_f64_neÁtry_copy_to_sliceÁ
try_get_u8Á
try_get_i8Á try_get_u16Átry_get_u16_leÁtry_get_u16_neÁ try_get_i16Átry_get_i16_leÁtry_get_i16_neÁ try_get_u32Átry_get_u32_leÁtry_get_u32_neÁ try_get_i32Átry_get_i32_leÁtry_get_i32_neÁ try_get_u64Átry_get_u64_leÁtry_get_u64_neÁ try_get_i64Átry_get_i64_leÁtry_get_i64_neÁ try_get_u128Átry_get_u128_leÁtry_get_u128_neÁ try_get_i128Átry_get_i128_leÁtry_get_i128_neÁ try_get_uintÁtry_get_uint_leÁtry_get_uint_neÁ try_get_intÁtry_get_int_leÁtry_get_int_neÁ try_get_f32Átry_get_f32_leÁtry_get_f32_neÁ try_get_f64Átry_get_f64_leÁtry_get_f64_neÁ
copy_to_bytesÁptakeÁchainÁs¦readerÁderef_forward_bufÁw¥y¥{Ÿ {¯ {Ú {ü ¥Ÿ ¯ Ú _assert_trait_objectÁbuf_mutÁ 
  
BufMutÁ
remaining_mutÁ advance_mutÁhas_remaining_mutÁ chunk_mutÁputÁž¥ put_sliceÁ put_bytesÁput_u8Áput_i8Áput_u16Á
put_u16_leÁ
put_u16_neÁput_i16Á
put_i16_leÁ
put_i16_neÁput_u32Á
put_u32_leÁ
put_u32_neÁput_i32Á
put_i32_leÁ
put_i32_neÁput_u64Á
put_u64_leÁ
put_u64_neÁput_i64Á
put_i64_leÁ
put_i64_neÁput_u128Á put_u128_leÁ put_u128_neÁput_i128Á put_i128_leÁ put_i128_neÁput_uintÁ put_uint_leÁ put_uint_neÁput_intÁ
put_int_leÁ
put_int_neÁput_f32Á
put_f32_leÁ
put_f32_neÁput_f64Á
put_f64_leÁ
put_f64_neÁlimitÁwriterÁ chain_mutÁʦderef_forward_bufmutÁͥϥÑÑÑÑæÑÑÇ×Ñ×׿××ÇÝÑÝæÝÝ£á¥ÝÝÇ¿­ææææææææî¥î¦îæ î first_refÁî first_mutÁîlast_refÁîlast_mutÁî
into_innerÁæ÷¥÷¦÷Ÿ ÷¯ ÷Ú ÷» ýÑ ÷Šæ¥¦Ñææ¥¦IntoIterÁêùŒŒŽ¥Žæ Žó"Žget_refÁŽget_mutÁŒ¥ó  size_hintÁŒ¥áæ Ÿ¥¡¥¡ó"¡Õ$¡ä$¡á¡ set_limitÁ¨¥¨Ñ¨¨æÀ­­­­­æ ²­´´Õ$´ä$´ó"­¹¹readÁ­¼¼fill_bufÁ¼consumeÁ¢ÀÀÀÀæ Ä¥ÀÆ¥Æó"ÆÕ$Æä$ÆáÆ&Àͥ͟ ͯ ÍÚ ÍŠÍ» ÓÑ ÓLENÁÓ Ó  uninit_sliceÁØØØØØØØØØØ Ø
Ø UninitSliceÁä
äˆØçæ çuninitÁç
uninit_refÁçfrom_raw_parts_mutÁëÑ ç
write_byteÁçcopy_from_sliceÁîç
as_mut_ptrÁças_uninit_slice_mutÁçØóרõÑ õ÷ØøÑ ø÷Ø
impl_indexÁ vec_dequeÁüüüüŸ ¯ » ƒÑ Ú îæ Õ$ä$ó"writeÁflushÁ bytesÁ££££££££££ £
£ £ £
££££££££££££££££££BytesÁõ ÃÃdataÁÃvtableÁ£VtableÁȃÈinto_vecÁÈinto_mutÁÈ is_uniqueÁÈã£Îæ ÏEMPTYÁÎ from_staticÁÎnew_empty_with_ptrÁÎ
from_ownerÁÓ¥ÎÎis_emptyÁÎé/ÎÄ*ΞÙimpl RangeBounds<usize>ÁÎ slice_refÁÎ split_offÁÎsplit_toÁÎtruncateÁÎclearÁÎ try_into_mutÁÎ with_vtableÁÎas_sliceÁÎ inc_startÁÎdata_mutÁä £££èã£êƒ£ìŸ ì¯ ìÚ ìŠ£ñåñ´£ôÉ£ö§÷£ ùborrowÁ£
ûû”$ûê£ ÿÑ ÿÿ”$ÿê£ ù¥£
£ï
£££Ž£ï
££ï
££˜ï
£š£œï
£ž£ ï
£¢£¤ï
£¦£¨ï
£ª£ ¬ï
£!®£"°ï
£#²£$´ï
£%Ñ ¥£&ºÑ º¥ºï
£'¾>£(À÷£)Â÷£*Ä÷£+Æ÷Ç £,É÷£-Ë÷£.Í÷£/Ï×£
STATIC_VTABLEÁ£ static_cloneÁ£
static_to_vecÁ£
static_to_mutÁ£static_is_uniqueÁ£ static_dropÁ£OwnedÁ×¥×ref_cntÁ×ownerÁ£0Û¥ÛVTABLEÁ£ owned_cloneÁÞ¥£ owned_to_vecÁॣ owned_to_mutÁ⥣owned_is_uniqueÁ£owned_drop_implÁ奣
owned_dropÁ祣PROMOTABLE_EVEN_VTABLEÁ£PROMOTABLE_ODD_VTABLEÁ£promotable_even_cloneÁë £promotable_to_vecÁ£promotable_to_mutÁ£promotable_even_to_vecÁï ð £promotable_even_to_mutÁò ó £promotable_even_dropÁõ £promotable_odd_cloneÁ£promotable_odd_to_vecÁø £promotable_odd_to_mutÁú £promotable_odd_dropÁ£promotable_is_uniqueÁ£free_boxed_sliceÁ£SharedÁÿ
ÿcapÁÿ¾9£1ƒ init_to_rawÁ£2㣠£
SHARED_VTABLEÁ£KIND_ARCÁ£KIND_VECÁ£ KIND_MASKÁ£ shared_cloneÁ£shared_to_vec_implÁ£
shared_to_vecÁ£shared_to_mut_implÁ£
shared_to_mutÁ£shared_is_uniqueÁ£ shared_dropÁ£shallow_clone_arcÁ£shallow_clone_vecÁ£release_sharedÁ£Æ£without_provenanceÁ£_split_to_must_useÁ£_split_off_must_useÁ bytes_mutÁœœœœœœœœœœ œ
œ œ œ
œœœœœœœœœœœœœœœœœœœ œ!œ"œ#œ$œBytesMutÁµ ÂÂÝ>™/œÇ>ÇÁÇoriginal_capacity_reprÁÇ ref_countÁœËõ>œÍ œ¶?œÆ?œÖ?œMAX_ORIGINAL_CAPACITY_WIDTHÁœMIN_ORIGINAL_CAPACITY_WIDTHÁœORIGINAL_CAPACITY_MASKÁœORIGINAL_CAPACITY_OFFSETÁœVEC_POS_OFFSETÁœ MAX_VEC_POSÁœNOT_VEC_POS_MASKÁœýœÚ
with_capacityÁÚæ ÚÚë0ÚcapacityÁÚòÚzeroedÁÚÃ1ÚsplitÁÚÔ1Úä1Úô1ÚresizeÁÚset_lenÁÚreserveÁÚ
reserve_innerÁÚ try_reclaimÁÚextend_from_sliceÁÚextend_from_withinÁí"impl core::ops::RangeBounds<usize>ÁÚunsplitÁÚfrom_vecÁÚ¨2Ú as_slice_mutÁÚadvance_uncheckedÁÚ try_unsplitÁÚÚpromote_to_sharedÁÚ
shallow_cloneÁÚ get_vec_posÁÚ set_vec_posÁÚspare_capacity_mutÁœûãœýŸ ý¯ ýÚ ýŠœÑæ£¥ÇœŠÉœŒåŒ´œas_mutÁœœ Ñ ÷œ
Ñ ÷œ ÷œ œ
ï
œŸœœ¢>œ¤§¥œ§ã3œ©
borrow_mutÁœ«ñ«ïœ®ƒœ°°”$°êœ´Ñ ´´”$´êœ¹extendÁº¥œ¼Ñ ¼¶N¾¥œÀ¶NÁ¥œÃùÄ¥œÆÑ ÆùÈ¥œincrement_sharedÁœ¶AœÌé/œoriginal_capacity_to_reprÁœoriginal_capacity_from_reprÁœœœ Òœ!Ôï
œ"Öœ#Øï
œ$Úœ%Üï
œ&Þœ'àï
œ(âœ)äï
œ*æœ+èï
œ,êœ-ìï
œ.îœ/ðï
œ0òÑ ò¥òœ1öÑ ö¥öï
œ2úœ3üï
œ4þœ5ï
œ6œ7œ8÷œvptrÁœ invalid_ptrÁ¥œ rebuild_vecÁœ¡?œshared_v_cloneÁœshared_v_to_vecÁœshared_v_to_mutÁœshared_v_is_uniqueÁœ
shared_v_dropÁœöAœBœ_split_must_useÁ×fmt_implÁ ×hexÁ¢¢¢¢¢¢¢¢¢¢¬×¢®×BytesRefÁ°
°Ñ °ˆloomÁ´çµatomicÁ AtomicMutÁ»¥»with_mutÁ½½£À¥À…W£saturating_sub_usize_u64Á
min_u64_usizeÁrangeÁÊíHÊÍ×Ð÷
panic_advanceÁpanic_does_not_fitÁ% % ÔSIZEÁÔ × Ô & & ÚöXÚ Ý Ú ' ' àöXà ã à ( ( æöXæ é æ ) ) ìöXì ï ì * * òöXò õ ò + + øöXø û ø , , þöXþ  þ - - öX   . . ŠöXŠ  Š / / öX   0 0 öX   1 1 œöXœ Ÿ œ 2 2 ¢öX¢ ¥ ¢ 3 3 ¨öX¨ « ¨ 4 4 ®öX® ± ® 5 5 ´öX´ · ´ 6 6 ºöXº ½ º 7 7 ÀöXÀ à À 8 8 ÆöXÆ É Æ 9 9 ÌöXÌ Ï Ì : : ÒöXÒ Õ Ò ; ; ØöXØ Û Ø < < ÞöXÞ á Þ = = äöXä > > èöXè LöXL í L MöXM ñ M NöXN õ N OöXO ù O PöXP ý P QöXQ  Q RöXR  R SöXS  S TöXT  T UöXU  U VöXV  V WöXW  W XöXX  X YöXY ¡ Y ZöXZ ¥ Z [öX[ © [ \öX\ ­ \ ]öX] ± ] ^öX^ µ ^ _öX_ ¹ _ `öX` ½ ` aöXa Á a böXb Å b cöXc É c döXd eöXe göXg höXh wŸ w¯ w» Ö 'bÁwÚ wè wü w w¡ w® w¼ wÍ wÞ wì wý wŽ
wœ
w­
w¾
wÌ
wÝ
wî
wü
wwžw¬w½wÎwÝwïwww¢w´wÃwÕwçwõwww¥wwÇwÕwæw÷ww w±wÃwØwíwÿww©w»wÐwåw÷wŒw¡w³wÈwÝwïwww¬wÂwØwëwwwªwÀwÖwèwýww¤w¹wÎwàwõwŠyŸ y¯ y» «
¥cyÚ yè yü y y¡ y® y¼ yÍ yÞ yì yý yŽ
yœ
y­
y¾
yÌ
yÝ
yî
yü
yyžy¬y½yÎyÝyïyyy¢y´yÃyÕyçyõyyy¥yyÇyÕyæy÷yy y±yÃyØyíyÿyy©y»yÐyåy÷yŒy¡y³yÈyÝyïyyy¬yÂyØyëyyyªyÀyÖyèyýyy¤y¹yÎyàyõyŠÍÑÍÍæÍÍØÍæÍô̓ÍͧÍÍÈÍÚÍéÍûÍͮ͜ÍÀÍÏÍáÍóÍÍÏÑÏÏæÏÏØÏæÏôσÏϧÏÏÈÏÚÏéÏûÏϜϮÏÀÏÏÏáÏóÏÏæChainÁ® ¥® ¦® ¬® ­æ³ ¥³ ¦³ ׌”$· ¥· innerÁŒº ¥º ×LimitÁ½ ¥½ ”p½ áÁ ¥Á ×­ReaderÁÄ Ä 
­Ç Ç ×ÀTakeÁÊ ¥Ê ”pÊ áÀÎ ¥Î ×ØÑ °Ñ ÖØÔ ×ØÖ °Ö ÖØÙ ×ØÛ °Û ÖØ Þ ×Ø
à °à ÖØ ã ר å °å ÖØ
è ×Øê °ê ÖØí ×WriterÁï ï 
ò ò ×õ ×÷ ×¢ù ×¢û ×¢ý ×¢ÿ × TryGetErrorÁ  requestedÁ  availableÁ ×  Ö




!
!
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
w
{
|
}
~



ƒ


š

œ

ž
 
 
¡
¢
£
¤
¥
¦
§
¨
©
ª
«
¬
­
®
¯
°
±
²
³
´
µ

·
¸
¹
º
»
¼
½
¾
¿
À
Á
Â
Ã
Ä
Å
Æ
Ç
Í
Ñ
Ò
Ó
Ô
Õ
Õ
Ö
×
Ø
Ù
Ú
Û
Û
Ü
Þ
ß
à
á
ã
ã
ä
å
ò
ó
ô
õ
ú
û
ü
ý
ÿ
ƒ





˜
¤
¥
¦
§
ª
«
¬

·
»
»
¾
¿
É
Ê
Ë
Ì
Ï
Ð
Ñ
Ò
Ó
è
é
ê
í
î
î
ð
ñ
ò
ô
ô
ô


ƒ






È
È
Õ
Ö
×
Ø
Ù
Û
Û
Ü
Ý
Þ
ß
â
ã
ä
é
ë
í
î
ï
ð
ó
õ
÷
÷
ú
ˆ
ˆ
Š
Š
Œ
Œ
















Ÿ
Ÿ
¡
¡
£
£
¥
¥
§
§
©
©
«
«
­
­
®
¯
¯
°
±
±
²
³
³
´
µ
µ
¹
¹
½
½
Ð
Ð
Ð
Ò
Õ
Þ
ä
ë
÷
ý




Ý
Þ
ß
â
ã
ä
å
æ
ç
è
é
ê
ë
ì
ì
í
ï
ñ
ò
ó
ô
õ
ö
÷
ø
ù
ú
ü
þ
ÿ


ƒ



ˆ
ˆ


Ž


œ
œ
ž
ž
 
 
¥
¥
¨
ª
¬
¬
­
­
¯
º
¾
Á
Í
Ó
Ó
Õ
Õ
×
×
Ù
Ù
Û
Û
Ý
Ý
ß
ß
á
á
ã
ã
å
å
ç
ç
é
é
ë
ë
í
í
ï
ï
ñ
ñ
õ
õ
ù
ù
ú
û
û
ü
ý
ý
þ
ÿ
ÿ



ƒ
ƒ




 
¡
¡
¡
¬
­
­
­
®
¯
¯
¯
½
½
Â
Â
Î
Î
Î
Ò
Ô
Õ
Ö
Ø
Ù
Ú
Ú
Û
Ü
Ý
Þ
ß
à
á
â
ã
ä
å
æ
ç
è
é
ê
ë
ì
í
î
ï
ð
ñ
ò
ó
ô
õ
ö
÷
ø
ù
ú
û
ü
ý
þ
ÿ




ƒ




ˆ

Š

Œ

Ž









˜

š

œ

ž
Ÿ
 
¡
¢
£
¤
¥
¦
§
¨
©
ª
«
­
®
¯
¯
°
±
²
³
´
µ

·
¸
¹
º
»
¼
½
¾
¿
À
Á
Â
Ã
Ä
Å
Æ
Ç
È
É
Ê
Ë
Ì
Í
Î
Ï
Ð
Ñ
Ò
Ó
Ô
Õ
Ö
Ö
×
Ø
Ù
Ú
Û
Ü
Ý
Þ
ß
à
á
â
ã
ä
å
æ
ç
è
é
ê
ë
ì
í
î
ï
ð
ñ
ò
ó
ô
õ
ö
÷
ø
ù
ú
û
ü
ý
þ
ÿ




ƒ




ˆ

Š

Œ

Ž









˜


š

œ

ž
Ÿ
 
¡
¢
£
¤
¥
¦
§
¨
©
ª
«
¬
­



¼
¼
¼
Ã
Ã
Ã
É
É
É
Ð
Ð
Ð
Ó
Õ
Ø
Ú
Ý
ß
â
ä
ç
é
ì
î
ô
ô
ô
ö
ö
ö
ø
ø
ø
ú
ú
ú
ü
ü
ü
þ
þ
þ






ˆ
ˆ
Š
» 8¥žBoxÁ¡ˆˆ¢ˆl }.xÏ¥çEçEèEGlobalÁ ¿±‡§í# 8
öJöJCursorÁøJ”pÅùJposÁÅÞÀ6Ì¿­Ë’ø‘Š’ 8ˆ“ 8
ÑÛÑÛ MaybeUninitÁÓÛð)ÝÔÛ»ÝÍõƒ«%9ªBªBö­B
÷<®B÷<9)
-ÜnLÑ’¿c® ® ºo± ¬æ² ­ævêÿeH­nûË’¦ª•ª•ÇLª•¿c· · ”$¹ ”pŒ—)jå<Ë’ùM•–ÃM•–¿c½ ½ ¶p¿ ”pÀ á¯0§Å^_Ë’ä–¿cÄ Ä ðpÆ 
­k¿à§cC+à ´—µ!´—¿cÊ Ê £qÌ ”pÀÍ áÀé¬èe’ÕGË’…˜¿cääåÃ)æˆØ 3Ë´lf;Xé Ñ Ô˜ Ñ ˆ“é Ñ Ù¢Ô˜££¹ƒ£¹„£þ-'ºˆÉ¬g³"Ԙř٢Ԙ—£—£»™£¹< =áï_å³"Ô˜›šÙ¢Ô˜î¢î¢ï¢½ +¢ L;V³"Ô˜çšÙ¢Ô˜½£½£¾¿£¹À£þÁ£ exhaustedÁ1¥œMu7·P³"Ô˜«›Ù¢Ô˜«£«£Ã­£þôÉûT™gö³"Ô˜šœÙ¢Ô˜УУÄÒ£þ…K~)+ÄÒž³"Ԙ期(Ÿ(VecDequeÁ¢(headÁ$£($¤(
$C¯\j Õ­çÑ’¿cï ï ¨sñ 
Þ£6ÎÆ—â—Ÿ!ŒžÌìÃÃü.ĵ £Å£Æ™/£Ç¥/£î ”«ó0…` ÑžŒ"ÑžØÑžÑžé!ÑžàÑžˆ“šeÑž Ñžˆ“ÇLÑžÇL Ñ ÑžÃLÑžµßўўíßўўºÑžÑžµßÑžˆ“íßÑžˆ“µßˆ“Ñží߈“ÑžµßÑžíßÑžµßÑžíßÑžµßÑžâ”íßў┵ßâ”Ñžíßâ”ÑžµßÑžúHúHßûHÁ‘4Ý­f‰úM÷íßÑž§¢µß§¢Ñžíß§¢Ñžµßƒ“Ñží߃“Ñžµß 8Ñžíß­£ÑžµßÑž Ñ ý‘íßÑžÕ£³ÑžéÑž ˆ“éÑž éÑžâ”éÑžž˜‘¡ˆˆ¢ˆl }.xψ“Ñ’éÂÂôCõ œÄœÅÝ>œÆ™/œGî—y™ï¼ÑžéÑž§¢éâ”Ñž¿cÈȳ/ɃÊÉ/ËÙ/Ìé/Íã1v<œƒ QŒ"ÿÿÇ>
£Ý>£¾9£Õ ã»Ñ~,æŒ"…¥…¥…¥à…¥ˆ“é!…¥ã…¥ˆ“ö!…¥é…¥ Ñ ˆ“é…¥ Ñ éÑž…¥µß…¥…¥íß…¥…¥º…¥…¥³…¥še…¥ …¥ˆ“£…¥ˆ“êb…¥Ø…¥ÇL…¥ÇL Ñ …¥ÐL…¥ÐL…¥ Ñ ÐL…¥ÑžÃL…¥ÃL…¥ß©Ìì…¥ …¥µß…¥ˆ“íß…¥ˆ“µßˆ“…¥í߈“…¥µß…¥íß…¥µß…¥íß…¥µß…¥â”íß…¥â”µßâ”…¥íßâ”…¥µß…¥§¢íß…¥§¢µß§¢…¥íß§¢…¥µß…¥Õ£íß…¥Õ£µßƒ“…¥í߃“…¥µß­£…¥íß­£…¥µßÑž…¥µß…¥Ñžéâ”…¥¿c°°±’V³ˆ ¡‹Óøçx«8¿cÑž¿c…¥Êcº­Ìcº­ÊcÑžÊc…¥ÌcÑžÌc…¥»¤]¤]V¦]Á‚]üß3ø¤”& Ë’Ë’¿c  ¨t »tƒ Ìtè™eÂK·ìÐìޝµßޝޝޝÄcޝ¾ޝéßßErrorÁà ¬
ÑøÿËO Ÿޝw
y{
öJ÷® ÍÊ Ÿ(ìÃýÂÍ
ÏÑ
×
ݪB€® ¨½ ³ ® º · Á ½ Ç Ä Î Ê óäò ï ÏÈ °õ Ã÷   ® ûÃÿ
°Â´
· · ¹Ä ¼Ä õ
ø
ÀÃÂÃÄÃÆÃÉÂËÃͪB“ÂÂêBÐßÑ äÖ äÛ äà äå äê äÔ äÙ äÞ äã äè äí äï æÃÐÂçÃÑÂèÃÿûÂêîÂñÃŒÂôÊÂöäÂùçÂÃÃÂÆÂÃŽÃڞâªB¦ÃªúH®
²
ÃÂÒÂÖ ÚÂÞâÂæªBêÂîúHòÂú
þ
à Ãà ˜Ãœ Ã¤ªB¨Ã¬úH°
´
ºÃÂÔÂØ ÜÂàäÂèªBìÂðúHöÂü

ßÂá  ¾Ã¢Â©«¹¼ÂÀ¬°ù Ãû ®°ý Ãÿ ÂÀ¤]†  Í Ï  £8¿c 2ÇLTùMÃMà µ!éÙ¢^³"*Ÿ!*Ìì Œ"Øé!àše ÃLµßíß©º³ãö!£êbÐLÊcÌc»ÐìÄc¾à

Ð
À&ø1Ö(' Ç ÖØ'29=ÖSIZEÁ ð  ÖÙ'29=ÖSIZEÁà

лº!ø1Ü(' Ç ÜÞ'29=ÜSIZEÁ ð  Üß'29=ÜSIZEÁà

лº!ø1â(' Ç âä'29=âSIZEÁ ð  âå'29=âSIZEÁà

Ð
À&ø1è(' Ç èê'29=èSIZEÁ ð  èë'29=èSIZEÁà

ЈÁ!ø1î(' Ç îð'29=îSIZEÁ ð  îñ'29=îSIZEÁà

ЈÁ!ø1ô(' Ç ôö'29=ôSIZEÁ ð  ô÷'29=ôSIZEÁà

Ð
À&ø1ú(' Ç úü'29=úSIZEÁ ð  úý'29=úSIZEÁà!™

Ð!™ÕÇ!ø!…1(!' '29=SIZEÁ ƒ'29=SIZEÁà#™

Ð#™ÕÇ!ø#…1(#' ˆ'29=SIZEÁ '29=SIZEÁà%™

Ð%™
À&ø%…1Œ(%' ŒŽ'29=ŒSIZEÁ Œ'29=ŒSIZEÁà'™

Ð'™¢Î!ø'…1('' '29=SIZEÁ '29=SIZEÁà)™

Ð)™¢Î!ø)…1˜()' ˜š'29=˜SIZEÁ ˜'29=˜SIZEÁà+™

Ð+™
À&ø+…1ž(+' ž '29=žSIZEÁ ž¡'29=žSIZEÁà-™

Ð-™ïÔ!ø-…1¤(-' ¤¦'29=¤SIZEÁ ¤§'29=¤SIZEÁà/™

Ð/™ïÔ!ø/…1ª(/' ª¬'29=ªSIZEÁ ª­'29=ªSIZEÁà1™

Ð1™
À&ø1…1°(1' °²'29=°SIZEÁ °³'29=°SIZEÁà3™

Ð3™¼Û!ø3…1(3' ¸'29=SIZEÁ ¹'29=SIZEÁà5™

Ð5™¼Û!ø5…1¼(5' ¼¾'29=¼SIZEÁ ¼¿'29=¼SIZEÁà7™

Ð7™
À&ø7…1Â(7' ÂÄ'29=ÂSIZEÁ ÂÅ'29=ÂSIZEÁà9™

Ð9™‰â!ø9…1È(9' ÈÊ'29=ÈSIZEÁ ÈË'29=ÈSIZEÁà;™

Ð;™‰â!ø;…1Î(;' ÎÐ'29=ÎSIZEÁ ÎÑ'29=ÎSIZEÁà=™

Ð=™
À&ø=…1Ô(=' ÔÖ'29=ÔSIZEÁ Ô×'29=ÔSIZEÁà?™

Ð?™Öè!ø?…1Ú(?' ÚÜ'29=ÚSIZEÁ ÚÝ'29=ÚSIZEÁàA™

ÐA™Öè!øA…1à(A' àâ'29=àSIZEÁ àã'29=àSIZEÁàC‡

ÐC‡ïÔ!øCó1æ(Cÿ' æç'29=æSIZEÁàEÇ 

ÐEÇ ïÔ!øE³ 1ê(E¿ ' E
 êë'29=êSIZEÁàH™

ÐH™»º!øH…1ì(H' ìî'29=ìSIZEÁ ìï'29=ìSIZEÁàI™

ÐI™»º!øI…1ð(I' ðò'29=ðSIZEÁ ðó'29=ðSIZEÁàJ™

ÐJ™»º!øJ…1ô(J' ôö'29=ôSIZEÁ ô÷'29=ôSIZEÁàK™

ÐK™ˆÁ!øK…1ø(K' øú'29=øSIZEÁ øû'29=øSIZEÁàL™

ÐL™ˆÁ!øL…1ü(L' üþ'29=üSIZEÁ üÿ'29=üSIZEÁàM™

ÐM™ˆÁ!øM…1(M'  '29=SIZEÁ ƒ '29=SIZEÁàN™

ÐN™ÕÇ!øN…1(N' '29=SIZEÁ '29=SIZEÁàO™

ÐO™ÕÇ!øO…1ˆ (O' ˆ Š '29=ˆ SIZEÁ ˆ  '29=ˆ SIZEÁàP™

ÐP™ÕÇ!øP…1Œ (P' Œ Ž '29=Œ SIZEÁ Œ  '29=Œ SIZEÁàQ™

ÐQ™¢Î!øQ…1 (Q'   '29= SIZEÁ  '29= SIZEÁàR™

ÐR™¢Î!øR…1(R'  '29=SIZEÁ '29=SIZEÁàS™

ÐS™¢Î!øS…1˜ (S' ˜ š '29=˜ SIZEÁ ˜  '29=˜ SIZEÁàT™

ÐT™ïÔ!øT…1œ (T' œ ž '29=œ SIZEÁ œ Ÿ '29=œ SIZEÁàU™

ÐU™ïÔ!øU…1  (U'   ¢ '29=  SIZEÁ   £ '29=  SIZEÁàV™

ÐV™ïÔ!øV…1¤ (V' ¤ ¦ '29=¤ SIZEÁ ¤ § '29=¤ SIZEÁàW™

ÐW™¼Û!øW…1¨ (W' ¨ ª '29=¨ SIZEÁ ¨ « '29=¨ SIZEÁàX™

ÐX™¼Û!øX…1¬ (X' ¬ ® '29=¬ SIZEÁ ¬ ¯ '29=¬ SIZEÁàY™

ÐY™¼Û!øY…1° (Y' ° ² '29=° SIZEÁ ° ³ '29=° SIZEÁàZ™

ÐZ™‰â!øZ…1´ (Z' ´ '29=´ SIZEÁ ´ · '29=´ SIZEÁà[™

Ð[™‰â!ø[…1¸ ([' ¸ º '29=¸ SIZEÁ ¸ » '29=¸ SIZEÁà\™

Ð\™‰â!ø\…1¼ (\' ¼ ¾ '29=¼ SIZEÁ ¼ ¿ '29=¼ SIZEÁà]™

Ð]™Öè!ø]…1À (]' À Â '29=À SIZEÁ À Ã '29=À SIZEÁà^™

Ð^™Öè!ø^…1Ä (^' Ä Æ '29=Ä SIZEÁ Ä Ç '29=Ä SIZEÁà_™

Ð_™Öè!ø_…1È (_' È Ê '29=È SIZEÁ È Ë '29=È SIZEÁà`‡

Ð`‡ïÔ!ø`ó1Ì (`ÿ' Ì Í '29=Ì SIZEÁàaÇ 

ÐaÇ ïÔ!øa³ 1Î (a¿ ' a
 Î Ï '29=Î SIZEÁàc‡

Ðc‡¼Û!øcó1Ð (cÿ' Ð Ñ '29=Ð SIZEÁàdÇ 

ÐdÇ ¼Û!ød³ 1Ò (d¿ ' d
 Ò Ó '29=Ò SIZEÁ16ÁLENÁLENÁÌõ*
 ”õ*
Ñ,ˆ+Ð ˆ“5”+ÏüÆ)ÎÑž$Ü)LТ­è*Ð 4AN¢­ ê*ÌÓ*Т­,à*˜®˜®š®é*˜®¯G% ÖäИ®ÿš®bt§0,§0
$4­0
„t4D­0 ´0\È0,È0
$Î0
Ús4,Î0 Ò0üç0|ö0
lö0
²*7
>tç0
Ò]N_ …1tœ1  Ñ €¦'  4 üŽ0§ à ´1 º1 »1ÑüÍ/î Ñž$ÿ/¢­,æ/ Ê¢­Ë¢­Š¤]¤]V¦]Á‚]üß3ø¤”& w©´w²²'€¦l1²:Ô-¹#Ñ€¦8@Ñ€¦}ŒÑ²©€¦¹ŽÑ€¦DÜSêSÕü±S9,ÌS Ñž,ÂS 0DþUlþU ŠV‘VÖüÏUB$ïU¬¶,åUr3dõí 
Ò ü³سÑžl‘î 
Ó©´سâ”l®î 
Ô©´س…¥„Ìî 
Õ‹¸\èî 
Ö©´سüáí È õî üÃí´Ñ€¦4Øí†¸jÀ¸9ñ¸¢¹éιÅT„¡õ 
ÞË’†¸ŒÅõ 
àË’À¸Œêõ 
âË’ñ¸|ö 
䢹|¯ö 
çË’ιü‰õ¼ È Äö üòôÔÝ€¦4€õ†¸5À¸ñ¸÷¢¹×ι¼Sö¬ üì6ü̬'6ìÕ¬ÌÕ¬
¼Õ¬
ÊÖ¦-: ñ¬Xl |
EWüѬ! Ѭ' (M¹dˆr}$#3ž¥{ _ }Á0b0Á0b1Á0b1ÁÔ ü¡6ͬ¾üª''ì³̳
¼³
ÊÇÇÇ>ÈÁœÉ´DœÊÒDœ†µšÔÒÍQmy Ϫ º
DVü¯! ¯% 'KbÎp{``o”Áš¡{ _ }Á0b0Á0b1Á0b1Á17Á
10Á0b11100Áäût‰ Ö@- —Õ<ÖV'—ÕaÖüà8מ+žÖ|—ÕµÖ—ÕÌÖ0b11111Á@64Á´’ äå%Ô˜19@œµ °±'°°±’V³ˆ ¡‹Óøçx«c¢­kr£œ´ÇÈÉÊÒÓ í¤À ·¡Ã¢ü.,‰ÃÅôCDªÂÆü¦0üð1. Provides abstractions for working with bytes.Á¢úü¦A> The `bytes` crate provides an efficient byte buffer structureÁüè2/ ([`Bytes`]) and traits for working with bufferÁü›*' implementations ([`Buf`], [`BufMut`]).ÁÆú
# `Bytes`ÁØúüÜMJ `Bytes` is an efficient container for storing and operating on contiguousÁüªNK slices of memory. It is intended for use primarily in networking code, butÁüù.+ could have applications elsewhere as well.Á¨úü¬PM `Bytes` values facilitate zero-copy network programming by allowing multipleÁüýNK `Bytes` objects to point to the same underlying memory. This is managed byÁüÌPM using a reference count to track when the memory is no longer needed and canÁl
be freed.Á«úü¯YV A `Bytes` handle can be created directly from an existing byte store (such as `&[u8]`Áü‰MJ or `Vec<u8>`), but usually a `BytesMut` is used first and written to. ForÁd× example:Áäú ```rustÁüô" use bytes::{BytesMut, BufMut};Áúü› 0- let mut buf = BytesMut::with_capacity(1024);ÁüÌ ! buf.put(&b"hello world"[..]);Á´î  buf.put_u16(1234);Á
úĉ
 let a = buf.split();矢
.+ assert_eq!(a, b"hello world\x04\xD2"[..]);ÁÑ
úüÕ
# buf.put(&b"goodbye world"[..]);Áù
úÄý
 let b = buf.split();Áü– (% assert_eq!(b, b"goodbye world"[..]);Á¿ úüà $! assert_eq!(buf.capacity(), 998);Á  ```Áð úüô PM In the above example, only a single buffer of 1024 is allocated. The handlesÁüÅ NK `a` and `b` will share the underlying buffer and maintain indices trackingÁü”
74 the view into the buffer represented by the handle.ÁÌ
úüÐ
41 See the [struct docs](`Bytes`) for more details.Áú¬‰ # `Buf`, `BufMut`ÁŸúü£MJ These two traits provide read and write access to buffers. The underlyingÁüñMJ storage may or may not be in contiguous memory. For example, `Bytes` is aÁü¿NK buffer that guarantees contiguous memory, but a [rope] stores the bytes inÁüŽMJ disjoint chunks. `Buf` and `BufMut` maintain cursors tracking the currentÁüÜPM position in the underlying byte storage. When bytes are read or written, theÁ¼­ cursor is advanced.ÁÅúüÉ?< [rope]: https://en.wikipedia.org/wiki/Rope_(data_structure)Áúü'$ ## Relation with `Read` and `Write`Áµúü¹C@ At first glance, it may seem that `Buf` and `BufMut` overlap inÁüýNK functionality with [`std::io::Read`] and [`std::io::Write`]. However, theyÁüÌJG serve different purposes. A buffer is the value that is provided as anÁü—LI argument to `Read::read` and `Write::write`. `Read` and `Write` may thenÁüäNK perform a syscall, which has the potential of failing. Operations on `Buf`Áü³  and `BufMut` are infallible.Áüs ü•"|Y£œ´ÇÈÉÊÒÓ íÏ ¤Ð ÀÏ  Î ¡ÃÍ ¢ü.Ì ÃÅôCË ÂÆJ
M
P
”ÕG
„‚<
\•ü'$ Utilities for working with buffers.Á(úü,NK A buffer is any structure that contains a sequence of bytes. The bytes mayÁü{OL or may not be stored in contiguous memory. This module contains traits usedÁüËPM to abstract over buffers as well as utilities for working with buffer types.Áœú¬ ¹ÚúüºNK These are the two foundational traits for abstractly working with buffers.Áü‰OL They can be thought as iterators for byte structures. They offer additionalÁüÙNK performance over `Iterator` by providing an API optimized for byte slices.Á¨úü¬0- See [`Buf`] and [`BufMut`] for more details.ÁÝúüá?ÇÞæŒ­ÀØü éÃ4…ºo,¢® ˜”$D½· ¶p,ܽ š£q$÷Ê Ã)\™äœðp4ÖÄ ž¨s4æï ŸÀ4)­ðp41Ä  ž¢$KÀ ºo,Q®  ˜£q$XÊ 
÷Wlƒ ÉØWÄ’ ÈÀXl¹ ÒÔX”È Ó¨t\Ü IoSliceÁ<æL˜‘¬TóõåçT>ÖØÈʸ,{§©˜š,±~oq„‡]ŒžO첄¿ Ð â  Ö õ, ×8thisÁ& Ü8¼$ â, ä8typÁå& è8¯é'ë, í8convÁ& ò8¯ó*÷ ú î
 û í
28,…8öX$& 8¬, 8í$™'8íŸ'¢8š'« ­, ®8¢ï¯ ² ³ ´% µ8À, Ã8óî È8Ÿ  Ò Ó Õ8öX Ü ê88ñ ô ß8¨t  Þ 8»tL“& œ8öX$ ¢8ÌtL´& ½, ¿8óî Ä8Ÿ  Î Ï$ Ð% à8½8retÁÁ Å, Ç8óî Ù8¯  ß à î8getÁï ò ù!ó8öX 8؈  Ð Œ8srcÁ 8"4  Ï, 8¢ïœ'Ÿ, ¡8Ðï ¦ Í
§ ¨ Ì 8àô©8­
°88 ·8¹
¼8 Ã Ë8 Ä% Å8öX% Ñ8Ü8ß8Û ç ë8¿óè í8¿óï ó ƒ 
, Ê8óî Ï8Ú  × Ü8öX% Ý88«ò ô ø8¿óõ% ù8$…  Š  ç
8Þ 8â 8
æ  ê  ì  ô 7ˆ í % î 8öX% õ , ƒ
8óî$„
 ˆ
8ü l‰

 Ÿ

8˜
8
œ
%  
8
8«É
 Ë
 Ü
, Ì
8¢ïÍ
'Ð
, Ò
8Ðï
 ×
 Û
8
Ø
% Ý
% ï
 õ
 £ 8ö
*ù
, ü
8óî
& 8¼, $ , 8¢ïŠ & 8¯Ž $ , 8 len_to_readÁ\“ & ž 8 *¥  ¨  ® ©  ­,8 8öX & ½ 8¬,¿  Å 8í 'Ë 8íÍ 'Ð 8š 'Ù  Û , Ü 8¢ïÝ  à  á  â % ã 8
8
8



 ¡
7ˆ š
%
8öX$
% ¢
8­
8subsliceÁ
 º
8
8
Â
 Å
8ä$
 Í
 Ü
!Î
, Ð
8Þû
 Þ
 Ì
8Û
 ð
 ù
8¢þ
*û
8¢þ
$ 8©$”*8ÔX”œ ® Á8öX$ ³, µ8Þû$ Â% Í, Ø8óî Ý8÷ŒÞ ï ø8¢þ- ù% ú84„8«  ¦, Ž8¢ï'8
from_le_bytesÁl” ¡ ¥8
¢% §% ¯ µ ã8beÁ*¹, ¼8óî& Á8¼$ Ç, É8¢ïÊ& Í8¯Î$ Ð, Ò8Þû& Þ8*å è ß é Þ,88öX& ý8¬,ÿ 8í$‡'8í'8š<' , œ8¢ï   ¡ ¢% £8®8slice_atÁ »88öX Ç8 checked_subÁ Ó à, Ô8Þû â Ð
8Û ô ý8Ú„*ÿ8Ú„D‚$ Š8©$˜*8ÔX”  ² Å8öX$ ·, ¹8Þû$ Æ% Ñ8Ü8à8
ä è ê ò7ˆ ë% ì8öX% ó, ý8óî 8÷Œƒ  © 88
š  ¨8Ú„!¦- ª% «88«¼ ¾ ×, ¿8¢ïÀ'Ã8
from_be_bytesÁ Ò Ö8
Ó% Ø% àÌå ÿ º   ¤, 8óî$‡& 8¼$ , 8¢ï& 8¯˜'š, œ8Ðï$& ¡8¯¢*¦ © © ª ¨8 » ä¼8Ù
„¿ Ï Ð ã, Ñ8óî$ Ö, Ø8¢ïÙ'Ü, Þ8Ðï å æ ô8unwrap_or_elseÁ ƒ ¡ 8errorÁ,… Š8ÀX    š8ÀŒ,›% ¢% ª ° Þ8±*´, ·8óî$¸& ¼8¼$ Â, Ä8¢ïÅ& È8¯É$ Ë, Í8Þû& Ù8*à ã ð ä ï8 õ «ö8Ù
„ù  Š ª
8*Ž, 8óî$’$ , ˜8¢ï$ œ, ž8Þû ¬ ­ »8“Œ Ê è Ë8ÀŒ Ñ8ÀX à ç á8ÀŒ% é% ñ ÷ ¥8…‚ø*û, þ8óî$ÿ& ƒ8¼,„$ , 8¢ïŒ& 8¯$ , 8Þû\•&  8*§ ª · « 8 ¼ ò½8Ù
„À Ð Ñ ñ
8…‚Ò*Õ, Ø8óî$ Ý, ß8¢ïà$ ã, å8Þû ó ô 8“Œ  ¯ 8ÀŒ,“ ˜8ÀX § ® ¨8ÀŒ% °% ¸üí.
¹ünbytesÁ4†l†ìà Read bytes from a buffer.ÁáúüåMJ A buffer stores bytes in memory such that read operations are infallible.Áü³PM The underlying storage may or may not be in contiguous memory. A `Buf` valueÁü„GD is a cursor into the buffer. Reading from `Buf` advances the cursorÁüÌPM position. It can be thought of as an efficient `Iterator` for collections ofÁT bytes.Á¨úü¬$! The simplest `Buf` is a `&[u8]`.ÁÑúÔ×œÝ use bytes::Buf;Áñúüõ&# let mut buf = &b"hello world"[..];Áœúü # assert_eq!(b'h', buf.get_u8());ÁüÄ# assert_eq!(b'e', buf.get_u8());Áüè# assert_eq!(b'l', buf.get_u8());ÁŒúÔ let mut rest = [0; 8];Áü«! buf.copy_to_slice(&mut rest);ÁÍúüÑ,) assert_eq!(&rest[..], &b"lo world"[..]);ÁÔ×Îìü†ë¥¨¨  !#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnoprsu !#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnoprsuW,XE2^K8d%Q>j+WDp1]J7c$P=i*VCo0\Iu6b#O<h)UBn/[H5aN;g(TAm.ZGs4`!M:f'S@l-YFr3_ L9e&R?kìý$üšKH Returns the number of bytes between the current position and the end ofÁ the buffer.Áþúü† KH This value is greater than or equal to the length of the slice returnedÁŒÖ  by `chunk()`.Áì ú # ExamplesÁ‡!ú<!Ôל›!‚™³!úü»!&«™æ!úüî!$! assert_eq!(buf.remaining(), 11);Á—"úŒŸ" buf.get_u8();Áµ"úü½"$! assert_eq!(buf.remaining(), 10);Á<æ"Ô×ò"ú¼ú" # Implementer notesÁ#úüž#KH Implementations of `remaining` should ensure that the return value doesÁüî#LI not change unless a call is made to `advance` or any other function thatÁü¿$96 is documented to change the `Buf`'s current position.ÁL€%   ° Š%
°$%̘.ü %LI Returns a slice starting at the current position and of length between 0Áüñ%MJ and `Buf::remaining()`. Note that this *can* return a shorter slice (thisÁüÃ&30 allows non-continuous internal representation).Áû&úüƒ'GD This is a lower level function. Most operations are done with otherÁtÏ' functions.Áâ'útê'ä¢ý'ú<…(Ôל‘(‚™©(úü±(&«™Ü(úüä(1. assert_eq!(buf.chunk(), &b"hello world"[..]);Áš)úœ¢) buf.advance(6);Áº)úüÂ)+( assert_eq!(buf.chunk(), &b"world"[..]);Á<ò)Ô×þ)ú¼†**úüª*FC This function should never panic. `chunk()` should return an emptyÁüõ*EB slice **if and only if** `remaining()` returns 0. In other words,Áü¿+FC `chunk()` returning an empty slice implies that `remaining()` willÁüŠ,FC return 0 and `remaining()` returning 0 implies that `chunk()` willÁÔÕ, return an empty slice.Á,.Œ  Œ ° Œ ˆ“ ¡.
°$¢.üÎ9Bü·.EB Fills `dst` with potentially multiple slices starting at `self`'sÁ¬/ current position.Á/úü£/PM If the `Buf` is backed by disjoint slices of bytes, `chunk_vectored` enablesÁüø/GD fetching more than one slice at once. `dst` is a slice of `IoSlice`Á
æLæLçLÚíéLˆ¦ —óë@M$Tá9
°$é9dstÁï9"$üÕB"üå;*' Advance the internal cursor of the BufÁ”<úüœ<GD The next call to `chunk()` will return a slice starting `cnt` bytesÁüè<'$ further into the underlying buffer.Á”=útœ=䢯=ú<·=ÔלÃ=‚™Û=úüã=&«™Ž>úü–>1¡«Ì>úœÔ>ç«ì>úüô>+¬<¤?Ô×°?úd¸? # PanicsÁÉ?úüÑ?<9 This function **may** panic if `cnt > self.remaining()`.Á@ú¼š@@úü¾@IF It is recommended for implementations of `advance` to panic if `cnt >ÁüŒAJG self.remaining()`. If the implementation does not panic, the call mustÁüÛA+( behave as if `cnt == self.remaining()`.ÁBúü“B=: A call with `cnt == 0` should never panic and be a no-op.Á<ØBŽ  Ž ° àB
°$åBcntÁëBüïEüýB74 Returns true if there are any more bytes to consumeÁ¹CúüÁC2/ This is equivalent to `self.remaining() != 0`.ÁøCút€D䢓Dú<›DÔל§D‚™¿DúäÇD let mut buf = &b"a"[..];ÁèDúüðD! assert!(buf.has_remaining());ÁEúŒžE¤´Eúü¼E" assert!(!buf.has_remaining());Á<ãEÔ×lòE   ° €F
°$FüîJ+ü¹F(% Copies bytes from `self` into `dst`.ÁæFúüîFJG The cursor is advanced by the number of bytes copied. `self` must haveÁü½G)& enough remaining bytes to fill `dst`.ÁëGútóG䢆Hú<ŽHÔלšH‚™²HúüºH&«™ÌåH let mut dst = [0; 5];ÁƒIúü‹I  buf.copy_to_slice(&mut dst);Áü°I$! assert_eq!(&b"hello"[..], &dst);ÁüÙI# assert_eq!(6, buf.remaining());Á<JÔ×Júd•J⿦Júü®J;8 This function panics if `self.remaining() < dst.len()`.ÁlñJ    °  ˆ“ ÿJ
!°$„KżŠK<ÜK!<closure_kind>Á"<closure_signature>Á"<upvars>Á""!"°ޝÔˆOü‡L/, Gets an unsigned 8 bit integer from `self`.Á»LúüÃL*' The current position is advanced by 1.ÁòLútúLä¢Mú<•MÔל¡M‚™¹MúüÁM%" let mut buf = &b"\x08 hello"[..];ÁüëM  assert_eq!(8, buf.get_u8());Á<NÔלNúd¤N⿵Núü½NFC This function panics if there is no more remaining data in `self`.Á4O   ° ’O
#°$—OÔ–Tü˜Q,) Gets a signed 8 bit integer from `self`.ÁÉQúüÑQ*ê΀RútˆRä¢Rú<£RÔל¯R‚™ÇRúüÏR%éÏüùR  assert_eq!(8, buf.get_i8());Á<žSÔתSúd²Sâ¿ÃSúüËSFôÐ4™T   °  T
$°$¥TäÕYü­VIF Gets an unsigned 16 bit integer from `self` in big-endian byte order.ÁûVúüƒW*' The current position is advanced by 2.Á²WútºWä¢ÍWú<ÕWÔלáW‚™ùWúüX)& let mut buf = &b"\x08\x09 hello"[..];Áü¯X&# assert_eq!(0x0809, buf.get_u16());Á<ÚXÔ׿XúdîXâ¿ÿXúü‡YIF This function panics if there is not enough remaining data in `self`.Á<ØY   ° àY
%°$åYüÞ]ü°ZLI Gets an unsigned 16 bit integer from `self` in little-endian byte order.Á[úü‰[*àÕ¸[útÀ[ä¢Ó[ú<Û[Ôלç[‚™ÿ[úü‡\)& let mut buf = &b"\x09\x08 hello"[..];Áüµ\)& assert_eq!(0x0809, buf.get_u16_le());Á<ã\Ô×ï\úd÷\⿈]
­k¿à§cC+°á¯,ÃÄ
u°$•ÄôóÄŒ€Å ’Å …• ˜Å ™Å*›Å žÅ ‚•ç+ ¨Å ©Å °Å8Ý4ªÅ8 ºÅ8Ÿ L½Å ÆÅ ÌÅ ÇÅ8$ÈÅ(ÎÅ8¬,ÑÅ ×Å ‚Æ åÅ ìÅ
æÅ
çÅ8$èÅ íÅ8Ÿ LîÅ ÷Å øÅ+ Æ ŽÆ •Æ8Ý4Æ8 ŸÆ8¯ ,¢Æ §Æ ­Æ ¨Æ8$©Æ(¯Æ ²Æ ³Æ ¶Æ8È´Æ ¸Æ ߯ ÆÆ ÍÆ
ÇÆ
ÈÆ8$ÉÆ ÎÆ8¯ ,ÏÆ ÔÆ ÕÆ+ êÆ ëÆ €Ç8âìÆ ïÆ ÿÆ8»<ðÆ øÆ7À,úÆ+ ŠÇ ‹Ç ’Ç8Ý4ŒÇ8 œÇ8» |ŸÇ ®Ç:¥c¯Ç ±Ç ²Ç ÔÇ  ³Ç:¥c´Ç8$·Ç$ »Ç8ż½Ç& ÀÇ ÂÇ8ÃÇ ÇÇ ÓÇ8Úí<ÈÇ ÏÇ:¥cÐÇ ÒÇ(ÖÇ8¬,ÙÇ ßÇ “È íÇ ôÇ
îÇ
ïÇ8$ðÇ õÇ8» |öÇ …È ‰È8ż†È+ žÈ ŸÈ ¦È8Ý4 È8 °È8Ú <³È ºÈ ÐÈ »È8¼È8$ÀÈ$ ÄÈ8èÃÆÈ& ÉÈ8¬,ËÈ ÒÈ þÈ àÈ çÈ
áÈ
âÈ8$ãÈ èÈ8Ú <éÈ ðÈ ôÈ8èÃñÈ+ ‰É ŠÉ ‘É8Ý4‹É8 ›É8è lžÉ «É ±É ¬É8$­É(³É8º$¶É »É êÉ ÉÉ ÐÉ
ÊÉ
ËÉ8$ÌÉ ÑÉ8è lÒÉ ßÉ àÉ+ õÉ öÉ ýÉ8Ý4÷É8 ‡Ê8ü lŠÊ —Ê ±Ê  ˜Ê8™Ê8$Ê$ ¡Ê8ż£Ê& ¦Ê ¨Ê8©Ê ­Ê °Ê8È®Ê ³Ê åÊ ÁÊ ÈÊ
ÂÊ
ÃÊ8$ÄÊ ÉÊ8ü lÊÊ ×Ê ÛÊ8żØÊ+ ðÊ ñÊ øÊ8Ý4òÊ8 ‚Ë8 4…Ë ‹Ë •Ë ŒË8Ë8$‘Ë(—Ë8ÈšË Ë ÅË «Ë ²Ë
¬Ë
­Ë8$®Ë ³Ë8 4´Ë ºË »Ë+ ÐË ÑË ØË8Ý4ÒË8 âË8¡ 4åË ëË õË ìË8íË8$ñË(÷Ë8úË ýË ¥Ì ‹Ì ’Ì
ŒÌ
Ì8$ŽÌ “Ì8¡ 4”Ì šÌ ›Ì+ °Ì ±Ì ¸Ì8Ý4²Ì8 ÂÌ8® <ÅÌ ÌÌ ÖÌ ÍÌ8ÎÌ8$ÒÌ(ØÌ8ÎÛÌ ßÌ ˆÍ íÌ ôÌ
îÌ
ïÌ8$ðÌ õÌ8® <öÌ ýÌ þÌ+ “Í ”Í ›Í8Ý4•Í8 ¥Í8¼ T¨Í ²Í ¼Í ³Í8´Í8$¸Í(¾Í8ÎÁÍ ÅÍ ñÍ ÓÍ ÚÍ
ÔÍ
ÕÍ8$ÖÍ ÛÍ8¼ TÜÍ æÍ çÍ+ üÍ ýÍ „Î8Ý4þÍ8 ŽÎ8Í T‘Î ›Î ¥Î œÎ8Î8$¡Î(§Î8ΪΠ®Î ÚÎ ¼Î ÃÎ
½Î
¾Î8$¿Î ÄÎ8Í TÅÎ ÏÎ ÐÎ+ åÎ æÎ íÎ8Ý4çÎ8 ÷Î8Þ <úÎ Ï ‹Ï ‚Ï8ƒÏ8$‡Ï(Ï8·Ï ”Ï ½Ï ¢Ï ©Ï
£Ï
¤Ï8$¥Ï ªÏ8Þ <«Ï ²Ï ³Ï+ ÈÏ ÉÏ ÐÏ8Ý4ÊÏ8 ÚÏ8ì TÝÏ çÏ ñÏ èÏ8éÏ8$íÏ(óÏ8·öÏ úÏ ¦Ð ˆÐ Ð
‰Ð
ŠÐ8$‹Ð Ð8ì T‘Ð ›Ð œÐ+ ±Ð ²Ð ¹Ð8Ý4³Ð8 ÃÐ8ý TÆÐ ÐÐ ÚÐ ÑÐ8ÒÐ8$ÖÐ(ÜÐ8·ßÐ ãÐ Ñ ñÐ øÐ
òÐ
óÐ8$ôÐ ùÐ8ý TúÐ „Ñ …Ñ+ šÑ ›Ñ ¢Ñ8Ý4œÑ8 ¬Ñ8Ž
<¯Ñ ¶Ñ ÀÑ ·Ñ8¸Ñ8$¼Ñ(ÂÑ8ÔÅÑ ÉÑ òÑ ×Ñ ÞÑ
ØÑ
ÙÑ8$ÚÑ ßÑ8Ž
<àÑ çÑ èÑ+ ýÑ þÑ …Ò8Ý4ÿÑ8 Ò8œ
T’Ò œÒ ¦Ò Ò8žÒ8$¢Ò(¨Ò8Ô«Ò ¯Ò ÛÒ ½Ò ÄÒ
¾Ò
¿Ò8$ÀÒ ÅÒ8œ
TÆÒ ÐÒ ÑÒ+ æÒ çÒ îÒ8Ý4èÒ8 øÒ8­
TûÒ …Ó Ó †Ó8‡Ó8$‹Ó(‘Ó8Ô”Ó ˜Ó ÄÓ ¦Ó ­Ó
§Ó
¨Ó8$©Ó ®Ó8­
T¯Ó ¹
ƒ
ˆ
Š
Œ
Ž
˜
š
œ
ž
Ÿ
 
¡
¢
£
¤
¥
¦
§
¨
 !#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopTŠ
÷ £
ä
ý ê
ƒ
ð œ
Ý
ö ¢
ã
ü ¨
é
Ö
ï
Ü ˆ
õ ¡
â Ž
û §
è
Õ
î š
Û
ô  
á
ú ¦
ç
Ô
í
Ú
ó Ÿ
à Œ
ù ¥
æ
ÿ ì ˜
Ù
ò ž
ß
ø ¤
å
þ ë
Ø
ñ
Þ adüÌ•$¥zzÎìË’ Ñ•Ë’Ô•Š’©
ª
«
­
®
¯
°
±
²
³
´
µ
·
¸
¹
º
»
¼
½
¾
¿
À
Á
Â
Ã
Ä
Å
Æ
Ç
È
É
Ê
Ë
Ì
Í
Î
Ï
Ð
Ñ
Ò
Ó
Ô
Õ
Ö
×
Ø
Ù
Ú
Û
Ü
Ý
Þ
ß
à
á
â
ã
ä
å
æ
ç
è
é
ê
ë
ì
í
î
ï
ð
ñ
ò
ó
ô
õ
ö
÷
ø
ù
ú
û
ü
ý
 !#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopT
â
Ï
û
¼
è
©
Õ
Â
î
¯
Û
È
ô
µ
á
Î
ú
»
ç
Ô
Á
í
®
Ú
Ç
ó
´
à
Í
ù
º
æ
Ó
À
ì
­
Ù
Æ
ò
³
ß
Ì
ø
¹
å
Ò
¿
ë
Ø
Å
ñ
²
Þ
Ë
÷
¸
ä
Ñ
ý
¾
ê
«
×
Ä
ð
±
Ý
Ê
ö
·
ã
Ð
ü
½
é
ª
Ö
Ã
ï
°
Ü
É
õ
ad8â â ƒ“|}~!}|~ä·–Lº–ã  ã ƒ“{ Ä–{
|8$Å–Ä‚—,…—ä  ä ƒ“ ä ˆ“{ ‹—{
}8$Œ—ü×!<Æ—å  å ƒ“{ Η{
~8$Ó—èÃÙ—üÇ™+lÊ™æ ç  æ ƒ“ ç ˆ“{ Ø™{
8$Ý™żã™üœ/»À|‹œ¼…œ¥ÍìË’ ¢œàË’ˆ“\¥œ““ƒƒ<>äáœLäœè  è ““ îœ
Ë’$ïœÄêé  é ““ é ˆ“ ó
ƒË’ü Ÿ!<£Ÿê  ê ““ «Ÿ
Ë’$°ŸèöŸüȤ%¤Ë¤ë  ë ë  ä¤
_bÁà¤åá,ˆºo,® ˜¶p,½ ŠšÃ)\&äœî4]¨s4eï ŽŸÀXlz ÒÔX”‰ Ó¨t\ í·ëµ ¼˜‘ÖöàªB˜T
ûýçéTPÖØÆÈ,rµ·¥§–$°vx,ÇlDÛ]¼‘üçEB A trait for values that provide sequential write access to bytes.Á­úܱ Write bytes to a bufferÁÍúüÑNK A buffer stores bytes in memory such that write operations are infallible.Áü MJ The underlying storage may or may not be in contiguous memory. A `BufMut`ÁüîNK value is a cursor into the buffer. Writing to `BufMut` advances the cursorÁ
position.ÁËúüÏ)& The simplest `BufMut` is a `Vec<u8>`.ÁùúÔ×´… use bytes::BufMut;ÁœúÌ  let mut buf = vec![];Áºúü¾!ÔÔàúüä$! assert_eq!(buf, b"hello world");Á<‰Ôרü‘€–¨¨œž ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊšœž ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊ0­Ã𰯳ɠ£¹¦¼©¿¬Â¯Åœ²Èµ¢¸¥»¨¾«Á®Ä±Çž´Ê¡·¤º§½ªÀüÒ!ü¯DA Returns the number of bytes that can be written from the currentÁüø41 position until the end of the buffer is reached.Á±úü¹Kꡬ‰ by `chunk_mut()`.Á£úü«HE Writing to a `BufMut` may involve allocating more memory on the fly.ÁüøJG Implementations may fail before reaching the number of bytes indicatedÁüÇ ;8 by this method if they encounter an allocation failure.Á
út
䢢
ú
Ô×´¶
žÿÑ
úÔÙ
 let mut dst = [0; 10];Áüø
 let mut buf = &mut dst[..];Áœ úü¤ 1. let original_remaining = buf.remaining_mut();ÁÜÚ  buf.put(&b"hello"[..]);Áú úü‚ <9 assert_eq!(original_remaining - 5, buf.remaining_mut());Á Ô×Ï ú¼× î¤ó úüû JG Implementations of `remaining_mut` should ensure that the return valueÁüÊ
GD does not change unless a call is made to `advance_mut` or any otherÁü–JG function that is documented to change the `BufMut`'s current position.Áåú # NoteÁüúü„IF `remaining_mut` may return value smaller than actual available space.ÁlÕì  ì ° ã
š°üÃ-üù-* Advance the internal cursor of the BufMutÁ«úü³IF The next call to `chunk_mut` will return a slice starting `cnt` bytesÁü'ó½­ú # SafetyÁÆúüÎC@ The caller must ensure that the next `cnt` bytes of `chunk` areÁ„–
initialized.Á«ú䢯úÔ×´Úžÿõúüý)& let mut buf = Vec::with_capacity(16);Á«ú´³ // Write some dataÁüÎ1. buf.chunk_mut()[0..2].copy_from_slice(b"he");Áü„" unsafe { buf.advance_mut(2) };Á«ú¼³ // write more bytesÁüÏ2/ buf.chunk_mut()[0..3].copy_from_slice(b"llo");ÁúüŽ" unsafe { buf.advance_mut(3); }Áµúì½ assert_eq!(5, buf.len());Áôß assert_eq!(buf, b"hello");Á<Ô׎úd–â¿§úü¯@= This function **may** panic if `cnt > self.remaining_mut()`.Áôú¼üúü FC It is recommended for implementations of `advance_mut` to panic ifÁüëGD `cnt > self.remaining_mut()`. If the implementation does not panic,Áü·=: the call must behave as if `cnt == self.remaining_mut()`.Áùúü=×Âí  í ° Ù
°èÃäüµ#üö<9 Returns true if there is space in `self` for more bytes.Á·úü¿63 This is equivalent to `self.remaining_mut() != 0`.Áúút‚ä¢ú<Ô×´©žÿÄúÌÌÊüêðˆŽúü–%" assert!(buf.has_remaining_mut());ÁÀúÜÈ߉èúüð&# assert!(!buf.has_remaining_mut());Á<Ô׌¸î  î ° Ê
œ°ü™,,ü‡JG Returns a mutable slice starting at the current BufMut position and ofÁüÖ\Y length between 0 and `BufMut::remaining_mut()`. Note that this *can* be shorter than theÁü·NK whole remainder of the buffer (this allows non-continuous implementation).ÁŠ úü’ GÔ©¤ªñ úüù ?< The returned byte slice may represent uninitialized memory.Á½!útÅ!䢨!ú<à!Ô×´ì!žÿ‡"úü")Ú‘½"údÅ" unsafe {ÁüÖ"" // MaybeUninit::as_mut_ptrÁüý"63 buf.chunk_mut()[0..].as_mut_ptr().write(b'h');Áü¸#63 buf.chunk_mut()[1..].as_mut_ptr().write(b'e');Áó#úÜû# buf.advance_mut(2);Á$úü£$63 buf.chunk_mut()[0..].as_mut_ptr().write(b'l');ÁüÞ$63 buf.chunk_mut()[1..].as_mut_ptr().write(b'l');Áü™%63 buf.chunk_mut()[2..].as_mut_ptr().write(b'o');ÁÔ%úÜÜ% buf.advance_mut(3);Á,ü%†&úìŽ&Ê”ô°&ð”<Ó&Ô×ß&ú¼ç&'úü‹'JG This function should never panic. `chunk_mut()` should return an emptyÁüÚ'IF slice **if and only if** `remaining_mut()` returns 0. In other words,Áü¨(NK `chunk_mut()` returning an empty slice implies that `remaining_mut()` willÁüû(NK return 0 and `remaining_mut()` returning 0 implies that `chunk_mut()` willÁÔÎ)µ¯í)úüõ)LI This function may trigger an out-of-memo
Þ£6ÎÆ—°á¯,œ–
ɰ$î•üWüΖA> Creates an adapter which will chain this buffer with another.Á”—úüœ—EB The returned `BufMut` instance will first write to all bytes fromÁüæ—0- `self`. Afterwards, it will write to `next`.Á›˜út£˜ä¢¶˜ú<¾˜Ô״ʘžÿå˜úÌí˜ let mut a = [0u8; 5];ÁÌ‹™ let mut b = [0u8; 6];Á©™úü±™74 let mut chain = (&mut a[..]).chain_mut(&mut b[..]);Áí™úüõ™$! chain.put_slice(b"hello world");Ážšúü¦š! assert_eq!(&a[..], b"hello");ÁüÌš" assert_eq!(&b[..], b" world");Á<óšÔ×L°è•´¦ËË µ š›è•4á¯,Þ›
ʰè•$¥›ó $«›=?ü“œ!¤ œ µœ ¹° »œ ¼œ*¾œ Áœ ¶°+ Ëœ Ìœ Óœ8Ý4Íœ8 Ýœ8Ñlàœ íœ óœ îœ8$ïœ(õœ8¬,øœ þœ ­ Œ 

Ž8$ 8Ñl• ¢ £+ ¸ ¹ À8Ý8 Ê8 Ö à ×8Ø8(â å8æ8Ã) ö ¡ž „ž ‹ž
…ž
†ž8$‡ž Œž8Lž –ž —ž+ ¬ž ­ž ´ž8Ý4®ž8"4¾ž8 Åž8æ\Èž Óž éž Ôž8Õž8$Ùž$ Ýž8èÃßž& âž8¬,äž ëž ›Ÿ ùž €Ÿ
úž
ûž8$üž Ÿ8æ\‚Ÿ Ÿ ‘Ÿ8èÃŽŸ+ ¦Ÿ §Ÿ ®Ÿ8Ý4¨Ÿ8 ¸Ÿ8L»Ÿ ÄŸ ÚŸ ÅŸ8ÆŸ8$ÊŸ$ Ο8àôП& ÓŸ ÕŸ ÖŸ ÙŸ8Èן ÜŸ Š  êŸ ñŸ
ëŸ
ìŸ8$íŸ òŸ8LóŸ üŸ € 8àôýŸ+ •  –   8Ý4— 8 § 8Ø4ª  °  Á  ± 8² 8$¶ $ º 8¹ ¼ & ½ 8È¿  à ì  Ñ  Ø 
Ò 
Ó 8$Ô  Ù 8Ø4Ú  à  â 8¹ á + ÷  ø  ÿ 8Ý4ù 8 ‰¡8æ4Œ¡ ’¡ £¡ “¡8”¡8$˜¡$ œ¡8¹ ž¡& Ÿ¡8¡¡ ¥¡ Ρ ³¡ º¡
´¡
µ¡8$¶¡ »¡8æ4¼¡ ¡ Ä¡8¹ á+ Ù¡ Ú¡ á¡8Ý4Û¡8 ë¡8ô<î¡ õ¡ ‡¢ ö¡8÷¡8$û¡$ ÿ¡8¹ ¢& ‚¢8΄¢ ‰¢ ³¢ —¢ ž¢
˜¢
™¢8$š¢ Ÿ¢8ô< ¢ §¢ ©¢8¹ ¨¢+ ¾¢ ¿¢ Æ¢8Ý4À¢8 Т8ƒTÓ¢ Ý¢ ï¢ Þ¢8ߢ8$ã¢$ ç¢8¹ é¢& ê¢8Îì¢ ñ¢ ž£ ÿ¢ †£
€£
£8$‚£ ‡£8ƒTˆ£ ’£ ”£8¹ “£+ ©£ ª£ ±£8Ý4«£8 »£8T¾£ È£ Ú£ É£8Ê£8$Σ$ Ò£8¹ Ô£& Õ£8Î×£ Ü£ ‰¤ ê£ ñ£
ë£
ì£8$í£ ò£8Tó£ ý£ ÿ£8¹ þ£+ ”¤ •¤ œ¤8Ý4–¤8 ¦¤8§<©¤ °¤ ¤ ±¤8²¤8$¶¤$ º¤8¹ ¼¤& ½¤8·¿¤ Ĥ î¤ Ò¤ Ù¤
Ó¤
Ô¤8$Õ¤ Ú¤8§<Û¤ ⤠ä¤8¹ ã¤+ ù¤ ú¤ ¥8Ý4û¤8 ‹¥8TŽ¥ ˜¥ ª¥ ™¥8š¥8$ž¥$ ¢¥8¹ ¤¥& ¥¥8·§¥ ¬¥ Ù¥ º¥ Á¥
ȴ
¼¥8$½¥ Â¥8TÃ¥ Í¥ Ï¥8¹ Î¥+ ä¥ å¥ ì¥8Ý4æ¥8 ö¥8ÈTù¥ ƒ¦ •¦ „¦8…¦8$‰¦$ ¦8¹ ¦& ¦8·’¦ —¦ Ħ ¥¦ ¬¦
¦¦
§¦8$¨¦ ­¦8ÈT®¦ ¸¦ º¦8¹ ¹¦+ Ϧ Ц צ8Ý4Ѧ8 á¦8Ú<ä¦ ë¦ ý¦ ì¦8í¦8$ñ¦$ õ¦8¹ ÷¦& ø¦8Ôú¦ ÿ¦ ©§ § ”§
ާ
§8$§ •§8Ú<–§ §
ÿ
ƒ ˆ Š Œ Ž š ¢£¤¥¦§¨©ª«¬­®¯°±²³´µ ƒ Ž þ
Œ ÿ
Š ˆ "%ü±1¥ÐÐ¨ê œ±Ë’4Ÿ±Š’ ˜ š œ ž Ÿ   ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ­ š ¢£¤¥¦§¨©ª«¬­®¯°±²³´µ ¡ ¬ ¤ œ § Ÿ ª ¢ ­ š ¥ ¨   « ˜ £ ¦ ž © "%üä± 8

÷“ÒÓÔÕÖš ¡ÒÖÕÓÔü™² lœ²œ
 œ
÷“Ñ ª²Ñ
Ò8$«²üè²+Lë²
 
÷“ 
Ô˜Ñ õ²Ñ
Ó8$ú²üγ,\سž
 ž
÷“Ñ ä³Ñ
Ô8$é³èÃï³üѶ#LÔ¶Ÿ
 
 Ÿ
÷“  
ˆ“Ñ Þ¶Ñ
Õ8$ã¶àôé¶üß¹,L⹡
 ¡
÷“Ñ ì¹Ñ
Ö8$ñ¹¹÷¹èÀºü‡½88¢
¢
ˆ”ØÙÚÛÜš ¡ÛÙÜÚØüÔ½ l×½£
 £
ˆ”× å½×
Ø8$æ½ü£¾+L¦¾¤
 ¤
ˆ” ¤
Ô˜× °¾×
Ù8$µ¾üŒ¿,\–¿¥
 ¥
ˆ”× ¢¿×
Ú8$§¿èí¿üÂ#L’¦
§
 ¦
ˆ” §
ˆ“× œÂ×
Û8$¡Âàô§ÂüôÅ,L÷Ũ
 ¨
ˆ”× Æ×
Ü8$†Æ¹ŒÆèÕÆô§Éâ”Þßàáãäšž ¡áäàÞãßüÚÉ lÝÉ©
 ©
â”Ý ëÉÝ
Þ$ìÉüýÊ,\‡Ëª
 ª
â”Ý “ËÝ
ß$˜ËèÞËü¨Î+L«Î«
 «
â” «
Ô˜Ý µÎÝ
à$ºÎü¤ÓK§Ó¬
 ¬
â”Ë’Ý¥ââ ºÓݵõ «ÓºêT®ÓÍìâ”,éÓ
áË’$¿ÓàôÉÓ;=ü¤Ö#L§Ö­
®
 ­
â” ®
ˆ“Ý ±ÖÝ
ã$¶Öàô¼Öüˆ×,L‹×¯
 ¯
â”Ý •×Ý
ä$š×¹ ×èé×üÇÙ(¤ÊÙ°
 °
°
 ãÙ
åøßÙ® ”$D · æèÃ)\ äæéœ 5 æë¡Ã4: æì¢Úí<i æLæíT |~hj,- WY@B„` *´Ì ¥ï¦ðïðµõ Ñ  µ Ô ª•ñòóôõö"$')ü§, µ ˒蕪•îî
ñ˒蕬 ¹ ­ ¿ ì
üø3 0 Gets a reference to the first underlying `Buf`.Á° ú ä¢Ë ú Ô×œß ‚™÷ úìÿ  let buf = (&b"hello"[..])Áô¡  .chain(&b"world"[..]);ÁÄ úüÌ 2 / assert_eq!(buf.first_ref()[..], b"hello"[..]);Á
Ô×L
±
 ±
ª• ±
Ë’î  
î
òË’è•
ü·
% üÊ
; 8 Gets a mutable reference to the first underlying `Buf`.ÁŠ út’ 䢥 ú Ôל¹ ‚™Ñ úüÙ !  let mut buf = (&b"hello"[..])Áôÿ Ȩ
¢ úüª   buf.first_mut().advance(1);ÁÎ úüÖ $ ! let full = buf.copy_to_bytes(9);Áüÿ ' $ assert_eq!(full, b"elloworld"[..]);Á
Ô×
²
 ²
ª• ²
Ë’î È
î
óË’è•
ä“ üþ
2 / Gets a reference to the last underlying `Buf`.Áµ ú ä¢Ð ú Ô×œä ‚™ü úì„ ¢¨
ô¦ Ȩ
É úüÑ1 . assert_eq!(buf.last_ref()[..], b"world"[..]);Á<‡ Ô× ³
 ³
ª• ³
è•î £ î
ôË’è• ü»$ üÍ: 7 Gets a mutable reference to the last underlying `Buf`.ÁŒ út” 䢧 ú Ôל» ‚™Ó úüÛ"  let mut buf = (&b"hello "[..])Áô‚ Ȩ
¥ úô­  buf.last_mut().advance(1);ÁÐ úüØ% " let full = buf.copy_to_bytes(10);Áü‚( % assert_eq!(full, b"hello orld"[..]);Á Ô× ´
 ´
ª• ´
è•î Ë î
õË’è• üô! ü; 8 Consumes this `Chain`, returning the underlying values.ÁÁ ú ä¢Ü ú Ôל𠂙ˆ úü  let chain = (&b"hello"[..])Áô´ Ȩ
× úüß+ ( let (first, last) = chain.into_inner();Áü( % assert_eq!(first[..], b"hello"[..]);Áü¼' $ assert_eq!(last[..], b"world"[..]);Á Ô× ª•Ë’è•îî
öË’è•$† üº< ¥ø¦ùùøµõ ¿  µ  ºêæ ²µò ª•úûüýÿpüúýûÿRTWYäý L€ µ
 µ
ª•÷ Š ÷
úË’è•$‹ Äå 
 
ª• 
ˆ“÷ î ÷
ûË’è• ü€% <ƒ ·
 ·
ª•÷  ÷
üË’è•$ èÚ ü‰B »À ¼í þ¸
 þª• ¸
æLæLçLÚíéLˆ¦ —óë@M$Tþ÷œ ÷
ýË’è• żª &(üÈ7 lË ¹
 ¹
ª•Ñž÷ Ù ÷
ÿË’è• ä ü‰#L ¥¦µõ •#  µ ˜# ¥’
4¿# úß 4Î# ª•ƒšƒACFHüÜ# lß# º
 º
ª• í# 
ƒË’è•$î# üê$+ Lí$ »
 »
ª• »
Ô˜ ÷$ 
Ë’è•$ü$ ü¤&0 \®& ¼
 ¼
ª• º& 
Ë’è•$¿& èÃÉ& üª)E ¥¦ˆˆµõ ¯)  µ ²) ºêß) ²µë) ª•ŠÈLÉLÊL9;>@Lö) $û) lŠ* D* · · ”$¹ ”pŒ—)jå<ª•ü¶*$ L¹* ª•ª•ÉL
Ë’è•$Ã* DÈ·  
Œ¡T
ρ
¥µõ Ê
•–üŒ#
üß?
< Creates an iterator over the bytes contained by the buffer.Á£
ú
䢾
ú
Ô׬Ò
 use bytes::Bytes;Áì
úüô)
& let buf = Bytes::from_static(b"abc");矢#
let mut iter = buf.into_iter();ÁÊ
úüÒ(
% assert_eq!(iter.next(), Some(b'a'));Áüÿ(
% assert_eq!(iter.next(), Some(b'b'));Áü¬(
% assert_eq!(iter.next(), Some(b'c'));ÁüÙ"
 assert_eq!(iter.next(), None);Á<€
Ô×
Ë’•–ŽŽ
Ë’”p,—
äà
üØ=
: Consumes this `IntoIter`, returning the underlying value.Áš
ú
䢵
ú
ÍÓäÍ
 use bytes::{Buf, Bytes};Áî
úüö'
$ let buf = Bytes::from(&b"abc"[..]);矢 #
ÈÆ
Ê
úüÒ (
Ç
ÿ
úü‡
 let buf = iter.into_inner();Áü¬
#
assert_eq!(2, buf.remaining());Á
Ô×
•–Ë’ŽŽ
Ë’
ÜÉ
ü -
* Gets a reference to the underlying `Buf`.ÁÏ
úü× A
> It is inadvisable to directly read from the underlying `Buf`.Á
ú
䢸
ú
ÍÓäÐ
Ê
ñ
úüù '
ÁÊ
ü¥
#
ÈÆ
Í
úüÕ
(
Ç

úüŠ.
+ assert_eq!(2, iter.get_ref().remaining());Á
Ô×
½
 ½
•– ½
Ë’Ž Ø
Ž
Ë’
üå#
ü†5
2 Gets a mutable reference to the underlying `Buf`.ÁÀ
úüÈA
“Í
Ž
út
䢩
ú
ÍÓüÁ
 use bytes::{Buf, BytesMut};Áå
úüí*
' let buf = BytesMut::from(&b"abc"[..]);Áüœ#
ÈÆ
Ä
úüÌ(
Ç
ù
úô
 iter.get_mut().advance(1);Á¤
úü¬(
åÇ

Ô×
¾
 ¾
•– ¾
Ë’Ž ô
Ž
Ë’
ü¬%
¥µõ ±
ºê´
•–˜úMûMÿM˜-/

üí

¿
 ¿
•–Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ õ

Ë’
ü¿-

À
 À
•–Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ Ì

˜Ë’
ü».
¥ššµõ À
ºêÃ
•–Ÿ½ Ã)\ 䜜Ã4( ¢; ž¼ Hl! 5L5 üô8  Ë’ä–¥  µõ 
ŸË’”p,‰ á,“ „Í ¥¢¢µõ Ò ä–£¤¥¦§ä£ üä: 7 Consumes this `Limit`, returning the underlying value.ÁTª ä–Ë’¡¡
£Ë’ Üå üà0 - Gets a reference to the underlying `BufMut`.Á úüC @ It is inadvisable to directly write to the underlying `BufMut`.Á<ì Á
 Á
ä– Á
Ë’¡ ô ¡
¤Ë’ ü¯# ü¢8 5 Gets a mutable reference to the underlying `BufMut`.Áß úüçC ÎÛ
 Â
 Â
ä– Â
Ë’¡ ¾ ¡
¥Ë’ äÞ üø; 8 Returns the maximum number of bytes that can be writtenÁ¸ ú ŒÏ úü×L I If the inner `BufMut` has fewer bytes than indicated by this method thenÁü¨1 . that is the actual number of available bytes.Á,å Ã
 Ã
ä–¡ ë ¡
¦Ë’ üì
' ü› 9 6 Sets the maximum number of bytes that can be written.ÁÙ ú Œð úüø L I If the inner `BufMut` has fewer bytes than `lim` then that is the actualÁôÉ
 number of available bytes.ÁLó
Ä
 Ä
ä–¡ ý
¡
§Ë’$‚ limÁˆ ü¸ * ¥©©µõ Ä ¥’
ä–ª«¬š¬ª«13üé Å
 Å
ä–¨ ú ¨
ªË’ üÐ + Æ
 Æ
ä– Æ