Files
boc/aamos-ledger-rust/target/debug/deps/libserde_json-6e8a40e7f3a7e75c.rmeta
T

3971 lines
1019 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Á
serde_coreÁ²€Ãb˜cÐòžÇÇ
-7a42419d8e43b208ÁzmijÁ[‰Œ×ªo–ÛX—x iHÞh-d3bb8ac9b6edd7e7ÁitoaÁrLpèòÐ
ݽ‚AéGT'-7ba5a7b63f68a66bÁì­†°<šÒ"®9eæ·3š¶Ø-809318e8f6183885Á'lexicalÁ<»float_roundtripÁÜi'ù$¿»Ž Ü—'NumberDeserializerÁ”½»arbitrary_precisionÁüˆ'if_checking_recursion_limitÁÜÊå»unbounded_depthÁÜŸåäöŒ»preserve_orderÁÔßäíµ»Ç
ÔŽäIndexMapÁDá»Ç
Ô¶äMapImplÁ<¹»Ç
Ô—äVacantEntryImplÁ|»Ç
Ôî”äOccupiedEntryImplÁŒð–»Ç
ÔΖäIterImplÁDÆ÷»Ç
Ô¤÷ä IterMutImplÁ\£ý»Ç
Ôýä IntoIterImplÁdè‚»Ç
ÔÆ‚äKeysImplÁD¤†»Ç
Ô‚†ä
ValuesImplÁT剻Ç
ÔÉä
ValuesMutImplÁl·»Ç
Ô•äIntoValuesImplÁtŠ‘»Ç
Ôèinvalid_numberÁt®§»Ú ü‰§NumberStrEmitterÁ„”õ»Ú üëôserÁón»À|ÜnŒÛn NumberFromStringÁ„Õ»Ú ü 
NumberValueEmitterÁ”ë˜»Ú ü˜
t«™»Ú ü†™èimpÁÁ»À|–Œ•û<Úo»Ž ܸo ErrorCodeÁLp»Ú ü<ToOwnedÁ<¶»Ú üß»Ú üÅToStringÁDƒ»Ú  "„IntoDeserializerÁ„æ»Ú ü´ MapAccessÁLø»Ú !#„TOKENÁ,™»Ú üæŸ »Ú üê NumberKeyÁL€r»Ú ü×qñ„Ãy»Ú ü–ytÞ€»Ú ü¹€¼ ”£¡»Ú üï NumberFieldDeserializerÁ¼ß¦»Ú ü¶¦í¤ÀserdeÁ __privateÁ 
  
triÁmacrosÁ!jsonÁ!
json_internalÁ!json_internal_vecÁ!json_unexpectedÁ!json_expect_expr_commaÁdeÁ'''''''''' '
' ' '
'''''''''''' DeserializerÁA£AreadÁAscratchÁAremaining_depthÁ'F'deÁF£Fæ 'J£J from_readerÁ'M'aÁM
from_sliceÁ'P±Pþ'overflowÁ' ParserNumberÁTF64ÁU
UˆTU64ÁX
XˆTI64Á[
[ˆ'^visitÁ_ø_§^ invalid_typeÁ'cøc£cþcêg¥cpeekÁc peek_or_nullÁceat_charÁc next_charÁcnext_char_or_nullÁcerrorÁc
peek_errorÁcparse_whitespaceÁcpeek_invalid_typeÁcdeserialize_numberÁr'anyÁr§cdo_deserialize_i128ÁuÐu§cdo_deserialize_u128ÁxÐx§cscan_integer128Ác fix_positionÁ| c parse_identÁc
parse_integerÁc parse_numberÁc
parse_decimalÁcparse_exponentÁcf64_from_partsÁcparse_long_integerÁcparse_decimal_overflowÁcparse_exponent_overflowÁcparse_any_signed_numberÁcparse_any_numberÁcparse_object_colonÁcend_seqÁcend_mapÁc ignore_valueÁcignore_integerÁcignore_decimalÁcignore_exponentÁcdeserialize_raw_valueÁ§'þ'POW10Á '·'ø 'check_recursionÁ'šøš£šErrorÁšdeserialize_anyÁž§šdeserialize_boolÁ §šdeserialize_charÁ¢§šdeserialize_strÁ¤§šdeserialize_stringÁ¦§šdeserialize_bytesÁ¨§šdeserialize_byte_bufÁª§šdeserialize_optionÁ¬§šdeserialize_unitÁ®§šdeserialize_unit_structÁ°§šdeserialize_newtype_structÁ²§šdeserialize_seqÁ´§šdeserialize_tupleÁ§šdeserialize_tuple_structÁ¸§šdeserialize_mapÁº§šdeserialize_structÁ¼§šdeserialize_enumÁ¾§šdeserialize_identifierÁÀ§šdeserialize_ignored_anyÁ§' SeqAccessÁıģľÄfirstÁ'ɱɣɿ ' ÍøÍ±Í£ÍèÍnext_element_seedÁÒ¥Òhas_next_elementÁÔøÔ±Ô£'¯Ø±Ø£Ø¾Ø«%'
Ý±Ý£Ýæ ' áøá±á£áèá
next_key_seedÁæœæ has_next_keyÁèøè±è£ánext_value_seedÁì§'
VariantAccessÁî±î£î¾' ò±ò£òæ '
öøö±ö£öèöVariantÁö variant_seedÁü§'þøþ±þ£þèþ unit_variantÁþnewtype_variant_seedÁ¥þ
tuple_variantÁ§þ׈§'UnitVariantAccessÁбУо'ޱޣ޿ 'ø±£è„)“)˜§'šøš±š£šèšÓ)šç) ¥š‹*¢§š×¤§'MapKeyÁ¦±¦£¦¾'deserialize_numeric_keyÁ'«ø«±«£'¯ø¯±¯£¯è¯õ´§¯§¯Ú!¸§¯Ã"º§¯–$¼§¯•!¾§¯¶!À§'StreamDeserializerÁÂøÂ£Â¥Â¾Âž
ÂfailedÁ»
Â'ËøË£Ë¥Ëæ Ë byte_offsetÁËpeek_end_of_valueÁ'ÒøÒ£Ò¥ÒÒó × 'ÙøÙ£Ù¥'
from_traitÁÝøÝ£Ý¥'á£á¥'ºä±ä¥'þç±ç¥ëêêêêêêêêêê ê
ê ê ê
êêêèûerrÁêÍý¥êÿšÿÿclassifyÁÿis_ioÁÿ is_syntaxÁÿis_dataÁÿis_eofÁÿ
io_error_kindÁêˆ÷ê ErrorImplÁŠcodeÁŠšŠêŽMessageÁ
ˆŽIoÁ
ˆŽEofWhileParsingListÁ
ŽEofWhileParsingObjectÁ
ŽEofWhileParsingStringÁ
ŽEofWhileParsingValueÁ
Ž
ExpectedColonÁ
ŽExpectedListCommaOrEndÁŸ
ŽExpectedObjectCommaOrEndÁ¡
ŽExpectedSomeIdentÁ£
ŽExpectedSomeValueÁ¥
ŽExpectedDoubleQuoteÁ§
Ž
InvalidEscapeÁ©
Ž
InvalidNumberÁ«
ŽNumberOutOfRangeÁ­
ŽInvalidUnicodeCodePointÁ¯
Ž"ControlCharacterWhileParsingStringÁ±
ŽKeyMustBeAStringÁ³
ŽExpectedNumericKeyÁµ
ŽFloatKeyMustBeFiniteÁ·
ŽLoneLeadingSurrogateInHexEscapeÁ¹
Ž
TrailingCommaÁ»
ŽTrailingCharactersÁ½
ŽUnexpectedEndOfHexEscapeÁ¿
ŽRecursionLimitExceededÁÁ
êÃsyntaxÁÃioÁÃÈÆêÈ×êÊsourceÁêÌ×êÎ×êÐ×êÒcustomÁÓ¥ÒÜÒ
invalid_valueÁê ×Ç:Ø¥êJsonUnexpectedÁÚ
Ú±Úˆê
Þ±Þ×ê
make_errorÁêparse_line_colÁêstarts_with_digitÁØääääääääää ä
ä ä ä
äääMapÁõœõ§õØä ùœù§äüæ ü
with_capacityÁüclearÁügetÁ¢ü contains_keyÁ¢üget_mutÁ¢ü
get_key_valueÁ¢üinsertÁüremoveÁ¢ü remove_entryÁ¢üappendÁüentryÁޤŽüüis_emptyÁüùüúükeysÁü¼ü
values_mutÁü into_valuesÁüretainÁü sort_keysÁäœ>䞃žä¡ä䤧¥ä§¢§°§Öä«¢«×ä®×ä ° serializeÁ±¤±ä
´ø´ deserializeÁVisitorÁ¸
ºøºValueÁº expectingÁº
visit_unitÁ¾º visit_mapÁÀ§ä ÂùÃ¥ä ÅextendÁÆ¥ädelegate_iteratorÁä
ÉøÉ«Éinto_deserializerÁäÍøÍ«ÍÆCäEntryÁѱÑVacantÁÓ
ÓˆÑOccupiedÁÖ
Öˆä VacantEntryÁÙ±ÙvacantÁä
OccupiedEntryÁܱÜoccupiedÁä´ ß±äÜ á±äã±ãkeyÁã or_insertÁãor_insert_withÁçã
and_modifyÁéäë±ëÌEë´>äï±ïÌEïÑ=ï€>ïinto_mutÁï´>ïÂ>ïØ>äø±øøIntoIterÁøêä ý±äÿ±ÿÿŸGÿêä§ ±äŸGêäË äð ±ä
±ä´
±äÚ
Ò 
  

SerializerÁ¥¨¥¥writerÁ¥ formatterÁª¨ªæ ­±­¨­prettyÁ±¨±±with_formatterÁ±
into_innerÁ±¨«è SerializeSeqÁSerializeTupleÁSerializeTupleStructÁSerializeTupleVariantÁ SerializeMapÁSerializeStructÁSerializeStructVariantÁserialize_boolÁ serialize_i8Á
serialize_i16Á
serialize_i32Á
serialize_i64Áserialize_i128Á serialize_u8Á
serialize_u16Á
serialize_u32Á
serialize_u64Áserialize_u128Á
serialize_f32Á
serialize_f64Áserialize_charÁÐ 
serialize_strÁserialize_bytesÁserialize_unitÁserialize_unit_structÁserialize_unit_variantÁserialize_newtype_structÁ×¥serialize_newtype_variantÁÙ¥serialize_noneÁserialize_someÁÜ¥
serialize_seqÁserialize_tupleÁserialize_tuple_structÁserialize_tuple_variantÁ
serialize_mapÁserialize_structÁserialize_struct_variantÁ collect_strÁå¥ååAdapterÁè'serÁè¨èèÜIèêIèëåïÝRï¨ïïñCompoundÁô±ô¨ôôç<øÒøºôRawValueÁûÒý±ý¨ýý«ýèýserialize_elementÁƒ¥ýþ±¨«è»TŒ¥þ±¨«èserialize_fieldÁ¥þ˜±˜¨˜˜«˜è˜ÖUž¥˜þ¡±¡¨¡¡«¡è¡
serialize_keyÁ§¥¡serialize_valueÁ©¥¡þ ¬±¬¨¬¬«¬è¬ÖU²¥¬þ
µ±µ¨µµ«µèµÖU»¥µþMapKeySerializerÁ¾±¾¨¾¾Òinvalid_raw_valueÁkey_must_be_a_stringÁfloat_key_must_be_finiteÁ Æ±Æ¨ÆÆ«ÆèÆöNÆÕOÆóOÎ¥ÆKƱKÆÇKÆãKÆ€LÆ”LÆ«LÆÉLÆßLÆóLƈMÆMƲMÆÈMÆÜMÆñMƆNÆ›NƱNÆÆNÆÛNä Æ‹OÆ¢OƸOÆ›P饯ÄPÆÚPì¥ÆøPÆQƤQÆÂQÆáQÆöQÆŽRÆ®Rõ¥RawValueStrEmitterÁ÷
÷±÷¨÷÷ˆ ý±ý¨ýý«ýèýKý±KýÇKýãKý€Lý”Lý«LýÉLýßLýóLýˆMýMý²MýÈMýÜMýñMý†Ný›Ný±NýÆNýÛNýöNý‹OýÄPýÚP¥ý¢Oý¸OýÕOýóO ¥ý›P¢¥ýøPýQý¤QýÂQýáQýöQýŽRý®R«¥
CharEscapeÁ­QuoteÁ®
­ReverseSolidusÁ°
­SolidusÁ²
­ BackspaceÁ´
­FormFeedÁ
­LineFeedÁ¸
­CarriageReturnÁº
­TabÁ¼
­ AsciiControlÁ¾
¾ˆˆÁ
write_nullÁ¨Á
write_boolÁĨÁwrite_i8ÁƨÁ write_i16ÁȨÁ write_i32ÁʨÁ write_i64Ą́Á
write_i128ÁΨÁwrite_u8ÁШÁ write_u16ÁÒ¨Á write_u32ÁÔ¨Á write_u64ÁÖ¨Á
write_u128ÁبÁ write_f32ÁÚ¨Á write_f64ÁܨÁwrite_number_strÁÞ¨Á begin_stringÁà¨Á
end_stringÁâ¨Áwrite_string_fragmentÁä¨Áwrite_char_escapeÁæ¨ææ
HEX_DIGITSÁé Áwrite_byte_arrayÁë¨Á begin_arrayÁí¨Á end_arrayÁï¨Ábegin_array_valueÁñ¨Áend_array_valueÁó¨Á begin_objectÁõ¨Á
end_objectÁ÷¨Ábegin_object_keyÁù¨Áend_object_keyÁû¨Ábegin_object_valueÁý¨Áend_object_valueÁÿ¨Áwrite_raw_fragmentÁ¨
±æ  with_indentÁˆ±ˆ>±§f¨Âf¨Ûf¨üf¨›g¨·g¨Ñg¨h¨±h¨format_escaped_strÁŸ¨Ÿformat_escaped_str_contentsÁ¢¨¢BBÁTTÁNNÁFFÁRRÁQUÁBSÁUUÁ__ÁESCAPEÁ®  to_writerÁ°¨°¥to_writer_prettyÁ³¨³¥¥
to_vec_prettyÁ¸¥º¥to_string_prettyÁ¼¥indentÁ¾¨»ÀÀÀÀÀÀÀÀÀÀ À
À À À
ÀÀÀÀÀÀÔ×ÀÖ××WriterFormatterÁرØ'bÁØinnerÁ×ܱÜönÜwriteÁÜflushÁ×io_errorÁ× × À parse_indexÁÀåÑ=æšå€>èšå is_objectÁå as_objectÁå
as_object_mutÁåis_arrayÁåas_arrayÁå as_array_mutÁå is_stringÁåas_strÁå is_numberÁå as_numberÁåis_i64Áåis_u64Áåis_f64Áåas_i64Áåas_u64Áåas_f64Áå
is_booleanÁåas_boolÁåis_nullÁåas_nullÁå þ þ å pointer_mutÁ  åtakeÁåsort_all_objectsÁÀˆ >ÀŠ > DEFAULTÁÀ¾            
     
                  ­ ø­ ÛA¯ ¯  ValueVisitorÁ±
¯ ³ ø³ —B³ ¤B³ 
visit_boolÁ· ³  visit_i64Á¹ ³ 
visit_i128Á» ³  visit_u64Á½ ³ 
visit_u128Á¿ ³  visit_f64ÁÁ ³  visit_strÁÃ ³  visit_stringÁÅ ³ 
visit_noneÁÇ ³ 
visit_someÁÉ ³ µBË ³  visit_seqÁÍ §³ ÏBÏ § Ñ Ñ þ Ô Ô þ ·  visit_arrayÁØ øØ § Û øÛ èÛ õÞ §Û –$à §Û Ü$â § ä øä èä õç §ä Ú!é §ä –$ë §ä Ã"í §ä ï §ä ´ ñ §ä Ô ó §ä ó õ §ä •!÷ §ä ¶!ù §ä ü!û §ä œ"ý §ä í"ÿ §ä Œ#
§ä ­#ƒ
§ä Õ#
§ä ô#
§ä ¶$
§ä Ü$
§ EnumDeserializerÁ
variantÁ
» 
ø
è
„)
“)
§
 
ø
«
ÆC 
ø
«
ÆC VariantDeserializerÁŸ
» ¡
ø¡
è¡
Ó)¡
ç)¥
¥¡
*§
§¡
ש
§ SeqDeserializerÁ«
ù  ­
æ  
¯
ø¯
è¯
ø%²
¥¯
 size_hintÁ MapDeserializerÁµ
ùµ
»  ¸
æ   º
øº
èº
°'½
¥º
ù'¿
¥º
»~ deserialize_value_ref_numberÁ visit_array_refÁÃ
øÃ
§ 
Æ
øÆ
èÆ
õÉ
§Æ
$Ë
§Æ
Ü$Í
§ Ï
øÏ
èÏ
õÒ
§Ï
Ú!Ô
§Ï
$Ö
§Ï
Ã"Ø
§Ï
Ú
§Ï
´ Ü
§Ï
Ô Þ
§Ï
ó à
§Ï
•!â
§Ï
¶!ä
§Ï
ü!æ
§Ï
œ"è
§Ï
í"ê
§Ï
Œ#ì
§Ï
­#î
§Ï
Õ#ð
§Ï
ô#ò
§Ï
¶$ô
§Ï
Ü$ö
§ EnumRefDeserializerÁø
øø
÷{ø
» ü
øü
èü
„)ü
“) §  VariantRefDeserializerÁƒ øƒ »  ø è Ó) ç)Š ¥ ‹*Œ § ׎ § SeqRefDeserializerÁ ø ù  ø æ   ø è ø% ¥ »~ MapRefDeserializerÁœ øœ ùœ »   ø  æ  £ ø£ è£ °'¦ ¥£ ù'¨ ¥£ »~ MapKeyDeserializerÁ« ø« ÌE À, ¯ ø¯ è¯ õ² §¯ ´ §¯ Ú! §¯ Ã"¸ §¯ $º § 
KeyClassifierÁ¼
 KeyClassÁ¾ ç<¿
¿ ˆ¾ öSÂ
 Ä øÄ —BÄ ÛAÇ  É øÉ —BÉ ¤BÉ àvÍ É ùvÏ  Ñ ÜÒ Ñ 
unexpectedÁ BorrowedCowStrDeserializerÁÕ øÕ » Ø øØ æ  Û øÛ èÛ õÞ §Û –$à § â øâ èâ „)â “)æ ¥ UnitOnlyÁè
 ê øê èê Ó)ê ç)î ¥ê ‹*ð §ê ×ò §À÷ô ô ô ô ô ô ô ô ô  from_integerÁô þ ÷ô  ÷ô  ÷ô  ÷ô  ÷ô ˆ ±ˆ ÷ô  ÷ô  ÷ô  ¥ ÷ô   ¥ Ÿ  ÷ ô 
˜ ¥˜ ÷ô   ¥ ù šô  Ÿ œŸ §Ÿ ù¢ š¢ ô 
¥ ÷ô § ¥§ ÷ÀÖª ª ª ª ª ª ª ª ª IndexÁ³ 
index_intoÁ´ 'vÁ³ index_into_mutÁ ³ index_or_insertÁ¸ ª º » º  ½ º ¿¿ ¿ ª  à   Å  ¿Ç ª É Ê É  Ì É ¿Î ª Ð ¥Ð Ò Ð  Ô Ð ¿Ö ª privateÁØ SealedÁØ Ø Ø Ø Ý ¥ª óß
ß ±ß ˆª ã ±ã ת æ šæ °æ Öé NULLÁª ë šë ×À
partial_eqÁî î î eq_i64Áî eq_u64Áî eq_f32Áî eq_f64Áî eq_boolÁî eq_strÁî ÷ î ù î û î ý î ÿ î 
î partialeq_numericÁÀÒ









 


 
 







°A˜
¤˜

ºI


«
è
K
±K
ÇK
ãK
€L
”L
«L
ÉL
ßL
óL
ˆM
M
²M
ÈM
ÜM
ñM
†N
N
±N
ÆN
ÛN
öN
O

¢O
¸O
ÕO
óO»
¥
P½
¥
ÄP
ÚPÀ
¥
øP
Q
¤Q
ÂQ
áQ
öQ
ŽR
®RÉ
¥
 SerializeVecÁË
Á
ãKÍ
Ð Í
Á
€LÐ
ç<Ñ
ØÑ
next_keyÁÐ
öSÔ
 out_valueÁ
«LÖ
Ð Ö
Ø
Ù
«Ù
èÙ
»TÜ
¥Ù
þ
ß
«ß
èß
»Tâ
¥ß
þ
å
«å
èå
ÖUè
¥å
þ
ë
«ë
èë
ÖUî
¥ë
þ
ñ
«ñ
èñ
ïVô
¥ñ
ŒWö
¥ñ
þ
½Xù

ŽY
ªY
ý
«ý
èý
Ký
±Ký
ÇKý
ãKý
€Lý
”Lý
«Lý
ÕOý
óOˆ¥ý
ÉLý
ßLý
óLý
ˆMý
Mý
²Mý
ÈMý
ÜMý
ñMý
†Ný
Ný
±Ný
ÆNý
ÛNý
öNý
Oý
¢Oý
¸Oý
Pœ¥ý
ÄPý
ÚPŸ¥ý
øPý
Qý
¤Qý
ÂQý
áQý
öQý
ŽRý
®R¨¥
ª«ªèªÖU­¥ªþ
 °«°è°ÖU³¥°þ
RawValueEmitterÁ

õX

¹«¹è¹K¹±K¹ÇK¹ãK¹€L¹”L¹«L¹ÉL¹ßL¹óL¹ˆM¹M¹ÈM¹ÜM¹ñM¹†N¹±N¹ÆN¹ÛN¹öN¹‹O¹ÄP¹ÚPÒ¥¹¢O¹¸O¹ÕO¹óO×¥¹›PÙ¥¹øP¹Q¹¤Q¹ÂQ¹áQ¹öQ¹ŽR¹®Râ¥Àto_valueÁä¥À
from_valueÁæ¥á9èèèèèèèèèùòòLineColIteratorÁôšôùôšôcolÁô
start_of_lineÁòúšúæ úšúÀ£ú’/òšó numberÁ 
  
˜§œžºqžÈqžÖqžäqžòqž€ržfrom_f64Ážas_i128Ážas_u128Áž from_i128Áž from_u128Ážas_f32Ážfrom_f32Á¬×®×°°A±¤³ø³ÛAµµ
NumberVisitorÁ·
µ¹ø¹—B¹¤B¹áu½¹úu¿¿ ¹”v¹­vÄÄ ¹ÇvÇÇ õ·ÌøÌè ÏøÏè
Ò÷impl_from_unsignedÁimpl_from_signedÁ Ö¼‰ÅØØØØØØØØØØ Ø
Ø Ø Ø
ØØReadÁèøèó èèdiscardÁèpositionÁè
peek_positionÁè/è parse_strÁð'sÁè
parse_str_rawÁò«è
ignore_strÁèdecode_hex_escapeÁèbegin_raw_bufferingÁèend_raw_bufferingÁ÷§èshould_early_return_if_failedÁè
set_failedÁØPositionÁûšûØÊþönþ'cÁþ¥þBorrowedÁ
ˆþCopiedÁ
ˆØˆönˆƒ­ˆ¥ˆåˆ´ØIoReadÁŽ£ŽùŽchÁŽ
raw_bufferÁØ SliceReadÁ±žÖraw_buffering_start_indexÁØStrReadÁ˜±˜delegateÁ˜dataÁØØ‘œç‘Øž£žæ Ø¡£Ø£££parse_str_bytesÁ¥«¥¥¥Ø©ø©£©ó ©©Àª©Ϫ©ߪ©’/©üª²«©—«´«´ ©µ«©Ç«©à«©û«º§©œ¬©Á¬Ø¾±¾æ ¾position_of_indexÁ¾skip_to_escapeÁÂChunkÁÂSTEPÁ ONE_BYTESÁ¾skip_to_escape_slowÁ¾ó¯Ç«Ç¥ÇÇ'fÁØÌ±ØÎ±Îó ÎÎÀªÎϪÎߪÎ’/ÎüªÖ«Î—«Ø«Ø ε«ÎÇ«Îà«Îû«Þ§Îœ¬ÎÁ¬Øâ±âæ Ø 屨
ç±çó ççÀªçϪçߪç’/çüªï«ï ç—«ò«çµ«çÇ«çà«çû«÷§çœ¬çÁ¬Ø ûøû£Ø þøþ£þó þþÀªþϪþߪþ’/þüª«þ—««þµ«þÇ«þà«þû«Ž§þœ¬þÁ¬ØFusedÁØ
±Ø±Ø is_escapeÁØ next_or_eofÁ˜ø˜£Ø peek_or_eofÁø£Øëžøž£ž¥ØŠq¢ø¢«¢£¢ Ø parse_escapeÁ§ø§£Øparse_unicode_escapeÁªøª£Øpush_wtf8_codepointÁØ
ignore_escapeÁ®ø®£Ødecode_hex_val_slowÁØbuild_hex_tableÁ² ² ØHEX0Áµ ØHEX1Á· Ødecode_four_hex_digitsÁ@ºººººººººº º
º º º
ºººººººººººöSÓÔºÕ
from_borrowedÁÕ
from_ownedÁÕ
into_ownedÁºÙƒºÛOwnedÁÛto_ownedÁºÞ>ºà׺â׺äà’äTRUEÁäFALSEÁä from_stringÁäÑ=ºê÷º to_raw_valueÁ쥺ͺï°A𤺠òøò±òÛAõõReferenceVisitorÁ÷
õùøù—Bù¤BùÏBý§º
ÿøÿÛA BoxedVisitorÁƒ
ø—B¤BÏB§ºRawKeyÁ
º øÛA FieldVisitorÁ
ø—B¤BàvºReferenceFromStringÁ
º ø—BÛAžº
 ø —B ¤B visit_borrowed_strÁ¤ºBoxedFromStringÁ¦
º¨ø¨—B¨ÛA«º­ø­—B­¤B­àv±­ùv³ºRawKeyDeserializerÁµ
º·ø·è·õº§ºOwnedRawDeserializerÁ¼ raw_valueÁº¾ø¾è¾°'Áœ¾ù'çºBorrowedRawDeserializerÁÅøÅæÃºÈøÈèȰ'ËœÈù'ͧºÏøÏ«ÏÆCºÓøÓèÓõÖ§ÓØ§Ódeserialize_i8ÁÚ§Ódeserialize_i16ÁܧÓdeserialize_i32ÁÞ§Ódeserialize_i64Áà§Ódeserialize_i128Áâ§Ódeserialize_u8Áä§Ódeserialize_u16Áæ§Ódeserialize_u32Áè§Ódeserialize_u64Áê§Ódeserialize_u128Áì§Ódeserialize_f32Áî§Ódeserialize_f64Áð§Ó´ ò§ÓÔ ô§Óó ö§Ó•!ø§Ó¶!ú§ÓÚ!ü§Óü!þ§Óœ"§ÓÃ"§Óí"§ÓŒ#§Ó­#ˆ§ÓÕ#ЧÓô#Œ§Ó–$ާӶ$§ÓÜ$§šãÅ§šÆ§š Æ˜§š¿Æš§šþÆœ§šœÇž§š»Ç §šÚÇ¢§š™È¤§š¸È¦§šÞƨ§šùǪ§«·¬§¯ãÅ®§¯Æ°§¯ Æ²§¯¿Æ´§¯ÞƧ¯þƸ§¯œÇº§¯»Ç¼§¯ÚǾ§¯ùÇÀ§¯™È§¯¸Èħ¯´ Ƨ¯Ô ȧ¯ó ʧ¯ü!̧¯œ"Χ¯í"Ч¯Œ#Ò§¯­#Ô§¯Õ#Ö§¯ô#ا¯¶$Ú§¯Ü$ܧêCategoryÁÞÆ3ß
ÞSyntaxÁá
ÞDataÁã
ÞEofÁå
ê ê ê
éƒêêìêîÖêð×äIterÁò±òùäõ±õƒäø±ø×äû±ûûó û»~ä± next_backÁ䃱ƒä±äIterMutÁˆ±ˆùä±×äŽ±ŽŽó Ž»~ä±ÛÑä±ä±äŸGùä ×ä!ŸŸó Ÿ»~ä"£ÛÑä#¥ä$äKeysÁ¨±¨ùä%«±«ƒä&®±®×ä'±±±±ó ±»~ä(±ÛÑä)¹±¹ä*¼±äValuesÁ¾±¾ùä+Á±Áƒä,ıÄ×ä-DZÇÇó Ç»~ä.̱ÌÛÑä/ϱÏä0Ò±ä ValuesMutÁÔ±Ôùä1×±××ä2Ú±ÚÚó Ú»~ä3ß±ßÛÑä4â±âä5å±ä
IntoValuesÁçùä6é×ä7ëëó ë»~ä8ïÛÑä9ñä:StateÁôEmptyÁõ
ôFirstÁ÷
ôRestÁù
ûÖþCompactFormatterÁ
ƒ×>PrettyFormatterÁˆ±ˆcurrent_indentÁˆ has_valueÁˆÁm±ƒ±×À—BNullÁ
X
ˆNumberÁ
ˆßœ
œˆMŸ
ŸˆObjectÁ¢
¢ˆÀ¥ƒÀ§ÖÀÀªÀ ¬§­ùÛ ¯§Û ãű§Û Ƴ§Û  Æµ§Û ¿Æ·§Û ÞÆ¹§Û þÆ»§Û œÇ½§Û »Ç¿§Û ÚÇÁ§Û ùÇÃ§Û ™ÈÅ§Û ¸ÈÇ§Û ´ É§Û Ô Ë§Û ó Í§Û •!Ï§Û ¶!Ñ§Û Ú!Ó§Û ü!Õ§Û œ"×§Û Ã"Ù§Û í"Û§Û Œ#Ý§Û ­#ß§Û Õ#á§Û ô#ã§Û ¶$å§ä ãÅç§ä Æé§ä  Æë§ä ¿Æí§ä ÞÆï§ä þÆñ§ä œÇó§ä »Çõ§ä ÚÇ÷§ä ùÇù§ä ™Èû§ä ¸Èý§Æ
ÿ§Æ
ãŧÆ
ƃ§Æ
 Æ§Æ
¿Æ§Æ
ÞÆ§Æ
þƧÆ
œÇ§Æ
»Ç§Æ
򂤮
ùǧÆ
™È§Æ
¸È§Æ
´ §Æ
Ô §Æ
ó §Æ
•!Ÿ§Æ
¶!¡§Æ
Ú!£§Æ
ü!¥§Æ
œ"§§Æ
Ã"©§Æ
í"«§Æ
Œ#­§Æ
­#¯§Æ
Õ#±§Æ
ô#³§Æ
¶$µ§Ï
ãÅ·§Ï
ƹ§Ï
 Æ»§Ï
¿Æ½§Ï
ÞÆ¿§Ï
þÆÁ§Ï
œÇçÏ
»ÇŧÏ
ÚÇǧÏ
ùÇɧÏ
™È˧Ï
¸Èͧ¯ ãÅϧ¯ ÆÑ§¯  ÆÓ§¯ ¿ÆÕ§¯ þÆ×§¯ œÇÙ§¯ »ÇÛ§¯ ÚÇݧ¯ ™Èß§¯ ¸È᧯ ÞÆã§¯ ùÇ姯 ´ 积 Ô é§¯ ó 맯 •!í§¯ ¶!璘 ü!ñ§¯ œ"ó§¯ í"õ§¯ Œ#÷§¯ ­#ù§¯ Õ#û§¯ ô#ý§¯ ¶$ÿ§¯ Ü$§Û ƒ§Û ãÅ§Û Æ§Û  Æ§Û ¿Æ§Û ÞÆ§Û þÆ§Û œÇ§Û »Ç§Û ÚÇ§Û ùÇ§Û ™È§Û ¸È§Û ´ §Û Ô Ÿ§Û ó ¡§Û •!£§Û ¶!¥§Û Ú!§§Û ü!©§Û œ"«§Û Ã"­§Û í"¯§Û Œ#±§Û ­#³§Û Õ#µ§Û ô#·§Û ¶$¹§Û Ü$»§ô ½÷ô ¿÷ô Á÷ô Ã÷ô Å÷ô Ç÷ô É÷ô Ë÷ô Í÷ô Ï÷î Ñî Óî Õ±Õî  Ø±Øî 
Ûî  Ýî  ß±ßî 
â±âî åî çî é±éî ì±ìî ïî ñî ó±óî ö±öî ùî ûî ý±ýî ±î ƒî î ±î Š±Šî î î  ±î !±î "î #î $±î %ž±žî &¡î '£î (¥±¥î )¨±¨î *«î +­î ,¯±¯î -²±²î .µî /·î 0¹±¹î 1¼±¼î 2¿î 3Áî 4ñÃî 5ƱÆî 6Éî 7Ëî 8ͱÍî 9бÐÛÓ¹ Õƒ
ØÚÖܧÝùŸßPosIntÁà
àˆßNegIntÁã
ãˆßæ
æˆëƒÌõí§ÌãÅï§ÌÆñ§Ì Æó§Ì¿Æõ§ÌÞÆ÷§ÌþÆù§ÌœÇû§Ì»Çý§ÌÚÇÿ§Ìùǧ̙ȃ§Ì¸È§Ì§Ì´ §ÌÔ §Ìó §Ì•!§Ì¶!§ÌÚ!§Ìü!§Ìœ"§ÌÃ"§Ìí"§ÌŒ#§Ì­#Ÿ§ÌÕ#¡§Ìô#£§Ì–$¥§Ì¶$§§ÌÜ$©§Ïõ«§ÏãÅ­§ÏƯ§Ï Æ±§Ï¿Æ³§ÏÞÆµ§ÏþÆ·§ÏœÇ¹§Ï»Ç»§ÏÚǽ§ÏùÇ¿§Ï™ÈÁ§Ï¸ÈçÏŧϴ ǧÏÔ É§Ïó ˧ϕ!ͧ϶!ϧÏÚ!ѧÏü!Ó§Ïœ"Õ§ÏÃ"×§Ïí"Ù§ÏŒ#Û§Ï­#ݧÏÕ#ß§Ïô#á§Ï–$ã§Ï¶$å§ÏÜ$ç§é÷ë÷í÷ï÷ñ÷ó÷õ÷÷÷ù÷û÷·ý§·þÆÿ§·œÇ§·»Çƒ§·Úǧ·ùǧ·ãŧ·Æ§· Æ§·¿Æ§·ÞƧ·™È§·¸È§·´ §·Ô §·ó §·í"§·•!Ÿ§·¶!¡§·Õ#£§·ô#¥§·Ú!§§·ü!©§·Ã"«§·Ü$­§·œ"¯§·­#±§·Œ#³§·–$µ§·¶$·§b
f
i
j
k
l
m
n
o
p
q
q
r
u
x
{
{
|
~
~




ƒ




ˆ

Š

Œ

Ž



š
²
¾
Ò
Ô
æ
è
ì
Ð
Ñ
×



ƒ




É
É
É
Ë
Í
Í
Í
Ï
Ï
Ï
Ñ
Ñ
Ñ
Õ
Õ
Ö
Ö
à
à
à
â
ã
ÿ








ˆ






Ž











Ÿ
 
 
¢
¢
¥
¥
§
ª
ª
«
­
­
¯
¯
¯
±
½
½
½
Æ
å
é
í
ñ
ò
ó
õ
Ò
Ó
×
Ù
Ü
å
ó
ó
ƒ
ƒ
Œ
Œ


ž
ž
§
§
©
©
²
²
»
»
Ì
Î
æ
é
ì
õ
˜


 
¢
«
Â
Â
Ä
Ä
Æ
Æ
È
È
Ê
Ê
Ì
Ì
Î
Î
Ð
Ð
Ò
Ò
Ô
Ô
Ö
Ö
Ø
Ø
Ú
Ú
Ü
Ü
Þ
Þ
Þ
à
à
â
â
ä
ä
ä
æ
æ
ë
ë
ë
í
í
ï
ï
ñ
ñ
ó
ó
õ
õ
÷
÷
ù
ù
û
û
ý
ý
ÿ
ÿ





















Ÿ
Ÿ
Ÿ
¢
¢
¢
°
³

¸
º
¼
¾
¾
Õ
Õ
Õ
×
×
×
ß
ß
à
ä
æ
è
ê
ë
ì
í
î
ï
ð
ñ
ò
ó
ô
õ
ö
÷
ø
ù
ú
û
ü
ý
þ
þ




Š



Ã
Ó
Ö
²
´
½
¿
Á


¦
¨
ª
Ì
Ì
Ì
Í
Ò
Ò
Ô
à


˜
š
´

¸
»
½
¿
Ã
Å
Ç
Ê
Ì
Î
Ð
Ò
Ô
Ö
Ý
å
å
å
é
í
ñ
ò
ó
ô
õ
ö
ö
ø
ø
ù
ú
ú
ú
ü
ü
ý
þ
þ




˜
µ

»
½
À
É
Ü
Ü
â
â
è
è
î
î
ô
ô
ö
ö
ˆ
˜

œ
Ÿ
¨
­
­
³
³
Ï
Ð
Ò
×
Ù
â
ý
þ
ÿ
ƒ


œ
œ
Ÿ
 
¡
¢
£
¤
¦
§
ª
­
­
­
¯
¯
¯
±
¼
¼
¼
Ï
×
ê
ë
ì
í
î
ï
ô
õ
ö
÷
ú
ú

¬
­
®
¯
°
±
·
¸
¹
º
½
½
Á
Â
Æ
Ð
Ñ
Ò
Ó
Ô
Õ
Û
Ü
Ý
Þ
á
á
é
ê
ë
ì
í
î
ô
õ
ö
÷
ú
ú
û
þ


ƒ




Œ

Ž


˜

ž
¢
§
§
ª
ª
­
®
Ö
Ú
Ý
á
á
á
ã
ã
ã
é
ì
ð
ü
ü
ü
ˆ
ˆ
ˆ




£
£
£
°
°
°
±
Á
Ã
Ë
Í
ê
í
í
ï
ñ
ñ
ñ
÷
ú
ú
ú
þ
ÿ








˜
ž
ž
ž
¡
¢
¤
¦
­
°
°
°
´
µ
¸
»
Ã
Æ
Æ
Æ
Ê
Ë
Î
Ñ
Ù
Ù
Ù
Ý
Þ
á
ä
ê
ê
ê
í
î
ð
ò
ü
ÿ
ÿ
ƒ







¦
¨
«
«
­
­
Ò
Ò
Ô
Ô
×
×
Ú
Ú
Ü
Ü
Þ
Þ
á
á
ä
ä
æ
æ
è
è
ë
ë
î
î
ð
ð
ò
ò
õ
õ
ø
ø
ú
ú
ü
ü
ÿ
ÿ








Œ
Œ
Ž
Ž






˜
˜
š
š


 
 
¢
¢
¤
¤
§
§
ª
ª
¬
¬
®
®
±
±
´
´


¸
¸
»
»
¾
¾
À
À
Â
Â
Å
Å
È
È
Ê
Ê
Ì
Ì
Ï
Ï
Ò
Ò
Ö
Ù
Ù
Û
Ý
Ý
ì
Á³ Ù èïyÓÓÛÔ¹"Ù>56¤Ïˆ< 8AA«CÅ'DÐ'EÞ'R´v¿â Ï£ø‹=ÄÄ‚%Ǿ'È«%'YƯ)í´W-±Ú¢ø“=ØØ¯Û¾'Ü«%'L?_[
ZËw±Ú¢ø¥=îî—(ñ¾'ô±l\q/ø±Ú¢ø­=Œ¤ø¥=ŠŠ·*¾'@í¤ºiL†:±Ú¢ø­=á¤øˆ<¦¦,©¾'¬ŸÂkG±Ú¢øùMÂÂŽ.ƾ'Çž
'ÈÐ.'É»
'Ê'<ê_B<$ø£¥òPú¥Š ÞßàÆ3áâìÏãäÿÏåæÐç‚ô̤Û÷¦Ø÷¦Ðì÷¦µß÷¦÷¦÷¦¿c÷¦éßßèà ¬
ÑøÿËO ŸûûèüØ1êšdå§ôYàïÄcŽª3ˆÆ3ˆÝ3˜ý3šŸ4œÁ4žâ4Ÿ ü4¡¢Ÿ5£¤Ä5 ¥¦â5
§¨€6 ©ª 6 «¬º6
­®Ô6¯°ñ6±²•7³´Ä7µá7·¸€8¹º¡8»¼Í8½¾ç8¿À†9Á«9E€Ã;Ö¬ì¾ͨÄcͨÄcŠŠõ2†3ꌚêê`ðÚã<ût¿cͨ²;ͨÖAͨÄcÚÚÛ;݈ê 㟉d"âu±³õõç<øØäæÅÊ[³[ÚúHúHßûHÁ‘4Ý­f‰úM÷ÜÚX˜ˆšÛˆœßžˆŸ M¡ˆ¢£ÅÛ¤ˆ…<£¬Ç½ðp؈®µßˆ®ˆ®ˆ®šeˆ®Ù¢ˆ® 8¢³"ˆ®Ű¿cˆ®ÙAˆ®û;ˆ®øÌ<¸¸¹öA ˜ØÇÃlÇøÃLˆ®¶®ä®ÐLˆ®űÓ ˆ®øͨÓ  øˆ®øͨÇL ±ˆ®ØòòãÐôùä¼¹tßþ—±¿c§²ùM§²ŒM§²ÃM§²òP§²ÇL ±ˆ®¿cˆˆŽÒŠùä·˜4×ÓâW—±ùM¬³ŒM¬³ÃM¬³òP¬³ÇLˆ®¿cŸGœùä})<çÒõùMŸ´ŒMŸ´ÃMŸ´òPŸ´Ø¨¨ùÓªùäÆñw–a—tó±¿c€µùM€µŒM€µÃM€µòP€µØ¾¾œÕÀùäâC¼‡‹Cl±¿cóµùMóµŒMóµÃMóµòPóµ¿cÔÔÁÖÖùäOÌšë¥Ôi¼±ùMæ¶ŒMæ¶ÃMæ¶òPæ¶¿cççÔ×èùä|ðñ'{;ùMηŒMηÃMηòPηÜA ±¥¥ºI¨ÜI©êIC²;Ÿ¿ B“¨êbèèÎRìÜIíêIîëvFı6„¶šÝRð¸ö¸ôõöÅØ÷øרùúéØfß=UƒŸ¤ÞÐìß¹µß߹߹’Bôøç<ùÒúºûöSüÒA+›‹©‹Ë±ð¸ö¸˜B˺žB˺¤B˺ªB˺µB˺¼B˺ÜA¾¾½XÂÒrA‚AÛ9<Ô±ð¸ö¸ÜA÷÷øÌ\üˆ Æ¢ÿ\3}ÊL±ð¸ö¸Ø™Ù e­œïm1¿cõ¼³õ¼Áõ¼ØˆˆÜÙŠûÙ‘ÚŒÁm/sqiyª¶±¿cĽ³ĽÁĽØä®ä®Ðì䮵ßä®ä®še䮿cä®Äc䮟!ØØ×nÛ€oÀê¥<]]?Él±ön³ä®³ 8ä®û;䮸Ì<± ± ² u #ëe»Q’ñøïyä®ïyˆ®ˆ<ˆ®øˆ<䮸¥=

ß{Ž
÷{ 
» Y–ï
#Z{îøÓ 䮸ͨÓ  øä®øͨ­=Ÿ
Ÿ
ú| 
» 8xò? ø=«
«
ê}¬
ù C¦”àá³ø“=µ
µ
Ì~
ù ·
» F´Eòþkøˆ<ù±øˆ<ÃÁø¥=ø
ø
’ƒú
÷{ û
» ~&Zl£¾¨øø­=ƒ ƒ ÷ƒ » õ:µRƒÍãøø‹=  ò„ ù ¿Hß½¨²´øø“=œ œ Þ…ž ù Ÿ » Öœ*ˆÏâäøøˆ<« « ↭ ÌE ¤ Zœ
¨`øøƒ<¼ ¼ ½ ù‡ {C€ÿ<Õ‡gøÌ< Æøˆ<Õ Õ Ή× » ƒã¼Uîøø¥=寸­=è è é ÷Š õt<}’ùy×øéä®éä®éä®éä®éä®éä®éä®éä®éä®éä®éä®éä®éä®éä®¶®éä® 8éä®»¾¿•­ÀˆÁÂñ¼Ãˆ¢ÓÛ?'°UF±éä®á¡é䮈®é䮪BªBö­BbufÁ÷<®B÷<9)
-ÜnL¥çEçEèEGlobalÁ ¿±‡§í#éä®ÿÊŸéä® 8
¥ÃLä®ÿÊÃL䮜§éä®éä®Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÿʳ ³ ³ ¶®³  8×ËÙ Ù Ù ¶®Ù ŒÍÄcß ß à óâ ˆª  !ëB 3ÛMձ٢䮚³"䮊εß䮵ß䮴ɵß䮵ߴÉ䮵ßä®¶®µß¶®ä®µß䮵ßä®µß ±ä®µß ±ä®µß䮵ß䮵ߡϵ߷ϵß䮵ß䮵ߡϵ߷ϵß䮵ß䮵ߡϵ߷ϵß䮵ß䮵ߡϵ߷ϵß䮵ß䮵ߡϵ߷ϵß䮵ß䮵ߡϵ߷ϵß䮵ß䮵ߡϵ߷ϵß䮵ß䮵ߡϵ߷ϵß䮵ß䮵ߡϵ߷ϵß䮵ß䮵ߡϵ߷ϵß䮵ß䮵ߡϵ߷ϵß䮵ß䮵ߡϵ߷ÏÙAä®ÜA

œ
ºI LáË7àû’BË
Ë
̘Ì
Á
Òyì.„uù˜BÐÕžBÐÕ¤BÍ
Í
ãKÎ
Ð 
Ï
Á
•¤ï–ó̪BÐ
Ñ
ç<Ò
ØÓ
˜™Ô
öSÕ
°™†pméèð-ZÜAù
ù
ú
½X Ý| ×`(¦[µBÝÖ¼BÖ
Ö
«L×
Ð 
Ø
Ø
§àã¸0Ę›ÜA·¦Ÿ ðÑ„üi°hùMôô‘£öùò÷šòøÀ£òùË£òªK¨‘,üÈŠÎØá¡Ðìᡵßá¡á¡á¡šeᡊ ßàá©öâˆãäÄöåˆæçèˆý><×wÕÿÈÛóÙØóÙµßóÙóÙóÙšeóÙÄcá¡¿cá¡ÙAá¡û;á¡øÌ<··¸­§ tºrÂl—ܺøˆ<á¡øˆ< 8á¡øéá¡TUVÿWˆXYZˆ[\©]ˆ›zS3©·\Çéá¡éá¡éá¡éá¡éá¡éá¡éá¡éá¡éá¡éá¡é!þƒ•­ˆ²­ˆÍ@wÀo%#önƒ­ߦŽŽû­ùØ™®Ø£®ØªSôžåL£èŽŽû­ùØ™®Ø£®ØªSôžåLÙ¦øµ®žØÖØÞ®Ø‡b'_ÝpJ²±è¶à±˜˜ÿ®š–¯Ø¦¯Øæ’Cá
±èœá± 8Ú¢è÷áø¶àœáØžBoxÁ¡ˆˆ¢ˆl }.xÏÓÓöSÔÔººò™¢¿5ñ…˲ð⳯â¿cðâÄcðâ鞽ᡈˆ¢ˆl }.xυ˯âÙAðâû; ±ðâøÌ<÷÷øá¾ êN+-8íøû;¯âøÌ<ƒƒÈ¿ Ž9ä¤ÜÑ´øû;ŒŽÀ }}ÅÃì!–ÿøÌ<¾À Îæ™5ý'øƒ<š„Á 3®uò†øÌ<©æøƒ<¦¦§ˆÂ ¶ì: RêwøÌ<îæøˆ<µµ†Ã 8Yœ¶N
ø“=¼¼ÊýæÃNЬ¼¯ßÑø“=ÅŬÄÇæÃ +d²TòšøøÓ  øðâøͨˆ<áèøÓÑ Ô õš
¯¦Û õä Æ

Ï

¯ « Û Õ ÌÓÏ
·µÓ
Íį
«
 áØº
µ
£ œ ¾¼ÈÅöîŠ

ü
ø
â Õ þ¡
Ÿ
ƒ ê è ÒÂûòŽˆŸ±¨Ç¾ÚÔëçôÙÂòˆ§¼¨Ò¾åÔóççÞéßèÞêßéÞžõõò«¨Á¾ˆ¥ÕÓëßÙëÞýô©×ÓìÞ¡õþôª÷ ù û ý 
ÿ 
úHÑÓÕ
Ø
ÛÝß
â
åçé
ì
ïñó
ö
ùûý

ƒ
Š



ž
¡£¥
¨
«­¯
²
µ·¹
¼
¿ÁÃ
Æ
ÉËÍ
Ð
ØÓ˜ßîÞ£õûô§ÚÓšßðÞÐû®õøòˆ®¨Ä¾×ÔéçˆÔ®Óàӈ߽¿ÁÃÅÇÉËÍÏþ     ˆ     ˜ ¥ § ÒÓéÓëÓíÓïÓñÓóÓõÓ÷ÓùÓûÓêÈŽÌûΊÞÚÖã ß ¬ÓâÓÊûÒû×ûœõˆˆˆ Š 
Þ¤õ¬ÜÓß§õæ «õë °õ
°ÓïÓ´õ­ ³Óò
ÿº¸³ ± É ¼ ¹·ù÷ƒ ­¦Âõ Ÿ ÅõÉõÍ


Ï
ø
ÿ
õòˆ£¨Ì¾ßÔïçƒòˆ¥¹¨Ï¾âÔñç
ƾý÷

ý
ù
¹ïèýôÙ
Ë
ôß
Ë
ôå
Ë
˜ôë
Í
¡ôñ
Ð
¬ôªÐ
µô°Ö
ƒˆÜØÄ ¼ ¨¦º Â É úHÐ 
Ú Û Ü úHÝ 
ˆþ¡ŽÌå˜û
©ŽÎç˜þ
˜ÛÓïyåˆ< =J“=¥=#­=#ùM #òP?Š 8ÛØ ÐìMµß@ì¿c*é$iÄcü¾8²;ÖA³še(Ù¢³"ÙAû;Ì< (ÃL?ÐLÓ ÇLŒMÃM1ÜA1êb(B˜BžB¤BªBµB¼BÁŸ!ƒ<³ Ù é!è²5309Á16Ább'b'Átb't'Ánb'n'Áfb'f'Árb'r'Á"b'"'Á\b'\\'Áub'u'Á256Á\»Û ü¤Û#Œ ä®,³Û( Value::NullÁtrueÁ¼Âl
 ¬Âl 
À$ü®l, Ä,ºl %„ül ‰m ÿ3 Tül ÈÒO ÈÒZÿüãl* Å,ôl +kÈÒwÈÒfalseÁfalseÁüÃÀ  ùÚ¢ü—ÀM $¼À &JùÚ¢ R::should_early_return_if_failedÁ\êú  0 $ôû Û¼Tþú þú   
 $„û 09 
 !0
\“û  A|§û  T§û  §û 


$­û A9 
!A \Áû  a|Õû TÕû Õû  $Ûû a9 !a
f¨CPF`!91ó
 ‡û  „ùú Û¼ ˆû  ¬  °û 
Î ´û 
ë  "
    µû  ¬¢û Û¼ ¶û   » Þû Ýâû 
ú "
 ãû ¬Ðû Û¼ äû  ü ±üœúå Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙTÅú ¹ú ¢©U\*®­¬ªŠ¾ªŠÐKJIªŠ[ªŠm¹¦ LÂü DÎü  Ïü 4àü  éü  üðü´ 
Döü öü  ûü @  ýü ü•ýw ì›ý  D¯ý 
¯ý    
  ¶ý  =
Dœ›ý 
±
Q b ·ý 
o  ü•ý#  ÿý  ÿÿ
Ìý 
 
ÛdÔý Õý  
 ßý ,äý  ¬Ôý # 7 èý  
ý  L‰ý % / ü‰ýƒ  ‹þ  Œþ   <–þ  œþ & (
Lüÿü¥ 
þ£þ ø
 ¦øþðü´ 
?E £þ ,©þ  ¯þ  °þ ²üƒü­ ü¾üò üÜüÔ üÇý" T­ü ,œü ›“òÔkÎÍ—‰LÇý ñÛÚ·ªNAÙNV]shiftÁÃtableÁä™®Á¹{
?256Á256Á256Á256Áü”'

  ðâ0 º
 Â
Ã
ÖüÕn
¼–

¼–ƒ‡—Ô@ü™%
4±%
‡—!7
>¼™%

ÖJ[_ ·%
üõ$D
å¼–Œ…%
¼–©‡—¨‡—°>üš&
4²&
‡—!7
>¼š&
‰˜HY] ¸&
üö%D
æ¼–Œ†&
¼–§‡—¦‡—®>ü'
<µ'
‡—!7
>¼'
‰˜HY] ¼'
üø&F
ç¼–Œ‰'
¼–§‡—¦‡—®>‡— "$serde_json::private::RawValue"Áƒ TV#´Ü/6= TY#´Ü/6=Ÿ T\#´Ü/6=<Í> Ž%‚©1Õã9@©? Ž%‚©1Ÿ¨9@Ìít ÚÛ'ÚÚÛ;݈ê 㟉d"âuc¼;¾;¿;XÀ;ˆÁ;Â;UnsignedÁÃ;ˆÄ;Å;SignedÁÆ;ˆÇ;È;É;ˆÊ;Ë;bÌ;ˆÍ;Î;ÞÏ;ˆÐ;Ñ;BytesÁÒ;ˆÓ;Ô;UnitÁÕ;Ö;¬×;Ø;
NewtypeStructÁ Ù;Ú;SeqÁ
Û;Ü;ç< Ý;Þ;| ß;à; UnitVariantÁ
á;â;NewtypeVariantÁã;ä; TupleVariantÁå;æ;
StructVariantÁç;è;¯é;ˆf£@Ô³=E4«‘ ÑÔ(ÑÓÔ‘DÕˆÖ׬D؈RnÑzÙÙÉDÛäDäOœ» î(«î®µDã‘ Ñ×(ä¤4ÜÜòDÞEäféŬ¦Çhoüä—C ÷ð¸ö¸$ø1÷÷øÌ\üˆ Æ¢ÿ\3}ÊLð¸ö¸u ¶¸dÁÆ ­¿&­ ®¯š`°±¬`²³Ç`´µÛ`·ñ`¸¹†aº»›a¼½¶a¾¿ÆaÀˆ=¢ižY—bÝäë %ä®17> š%ä®1á¡9@ %ä®1¶®9@  %ä®1ªBªBö­BÕÉ÷<®B÷<9)
-ÜnLä®…Ëx4á$ £%ä®1ˆ®9@¾ž ¾ À &¾ ¿ À ç<Á ˆ  à öS
Î9’†ÿp¶®x|Û" ß à 'ß ß à óâ ˆª  !ëB 3ÛMÕc ä®nu ßá%óÙ18? ßä%óÙ18? ßç%óÙ18?DÚ" þߦ ƒ-þƒ•­ˆ²­ˆÍ@wÀo%#ߦ ߦ4ï" þߦ -ñ±9DzAH!'êäÀèòغí¤,©dÀÖd½,÷d\ìf áºTœg ä
þD¨g ç «d²gA Ž.”ÀgÂ
è,ûgûÍ4‚hýL¯h º¡m„ºh ¼4Ìh ôllÔh ¸›lLÏi °¼l„Úi ³ºITìi¥·¢TŸj 柢D«j äç<µjõÏÛ4ºjÓЗB,ÂjÔ
"ß
#óŒíN
$|íO
%¡´¼P
&ü p
# Serde JSONÁúüNK JSON is a ubiquitous open-standard format that uses human-readable text toÁüd85 transmit data objects consisting of key-value pairs.Áú ```jsonÁ,­ܳ "name": "John Doe",Á”Ï "age": 43,Á¤â "address": {Áü÷*' "street": "10 Downing Street",Áä¢ "city": "London"ÁT¿ },ÁœÊ "phones": [ÁÔÞ "+44 1234567",ÁÌù "+44 2345678"ÁL“, ```Á«úü¯LI There are three common ways that you might find yourself needing to workÁÜü with JSON data in Rust.Á˜úüœOL - **As text data.** An unprocessed string of JSON data that you receive onÁüìIF an HTTP endpoint, read from a file, or prepare to send to a remoteÁ server.ÁüÅKH - **As an untyped or loosely typed representation.** Maybe you want toÁü‘KH check that some JSON data is valid before passing it on, but withoutÁüÝNK knowing the structure of what it contains. Or you want to do very basicÁü¬<9 manipulations like insert a key in a particular spot.ÁüéOL - **As a strongly typed Rust data structure.** When you expect all or mostÁü¹MJ of your data to conform to a particular structure and want to get realÁü‡ EB work done without JSON's loosey-goosey nature tripping you up.ÁÍ úüÑ IF Serde JSON provides efficient, flexible, safe ways of converting dataÁü›
*' between each of these representations.ÁÆ
úüÊ
&# # Operating on untyped JSON valuesÁñ
úüõ
JG Any valid JSON data can be manipulated in the following recursive enumÁüÀ HE representation. This data structure is [`serde_json::Value`][value].Á ú< ëºü• $! # use serde_json::{Number, Map};Á ÌÀ  # #[allow(dead_code)]Á„Ú 
enum Value {Á 
Null,Áœù  Bool(bool),Á¼
 Number(Number),Á¼¥
 String(String),ÁÔ½
 Array(Vec<Value>),矯
# Object(Map<String, Value>),Á
ݺ<‚뺊úüŽIF A string of JSON data can be parsed into a `serde_json::Value` by theÁüØMJ [`serde_json::from_str`][from_str] function. There is also [`from_slice`]Áü¦NK for parsing from a byte slice `&[u8]` and [`from_reader`] for parsing fromÁüõ/, any `io::Read` like a File or a TCP stream.Á¥úëºü±$! use serde_json::{Result, Value};ÁÖúüÚ(% fn untyped_example() -> Result<()> {ÁüƒJG // Some JSON input data as a &str. Maybe this comes from the user.Á´Î let data = r#"Á
üó# "name": "John Doe",ÁÔ— "age": 43,Áܲ "phones": [ÁüÎ" "+44 1234567",Áüñ! "+44 2345678"ÁŒ“„¥
}"#;Áúüº;8 // Parse the string of data into serde_json::Value.Áüö30 let v: Value = serde_json::from_str(data)?;Áªúü®EB // Access parts of the data by indexing with square brackets.ÁüôOL println!("Please call {} at the number {}", v["name"], v["phones"][0]);ÁÄú Ok(())Á,×ݺßÅŒã # fn main() {Áüõ%" # untyped_example().unwrap();Á< # }Á뺫úü¯MJ The result of square bracket indexing like `v["name"]` is a borrow of theÁüýOL data at that index, so the type is `&Value`. A JSON map can be indexed withÁüÍLI string keys, while a JSON array can be indexed with integer keys. If theÁüšNK type of the data is not right for the type with which it is being indexed,ÁüéNK or if a map does not contain the key being indexed, or if the index into aÁü¸C@ vector is out of bounds, the returned element is `Value::Null`.Áüúü€MJ When a `Value` is printed, it is printed as a JSON string. So in the codeÁüÎKH above, the output looks like `Please call "John Doe" at the number "+44ÁüšKH 1234567"`. The quotation marks appear because `v["name"]` is a `&Value`ÁüæIF containing a JSON string and its JSON representation is `"John Doe"`.Áü°OL Printing as a plain string without quotation marks involves converting fromÁü€KH a JSON string to a Rust string with [`as_str()`] or avoiding the use ofÁüÌ2/ `Value` as described in the following section.Áÿúüƒ&# [`as_str()`]: crate::Value::as_strÁªúü®LI The `Value` representation is sufficient for very basic tasks but can beÁüûIF tedious to work with for anything more significant. Error handling isÁüÅLI verbose to implement correctly, for example imagine trying to detect theÁü’ PM presence of unrecognized fields in the input data. The compiler is powerlessÁüã PM to help you when you make a mistake, for example imagine typoing `v["name"]`Áü´!JG as `v["nmae"]` in one of the dozens of places it is used in your code.Áÿ!úüƒ"41 # Parsing JSON as strongly typed data structuresÁ¸"úü¼"PM Serde provides a powerful way of mapping JSON data into Rust data structuresÁÔ# largely automatically.Á¨#ú<¬#ëºü´#(% use serde::{Deserialize, Serialize};ÁÜÝ# use serde_json::Result;Áù#úüý#%" #[derive(Serialize, Deserialize)]Áœ£$ struct Person {Á¬·$ name: String,Á„Í$
age: u8,ÁäÞ$ phones: Vec<String>,Á,û$ݺ%úü…%&# fn typed_example() -> Result<()> {Áü¬%JÑË´÷%¤ÌlŽ&ÃÌüœ&#ÚÌÔÀ&†ÍÜÛ&©Íü÷&"ÎÍüš'!úÍŒ¼'¤Î„Î'¾Îß'úüã'MJ // Parse the string of data into a Person object. This is exactly theÁü±(NK // same function as the one that produced serde_json::Value above, butÁü€)74 // now we are asking it for a Person as output.Áü¸)41 let p: Person = serde_json::from_str(data)?;Áí)úüñ)B? // Do things just like with any other Rust data structure.Áü´*IF println!("Please call {} at the number {}", p.name, p.phones[0]);Áþ*út‚+¥Ñ,‘+ݺ,—+ßÅŒ+ÖÑü¯+# # typed_example().unwrap();Á<Ó+ŸÒ<Û+ëºã+úüç+PM This is the same `serde_json::from_str` function as before, but this time weÁü¸,HE assign the return value to a variable of type `Person` so Serde willÁü-PM automatically interpret the input data as a `Person` and produce informativeÁüÒ-PM error messages if the layo
\Å7 });ÁÑ7úüÕ7>; println!("first phone number: {}", john["phones"][0]);Á”8úü˜874 // Convert to a string of JSON and print it outÁüÐ8)& println!("{}", john.to_string());Á,ú8ݺ<€9뺈9úüŒ9KH The `Value::to_string()` function converts a `serde_json::Value` into aÁÔØ9 `String` of JSON text.Áó9úü÷9PM One neat thing about the `json!` macro is that variables and expressions canÁüÈ:NK be interpolated directly into the JSON value as you are building it. SerdeÁü—;NK will check at compile time that the value you are interpolating is able toÁÜæ; be represented as JSON.Á<ú<†<ëºÜŽ< # use serde_json::json;Á,ª<ßÅü°<$! # fn random_phone() -> u16 { 0 }Á,Õ<ßÅüÛ< let full_name = "John Doe";ÁÜû< let age_last_year = 42;Á—=úü›=0- // The type of `john` is `serde_json::Value`Á´Ì= let john = json!({ÁÔã= "name": full_name,Áüþ=! "age": age_last_year + 1,Áœ >ê¹ü´>-* format!("+44 {}", random_phone())ÁLâ>˺<ì> });Á<ô>ëºü>úü€?LI This is amazingly convenient, but we have the problem we had before withÁüÍ?OL `Value`: the IDE and Rust compiler cannot help us if we get it wrong. SerdeÁü@LI JSON provides a better way of serializing strongly-typed data structuresÁœê@ into JSON text.Áþ@úü‚A2/ # Creating JSON by serializing data structuresÁµAúü¹A96 A data structure can be converted to a JSON string byÁüóA74 [`serde_json::to_string`][to_string]. There is alsoÁü«BFC [`serde_json::to_vec`][to_vec] which serializes to a `Vec<u8>` andÁüòBLI [`serde_json::to_writer`][to_writer] which serializes to any `io::Write`Áü¿C# such as a File or a TCP stream.ÁãCú<çCëºüïC(ÑáܘD‚â´Dúü¸D%³â¤ÞD struct Address {Á¼óD street: String,Á¬‹E city: String,Á,¡Eݺ§Eúü«E)& fn print_an_address() -> Result<()> {ÁüÕE // Some data structure.ÁüõE let address = Address {Áü•F30 street: "10 Downing Street".to_owned(),ÁüÉF&# city: "London".to_owned(),ÁTðF };ÁûFúüÿF)& // Serialize it to a JSON string.Áü©G1. let j = serde_json::to_string(&address)?;ÁÛGúüßG=: // Print, write to a file, or send to an HTTP server.ÁÔH println!("{}", j);Á¸Hút¼H¥Ñ,ËHݺ,ÑHßÅŒ×HÖÑüéH&# # print_an_address().unwrap();Á<IŸÒ<˜I뺠Iúü¤IMJ Any type that implements Serde's `Serialize` trait can be serialized thisÁüòIMJ way. This includes built-in Rust standard library types like `Vec<T>` andÁüÀJC@ `HashMap<K, V>`, as well as any structs or enums annotated withÁÜ„K `#[derive(Serialize)]`.Á Kú¤¤K # No-std supportÁ¹Kúü½KLI As long as there is a memory allocator, it is possible to use serde_jsonÁüŠLLI without the rest of the Rust standard library. Disable the default "std"Áü×L+( feature and enable the "alloc" feature:ÁƒMú\‡M ```tomlÁ”“M [dependencies]Áü¦MTQ serde_json = { version = "1.0", default-features = false, features = ["alloc"] }Á<ûM뺃Núü‡NHE For JSON support in Serde without a memory allocator, please see theÁôÐN [`serde-json-core`] crate.ÁïNúüóN  [value]: crate::value::ValueÁü”O# [from_str]: crate::de::from_strÁü¸O'$ [from_slice]: crate::de::from_sliceÁüàO)& [from_reader]: crate::de::from_readerÁüŠP&# [to_string]: crate::ser::to_stringÁü±P  [to_vec]: crate::ser::to_vecÁüÒP&# [to_writer]: crate::ser::to_writerÁÄùP [macro]: crate::jsonÁü’QSP [`serde-json-core`]: https://github.com/rust-embedded-communi
þ+3 ç «*3A Ž.)3Â
è(3ûÍ'3ý&3 º¡m%3 ¼$3 ôl#3 ¸l"3 °¼l!3 ³ºI 3¥·¢3 柢3 äç<3õÏÛ3ÓЗB3Ô3"ß3#ó3$3%¡3&ð4ó4ö4”œdí4„Édâ4üÜd Ø4ŒÁe4¸eLÉeÁûe÷<ÁTôe!´áf5Lg5555ù4ü4ï4ò4dìgè4ë4Ý4à4T¢hÖ4Ù4Ë4Î4À4Ã4µ4¸4TÂi®4±4£4¦4˜44dj4“4„4‡4y4|4i4l4Z4]4„âkïk ók ¹m ùk ‡l, úk8° ûk& ük8$ýk, l ƒl …l$ „l- †l*‰l Œl ¶m8,l, œl8° l Ÿl °m8í$­l'±l8 4³l'¹l8Í4»l'Ál8«Ãl Ål Él8¹Æl*Ël8¹Îl$ Ñl8í$ßl'ãl8 4ål'ël8Í4íl'ól8õl øl ül8Ø1ùl*þl84m8í$ˆm'Œm8 4Žm'”m8Í4m'œm8žm ¡m ¥m8Ø1¢m$ ¦m% ·mTÉm4ÍmŒ—
ü8
5 Construct a `serde_json::Value` from a JSON literal.Á9
ú<=
ëºÜE
ýý,a
Ꮼg
 let value = json!({Á¤
 "code": 200,ÁÄ”
 "success": true,Á¤­
 "payload": {ÁÌÂ
 "features": [ÁÄÜ
 "serde",Á´õ
 "json"Á
],Áä›
 "homepage": nullÁL¸

º
ëºÒ
úüÖP
M Variables or expressions can be interpolated into the JSON literal. Any typeÁü§M
J interpolated into an array element or object value must implement Serde'sÁüõJ
G `Serialize` trait, while any type interpolated into an object key mustÁüÀF
C implement `Into<String>`. If the `Serialize` implementation of theÁü‡M
J interpolated type decides to fail, or if the interpolated type contains aÁüÕ;
8 map with non-string keys, the `json!` macro will panic.Á
ú<•
ëºÜ
ýý
ßÅœ¿
 let code = 200;ÁüÓ)
& let features = vec!["serde", "json"];Áý
ú¼
٣ª
 "code": code,Áü¯
 "success": code == 200,Á¤Ï
ü£üä$
! features[0]: features[1]ÁL‰
·¥<“
º<
뺣
úü§?
< Trailing commas are allowed inside both arrays and objects.Áç
ú
ëºÜó
ýý,
ßż•
 let value = json!([ÁŒ­
 "notice",Át¿
"the",ÁœÎ
 "trailing",Á¤â
 "comma -->",Á
 ]);Á<ÿ
ëº(|‡
n< ©
¿
 ú
, û
 ü
, ý
8Ô
&
8¯ƒ

*
 Œ
¼
,
8,—
'œ
8ß
 «
 ¬
, ­
 ®
´
, ¯
8Ô
 µ
% ½
Ô£
(|„

^= ¾
¼M
 ±
Ë
 ²
8Ç
 ¹
Ê
, º
 »
È
, ¼
8elemsÁ
& Â
8
$ Ç

É
*Í
 Ð
ƒ
, Ú
8
'à
8É
'ë
8Áí
 ð
 ñ
ý
, ò
 ó
û
, ô
8¨±
$ ú

ü
% 
 ¯
É
 °
8Ç
 ·
È
, ¸
 ¹
Å
, º
8¨±
& À
8
$ Æ

Ç
*Ë
 Î

, Ø
8
'Þ
8É
'é
8Áë
 î
 ï
û
, ð
 ñ
ø
, ò
8¨±
$ ù

ú
% 
 ¨
Ô
 ©
8Ç
 °
Á
, ±
 ²
¿
, ³
8¨±,´
& ¹
8
$ ¾

À
8

, È
 É
Ò
, Ê
8restÁ
& Ï
8¯Ð

Ó
*Ö
 Ù
»
, ã
8
'é
8ß
 ø
 ù
µ
 ú
8Ç
 
ª
 , 
 ƒ

, 
8¨±,…
$ Š

Œ
, Ž
8,
'
8ßl
 £
 ¤
©
8

, ¬
 ­
³
, ®
8–¶

´
% ¼
 â
Ž
 ã
8Ç
 ê
û
, ë
 ì
ù
, í
8¨±
& ó
8
$ ø

ú
8 
, 
 ƒ
Œ
, 
8–¶$…
& 
8¯Š


*
 
õ
, 
8
'£
8ß
 ²
 ³
ï
 ´
8Ç
 »
ä
 , ¼
 ½
Å
, ¾
8¨±,¿
$ Ä

Æ
, È
8
'Î
8ß
 Ý
 Þ
ã
8 
, æ
 ç
í
, è
8–¶

î
% ö
 
Ê
 ž
8Ç
 ¥

, ¦
 §
´
, ¨
8¨±
& ®
8
$ ³

µ
8 ,¸
, ¾
 ¿
È
, À
8–¶
& Å
8¯Æ

É
*Ì
 Ï
²
, Ù
8
'ß
8ß
 î
 ï
¬
 ð
8Ç
 ÷
¡
 , ø
 ù

, ú
8¨±
$ 


, 
8,…
'Š
8ß
 
 š
 
8 ,
, £
 ¤
ª
, ¥
8–¶

«
% ³
 Û

 Ü
8Ç
 ã
ô
, ä
 å
ò
, æ
8¨±
& ì
8
$ ñ

ó
 ö

, ÷
 ø

, ù
8Ç
& ÿ
8¯

ƒ
, 
 

, ˆ
8–¶$‰
& 
8¯Ž


*
 

, ¡
8
'§
8ß
 
 ·
û
 ¸
8Ç
 ¿
ð
 , À
 Á
É
, Â
8¨±
$ È

Ê
, Ì
8
'Ò
8ß
 á
 â
ï
 ã
î
, ä
 å
ì
, æ
8Ç

í
, ò
 ó
ù
, ô
8–¶

ú
% 
 §
Ü
 ¨
8Ç
 ¯
À
, °
 ±
¾
, ²
8¨±
& ¸
8
$ ½

¿
 Â
Î
, Ã
 Ä
Ì
, Å
8ØÆ
& É
8¯Ê

Í
, Ð
 Ñ
Ú
, Ò
8–¶
& ×
8¯Ø

Û
*Þ
 á
É
, ë
8
'ñ
8ß
 
 
Ã
 
8Ç
 
¸
 , Š
 

, Œ
8¨±,
$ 


, 
8,—
'œ
8ß
 «
 ¬
·
 ­

, ®
 ¯
´
, °
8ر

µ
, º
 »
Á
, ¼
8–¶

Â
% Ê
 
¼
  Š
8Ç,
 
¢
, 
 
 
, 
8¨±,•
& š
8$
$ Ÿ

¡
, ¤
8ó 
& ©
8
$ ®
, °
 ±
º
, ²
8–¶
& ·
8¯¸

»
*¾
 Á
¥
, Ë
8
'Ñ
8ß
 à
 á
Ÿ
 â
8Ç
 é


, ê
 ë
ó
, ì
8¨±
$ ò

ô
, ö
8
'ü
8ß
 
 Œ

, 
8ó 
$ 
, 
 

, ˜
8–¶$™

ž
% ¦
 ê

 ë
8Ç
 ò
ƒ
, ó
 ô

, õ
8¨±
& û
8
$ 


, 
8$†
& Š
8$
*
 
í
, ž
8
'¤
8ß
 ³
 ´
ç
 µ
8Ç
 ¼
æ
 , ½
 ¾
Æ
, ¿
8¨±
$ Å

Ç
, É
8
'Ï
8ß
 Þ
 ß
å
, à
8
% î
 ¡
Ê
 ¢
8Ç
 ©
º
, ª
 «
·
, ¬
8¨±,­
& ²
8
$ ¸

¹
$ ¼
, ¾
 ¿
È
, À
8–¶
& Å
8¯Æ

É
*Ì
 Ï
, Ù
8
'ß
8ß
 î
 ï
Ž
 ð
8Ç
 ÷
ƒ
, ø
 ù
, ú
8¨±
$

,

Œ
,
8–¶$ˆ

%
 Ï
…!

 Ð
8Ç
 ×
è
, Ø
 Ù
å
, Ú
8¨±
& à
8
$ æ

ç
, ê
8¼‰
& õ
8¯ö
, ù
 ú
ƒ!
, û
8–¶
& €!
8¯!

„!
*‡!
 Š!
¾!
, ”!
8,•!
'š!
8|œ!
 «!
 ¬!
¸!
, ­!
8¼‰T®!
% ¿!
 Æ%
å%
  Ç%
8½4È%
, Ï%
8½4Ð%
& Ö%
8¼,×%
 Ý%
Þ%
 à%
á%
 ã%
ä%
*ç%
 ê%
ë%
% ì%
 ¯&
ð&
  °&
8½4±&
, ¸&
8½4¹&
& ¿&
8¼,À&
 Æ&
Ò&
, Ç&
 È&
Ð&
, É&
8ÌEÊ&
& Í&
8¯Î&
 Ñ&
 Ô&
à&
, Õ&
8»,Ö&
& Û&
8$Ü&
$ â&
, ä&
 å&
î&
, æ&
8–¶$ç&
& ë&
8¯ì&

ï&
*ò&
 õ&
(
8ÿ&
8 ƒ'
…'
, ‡'
8½4ˆ'
 Ž'
8´>4'
 •'
¯'
 '
Ÿ'
, —'
 ˜'
'
, ™'
8ÌEš'
 ž'
  '
8intoÁ$¡'
 ¥'
¦'
$ §'
, ©'
8»,ª'
% °'
, º'
8,»'
'À'
8ßlÂ'
 Ï'
 Ð'
û'
 Ñ'
8½4Ò'
, Ù'
8½4Ú'
 á'
â'
 ä'
î'
, å'
 æ'
ì'
, ç'
8–¶$è'

í'
 ð'
ú'
, ñ'
 ò'
ø'
, ó'
8–¶$ô'

ù'
% ü'
% ƒ(
 ½(
)
 ¾(
8½4¿(
, Æ(
8½4Ç(
& Í(
8¼,Î(
 Ô(
à(
, Õ(
 Ö(
Þ(
, ×(
8ÌEØ(
& Û(
8¯Ü(
 ß(
 â(
î(
, ã(
8»,ä(
& é(
8$ê(
, ð(
8¼‰Tñ(
& û(
8¯ü(
, ÿ(
 €)
‰)
, )
8–¶$)
& †)
8¯‡)

Š)
*)
 )
Å)
, š)
8,)
' )
8|¢)
 ±)
 ²)
¾)
, ³)
8¼‰T´)
% ¿)
% Æ)
 *
´*
 ƒ*
8½4„*
, *
8½4Œ*
& *
8¼,“*
 ™*
¥*
, š*
 *
£*
, œ*
8ÌE*
&  *
8¯¡*
 ¤*
 §*
³*
, ¨*
8»,©*
& ®*
8$¯*
*¶*
 ¹*
ú*
 8Ã*
8 Ç*
É*
, Ë*
8½4Ì*
 Ò*
8´>4Ó*
 Ù*
ó*
 Ú*
ã*
, Û*
 Ü*
á*
, Ý*
8ÌEÞ*
 â*
 ä*
8€Ú$å*
 é*
ê*
$ ë*
, í*
8»,î*
% ô*
% û*
 Ÿ+
â+
   +
8½4¡+
, ¨+
8½4©+
& ¯+
8¼,°+
 ¶+
Â+
, ·+
 ¸+
À+
, ¹+
8ÌEº+
& ½+
8¯¾+
 Á+
 Ä+
Ø+
& Å+
8
$Ç+
, Ì+
 Í+
Ö+
, Î+
8–¶$Ï+
& Ó+
8¯Ô+

×+
, Ú+
8æ$Û+
& ß+
8¯à+
*ä+
 ç+
Ò,
, ñ+
8,ò+
'÷+
8ßlù+
 †,
 ‡,
Ë,
  ˆ,
8½4‰,
, ,
8½4,
 ˜,
¡,
, ™,
 š,
Ÿ,
, ,
8ÌEœ,
  ,
 £,
À,
, ¤,
8,¥,
'ª,
8ßl¬,
 ¹,
 º,
¿,
8
$»,
, Â,
 Ã,
É,
, Ä,
8–¶$Å,

Ê,
% Ì,
% Ó,
 ÷,
º-
  ø,
8½4ù,
, €-
8½4-
& ‡-
8¼,ˆ-
 Ž-
š-
, -
 -
˜-
, -
8ÌE-
& •-
8¯-
 ™-
 œ-
°-
& -
8 $Ÿ-
, ¤-
 ¥-
®-
, ¦-
8–¶$§-
& «-
8¯¬-

¯-
, ²-
8æ$³-
& ·-
8¯¸-
*¼-
 ¿-
ª.
, É-
8,Ê-
'Ï-
8ßlÑ-
 Þ-
 ß-
£.
  à-
8½4á-
, è-
8½4é-
 ð-
ù-
, ñ-
 ò-
÷-
, ó-
8ÌEô-
 ø-
 û-
˜.
, ü-
8,ý-
'.
8ßl„.
 .
 .
—.
8 $“.
, š.
 .
¡.
, œ.
8–¶$.

¢.
% ¤.
% «.
 Ð.
”/
  Ñ.
8½4Ò.
, Ù.
8½4Ú.
& à.
8¼,á.
 ç.
ó.
, è.
 é.
ñ.
, ê.
8ÌEë.
& î.
8¯ï.
 ò.
 õ.
Š/
& ö.
8 ,ø.
, þ.
 ÿ.
ˆ/
, €/
8–¶$/
& …/
8¯†/

‰/
, Œ/
8æ$/
& /
8¯/
*/
 ™/
…0
, £/
8,¤/
'©/
8ßl«/
 ¸/
 ¹/
þ/
  º/
8½4»/
, Â/
8½4Ã/
 Ê/
Ó/
, Ë/
 Ì/
Ñ/
, Í/
8ÌEÎ/
 Ò/
 Õ/
ó/
, Ö/
8,×/
'Ü/
8ßlÞ/
 ë/
 ì/
ò/
8 ,í/
, õ/
 ö/
ü/
, ÷/
8–¶$ø/

ý/
% ÿ/
% †0
 ¬0
ú0
  ­0
8½4®0
, µ0
8½4¶0
& ¼0
8¼,½0
 Ã0
Ï0
, Ä0
 Å0
Í0
, Æ0
8ÌEÇ0
& Ê0
8¯Ë0
 Î0
 Ñ0
ð0
& Ò0
 Ô0
â0
, Õ0
 Ö0
à0
, ×0
8Ç,Ø0
& Ý0
8¯Þ0

á0
, ä0
 å0
î0
, æ0
8–¶$ç0
& ë0
8¯ì0

ï0
, ò0
8æ$ó0
& ÷0
8¯ø0
*ü0
 ÿ0
ò1
, ‰1
8,Š1
'1
8ßl1
 ž1
 Ÿ1
ë1
   1
8½4¡1
, ¨1
8½4©1
 °1
¹1
, ±1
 ²1
·1
, ³1
8ÌE´1
 ¸1
 »1
à1
, ¼1
8,½1
'Â1
8ßlÄ1
 Ñ1
 Ò1
ß1
 Ó1
Þ1
, Ô1
 Õ1
Ü1
, Ö1
8Ç,×1

Ý1
, â1
 ã1
é1
, ä1
8–¶$å1

ê1
% ì1
% ó1
 2
â2
  —2
8½4˜2
, Ÿ2
8½4 2
& ¦2
8¼,§2
 ­2
¹2
, ®2
 ¯2
·2
, °2
8ÌE±2
& ´2
8¯µ2
 ¸2
 »2
Ø2
& ¼2
 ¾2
Ê2
, ¿2
 À2
È2
, Á2
8ØÂ2
& Å2
8¯Æ2

É2
, Ì2
 Í2
Ö2
, Î2
8–¶$Ï2
& Ó2
8¯Ô2

×2
, Ú2
8æ$Û2
& ß2
8¯à2
*ä2
 ç2
Ø3
, ñ2
8,ò2
'÷2
8ßlù2
 †3
 ‡3
Ñ3
  ˆ3
8½4‰3
, 3
8½43
 ˜3
¡3
, ™3
 š3
Ÿ3
, 3
8ÌEœ3
  3
 £3
Æ3
, ¤3
8,¥3
'ª3
8ßl¬3
 ¹3
 º3
Å3
 »3
Ä3
, ¼3
 ½3
Â3
, ¾3
8ؿ3

Ã3
, È3
 É3
Ï3
, Ê3
8–¶$Ë3

Ð3
% Ò3
% Ù3
 4
â4
  —4
8½4˜4
, Ÿ4
8½4 4
& ¦4
8¼,§4
 ­4
¹4
, ®4
 ¯4
·4
, °4
8ÌE±4
& ´4
8¯µ4
 ¸4
 »4
Ø4
 & ¼4
, ¾4
8»,¿4
& Ä4
8$Å4
$ Ê4
, Ì4
 Í4
Ö4
, Î4
8–¶$Ï4
& Ó4
8¯Ô4

×4
, Ú4
8æ$Û4
& ß4
8¯à4
*ä4
 ç4
Ö5
, ñ4
8,ò4
'÷4
8ßlù4
 †5
 ‡5
Ï5

 ˆ5
8½4‰5
, 5
8½45
 ˜5
¡5
, ™5
 š5
Ÿ5
, 5
8ÌEœ5
  5
 £5
Â5
, ¤5
8,¥5
'ª5
8ßl¬5
 ¹5
 º5
Á5
, »5
8»,¼5
$ Ä5
, Æ5
 Ç5
Í5
, È5
8–¶$É5

Î5
% Ð5
% ×5
 ™6
Ö6
  š6
8½46
, ¢6
8½4£6
& ©6
8¼,ª6
 °6
¼6
, ±6
 ²6
º6
, ³6
8ÌE´6
& ·6
8¯¸6
 »6
 ¾6
Ì6
& ¿6
, Á6
8»,Â6
& Ç6
8$È6
, Î6
8æ$Ï6
& Ó6
8¯Ô6
*Ø6
 Û6
¾7
, å6
8,æ6
'ë6
8ßlí6
 ú6
 û6
·7
 ü6
8½4ý6
, „7
8½4…7
 Œ7
•7
, 7
 Ž7
“7
, 7
8ÌE7
 ”7
 —7
¶7
, ˜7
8,™7
'ž7
8ßl 7
 ­7
 ®7
µ7
, ¯7
8»,°7
% ¸7
% ¿7
 8
À8
  8
8½48
, ˜8
8½4™8
& Ÿ8
8¼, 8
 ¦8
²8
, §8
 ¨8
°8
, ©8
8ÌEª8
& ­8
8¯®8
 ±8
 ´8
¶8
& µ8
, ¸8
8æ$¹8
& ½8
8¯¾8
*Â8
 Å8
9
, ÿ8
8,€9
'…9
8ßl‡9
 ”9
 •9
9
% —9
% ž9
 ÿ9
¯:
  €:
8½4:
, ˆ:
8½4‰:
& :
8¼,:
 :
¢:
, —:
 ˜:
 :
, ™:
8ÌEš:
& :
8¯ž:
 ¡:
 ¤:
¥:
, §:
8æ$¨:
& ¬:
8¯­:
*±:
 ´:
Œ;
, î:
8,ï:
'ô:
8ßlö:
 ƒ;
 „;
…;
% †;
% ;
 Ð;
“<
  Ñ;
8½4Ò;
, Ù;
8½4Ú;
& à;
8¼,á;
 ç;
è;
 ê;
ù;
& ë;
, í;
 î;
÷;
, ï;
8–¶$ð;
& ô;
8¯õ;

ø;
 û;
<
, ü;
8colonÁ,ý;
& <
8¯ƒ<
, †<
 ‡<
<
, ˆ<
8æ$‰<
& <
8¯Ž<

<
*•<
 ˜<
Œ=
, æ<
8,ç<
'ì<
8|î<
 ý<
 þ<
…=
, ÿ<
8ñ‰,€=
% †=
% =
 Û=
©>
  Ü=
8½4Ý=
, ä=
8½4å=
& ë=
8¼,ì=
 ò=
þ=
, ó=
 ô=
ü=
, õ=
8ÌEö=
& ù=
8¯ú=

ý=
 €>
>
$ >
, ƒ>
 „>
>
, …>
8–¶$†>
& Š>
8¯>

Ž>
 >
¨>
, >
8commaÁ,“>
& ˜>
8¯™>
, œ>
 >
¦>
, ž>
8æ$Ÿ>
& £>
8¯¤>

§>
*«>
 ®>
¢?
, ü>
8,ý>
'?
8|„?
 “?
 ”?
?
, •?
8µ,?
% œ?
% £?
 ¹@
ø@
  º@
8½4»@
, Â@
8½4Ã@
& É@
8¼,Ê@
 Ð@
Ñ@
 Ó@
î@
 Ô@
Þ@
, Õ@
8ÌEÖ@
& Ù@
8$Ú@
& à@
, â@
 ã@
ì@
, ä@
8–¶$å@
& é@
8¯ê@

í@
, ð@
8æ$ñ@
& õ@
8¯ö@
*ú@
 ý@
×A
, ‡A
8,ˆA
'A
8ßlA
 œA
 A
ÐA
 žA
8½4ŸA
, ¦A
8½4§A
 ®A
³A
, ¯A
8ÌE°A
 µA
ÁA
& ¶A
, ¸A
 ¹A
¿A
, ºA
8–¶$»A

ÀA
 ÃA
ÏA
& ÄA
, ÆA
 ÇA
ÍA
, ÈA
8–¶$ÉA

ÎA
% ÑA
% ØA
 ˜B
ÜB
  ™B
8½4šB
, ¡B
8½4¢B
& ¨B
8¼,©B
 ¯B
»B
, °B
 ±B
¹B
, ²B
8ÌE³B
& ¶B
8¯·B

ºB
 ½B
ÒB
& ¾B
, ÀB
 ÁB
ÐB
, ÂB
8¼‰TÃB
& ÍB
8¯ÎB
 ÑB
, ÔB
8æ$ÕB
& ÙB
8¯ÚB
*ÞB
 áB
¡C
, ëB
8,ìB
'ñB
8¡´óB
 ‰C
 ŠC
šC
, C
 ŒC
˜C
, C
8¼‰TŽC
 ™C
% C
% ¢C
 ÔC
—D
  ÕC
8½4ÖC
, ÝC
8½4ÞC
& äC
8¼,åC
 ëC
÷C
, ìC
 íC
õC
, îC
8ÌEïC
& òC
8¯óC

öC
 ùC
D
, úC
8¯ûC
& ýC
8¯þC
, D
 D
D
, ƒD
8–¶$„D
& ˆD
8¯‰D

ŒD
, D
8æ$D
& ”D
8¯•D
*™D
 œD
úD
, ¦D
8,§D
'¬D
8ßl®D
 »D
 ¼D
óD
 ½D
8½4¾D
, ÅD
8½4ÆD
 ÍD
ÚD
, ÎD
 ÏD
ÔD
, ÐD
8ÌEÑD

ÕD
, ×D
8¯ØD
 ÜD
æD
, ÝD
 ÞD
äD
, ßD
8–¶$àD

åD
 èD
òD
, éD
 êD
ðD
, ëD
8–¶$ìD

ñD
% ôD
% ûD
 ýF
G
8
$þF
*„G
 ‡G
©G
, G
8,G
'—G
8—B,™G
'žG
8ÜÚ$ G
% ªG
 ±G
¶G
8 $²G
*¸G
 »G
ãG
, ÅG
8,ÆG
'ËG
8—B,ÍG
'ÒG
8X$ÔG
 ØG
ÝG
8 $ÙG
% äG
 ëG
ñG
8 ,ìG
*óG
 öG
ŸH
, €H
8,H
'†H
8—B,ˆH
'H
8X$H
 “H
™H
8 ,”H
%  H
 §H
ªH
 ¨H
©H
*¬H
 ¯H
íH
, ¹H
8,ºH
'¿H
8—B,ÁH
'ÆH
8M,ÈH
 ÍH
çH
, ÎH
8,ÏH
'ÔH
8ÉLÖH
'ßH
8ÁáH
 äH
 åH
æH
% îH
 õH
„I
 öH
ƒI
, øH
 ùH
€I
, úH
8¯ûH
& ýH
8¯þH
 I
*†I
 ‰I
×I
, “I
8,”I
'™I
8—B,I
' I
8M,¢I
 §I
ÑI
, ¨I
8,©I
'®I
8ßl°I
 ½I
 ¾I
ÐI
 ¿I
8Ç,ÀI
 ÆI
ÇI
, ÉI
 ÊI
ÎI
, ËI
8¯ÌI
 ÏI
% ØI
 ßI
âI
 àI
áI
*äI
 çI
ŸJ
, ñI
8,òI
'÷I
8—B,ùI
'þI
8ÅÛ4€J
 †J
™J
, ‡J
8,ˆJ
'J
8ç<J
'J
8æ ”J
 —J
˜J
%  J
 §J
¶J
 ¨J
µJ
, ªJ
 «J
²J
, ¬J
8¯­J
& ¯J
8¯°J
 ³J
*¸J
 »J
ûK
, ÅJ
8,ÆJ
'ËJ
8—B,ÍJ
'ÒJ
8ÅÛ4ÔJ
 ÚJ
õK
 ÛJ
ôK
8éJ
8íJ
8½4ñJ
øJ
, úJ
8,ûJ
'€K
8ç<K
'…K
8æ ‡K
 ŠK
K
% ŒK
, šK
8,K
' K
8ßl¢K
 ¯K
 °K
ÖK
 ±K
8½4²K
8½4¹K
 ÀK
ÁK
 ÃK
ËK
, ÄK
 ÅK
ÉK
, ÆK
8¯ÇK
 ÊK
 ÍK
ÕK
, ÎK
 ÏK
ÓK
, ÐK
8¯ÑK
 ÔK
% ×K
8½4åK
% üK
 ÷L
ƒM
, øL
8¹
,ùL
& þL
8$ÿL
*…M
 ˆM
¹M
, M
8,“M
'˜M
8Ÿ¢DšM
 ¢M
ªM
 £M
, ¤M
8¹
,¥M
 «M
8¢4¬M
 ²M
³M
% ºM
ôàN
(|ÁN
4×N
y ÿN
¾O
 …O
•O
, †O
 ‡O
“O
, ˆO
8contentÁ<‰O
& O
8¯O

”O
*—O
 šO
»O
8Á¤O
 §O
 ¨O
µO
, ©O
 ªO
³O
, «O
8Ë©<¬O

´O
% ¼O
äàO
(|ÁO
4×O
rz ýO
P
 ƒP
„P
*†P
 ‰P
ŠP
% P
ü¯P#
(|P
4¦P
Àz ÓP
÷P
 ÙP
îP
, ÚP
8° ÛP
& ÜP
8$ÝP
$ âP
, äP
 åP
ìP
, æP
8¯çP
& éP
8¯êP

íP
*ðP
 óP
ôP
% õP
TÖmü30 Deserialize JSON data to a Rust data structure.ÁÞmAT•ÄØîŠ¦ÂÝáäçè,Hû')LOŽ'*Í4Zý'+ÛÓ',ÅØ'.÷'/Êþ'0ßúH'1öŒªB'2
FusedIteratorÁlÕòP'3 PhantomDataÁ\ö'4¨¯ '4 4¾['5FromStrÁ<¤ïy'6¾i'8ExpectedÁDÃù;'9
UnexpectedÁTͼ;':forward_to_deserialize_anyÁÔå';œªè=µ®>ÿ®˜?û­Ž@d9èëÜßÐÓ¬ŸÇ»®±¡¤¬å˜|€ŒÌÉsÌè\d‡<”™)¸

óõüÞ!Ï\ÚÁóµ¥§œÓ›Ôòü¹85 A structure that deserializes JSON into Rust values.Á£BBÍìÏß ŠAA«CÅ'DÐ'EÞ'R´v¿â ÏÏßR´v¿â ÏCDE]_<“$“'AAÏß„ < 'AAªBªBö­BÕÉ÷<®B÷<9)
-ÜnL…Ëœ¶'AAüÝ:øG£HHGÍìÙ¦ çèÙ¦ø|‡ AA«CÅ'DÐ'EÞ'R´v¿â ÏÙ¦IâdfÜß
üž HE Create a JSON deserializer from one of the possible serde_json inputÁ sources.Áü úü„
PM When reading from a source against which short reads are not efficient, suchÁüÙ
OL as a [`File`], you will want to apply your own buffering because serde_jsonÁü­ :7 will not buffer the input. See [`std::io::BufReader`].Áì úüô HE Typically it is more convenient to use one of these methods instead:ÁÁ úôÉ  - Deserializer::from_strÁüì  - Deserializer::from_sliceÁü‘
! - Deserializer::from_readerÁ·
úÜ¿
 [`File`]: std::fs::FileÁæ
Ù¦„·FF
IøÙ¦Å
üÅC»À¼­£KK¸´ Êà ÏßAA«CÅ'DÐ'EÞ'R´v¿â φßLXZü»%ü30 Creates a JSON deserializer from an `io::Read`.ÁÇúüÏJG Reader-based deserializers do not support deserializing borrowed typesÁüžKH like `&str`, since the `std::io::Read` trait has no non-copying methodsÁüîHE -- everything it does involves copying bytes out of the data source.Á\ÂÏßí½JJ
LÏßreaderÁ4Îü¡*±NNAA«CÅ'DÐ'EÞ'R´v¿â ϶àO¦ü†*üÒ/, Creates a JSON deserializer from a `&[u8]`.ÁT ±
çÁMM
O±bytesÁ,˜üó(±QQAA«CÅ'DÐ'EÞ'R´v¿â ÏœáRøüÕ#ü¢.+ Creates a JSON deserializer from a `&str`.ÁDÜ ±×ÃPP
R±¾ 嬵 Ë Ý Ñ ó, Ò8¬ Ó& Ô8¼
Û710ÁÝ à, â8­ ã& ä8¼$ ê, ì8® í& î8*õ ø Ú8,‚, ˆ8®   Ô 8® *, ž8¬ Ÿ¡8® ¤ ¦7õĨ« ® É
, ¯8¬ ° ²8® ´ 7õĸ», ¾8­ ¿ Á8® à Å7õÄÇ$ Ê% Ûäà´ÜzS3©·\ÇUVXY[\VW´ÜYZ´Ü\]´ÜtyTT
VŽ–‘–´ÜTTíÉTT”–TT
Y©–¬–´ÜTTÓÊTTª–¯–TT
\Ä–Ç–´ÜTT¹Ë£TTŒì´Ü_bü„],‡'´ÜÿËÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÿËøÎ<ͨ^ø`§aa`^ÍìÿË Ì<ÿËø„Ð
_øÿË$•visitorÁ<DFü×2'¹´Ü ¹ù;¹ͨ^ ò^
bexpÁíüÖ!'ød£edeÞ¶ à!ï¶Lã!„·fgijklmnopqrux{|~ƒˆŠŒŽÛ!moüï##ü„"^[ The `Deserializer::end` method should be called after a value has been fully deserialized.Áüç"]Z This allows the `Deserializer` to validate that the input stream is at the end or that itÁüÉ#! only has trailing whitespace.Áö#º º„·Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ͨc ú#c
føÙ¦$ÿ#ü‰&eüÀ%DA Turn a JSON deserializer into an iterator over values of type T.ÁL&„·ú¥c¥hhcÍìߦ š&û;ߦø¤Ù&
gøÙ¦ߦ$&35ü’83$ 8» »„·Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
—‰ͨc ¥8c
iøÙ¦$ª8üì8(dï8'¼ ¼„·Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ͨc ü8c
jøÙ¦$9´Ó9DÖ9'½ ½„·c ß9c
køÙ¦$ä9ü”:-L—:'¾ ¾„·ýÕc ¡:c
løÙ¦$¦:üè:-Œë:'¿ ¿„·®×c ý:c
møÙ¦$;ü–<+,™<'À À„·‚©ͨc Ÿ<c
nøÙ¦$ <å 4¦<üò=0Tõ='Á Á„·‚©ͨc €>c
oøÙ¦$>å 4‡>ü@4@' „·ýÕc ¡@c
pøÙ¦$¦@üêB<ŒíB'ÃÄ Ã„· Äù;Äͨc ÿBc
qøÙ¦$„C“ΊCü“Q|”¡QÅ Å„·§Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
µÞÐÎ<ͨcÐs§tst ½QcÍìµÞ ºQÌ<µÞÐŒýQ
røÙ¦ÐµÞ$ÂQŽÍ<ÈQ$´QHJüáY}œïYÆ Æ„·µÞºÞcÐv§wwv ŒZcÈß ‰ZÙߌÌZ
uøÙ¦ÐµÞ$‘ZŽÍ<—Z$ƒZ:<ü¼`}œÊ`Ç Ç„·µÞºÞcÐy§zyz ç`cÈß ä`Ùߌ§a
xøÙ¦ÐµÞ$ì`ŽÍ<ò`$Þ`:<ü g
;¹C-Œ[—æÄSJœÁ[= ¶è\ö[M¨ã"4„+\0IΕ 2a\|ÛA»H•\[RêßÊ\ysKÒpË]WPÞMþ4]mä•Hà=j]Ä®]-¬f ]uµ8W€Ô]m  ^«|M$D@^ÖÛ`-Ut^̹xª©^UHß^¯–P.5_[¼äypH_rë]£Œ~_'³:ïå³_ñ_ kßÝç_í·ËEWÕ`ôRŸ‹V¥R`±'‡.¬N‡`ñ(:W"½`—Y„v5ò`Ãüo%ÔÂ&aôûË.‰s\ax}?½5È‘aÖ\,C:Æa 4³÷ÓÈûa‡Ðz„]1b©„™å´ebÔåÿ"›b„ ï_SõÐb¥èê7¨2cÏ¢åER:cÁ…¯k“pc2gFx³¤cþ@BXVàÙcŸh)÷5,dÆÂótC7Ddx³0REydVà¼fY–¯d6 6à÷½ãdCCØu­esTNÓØNeìÇô„Gƒeèù1e¸eax~Z¾îe= øÖÓ"f β¶ÌˆWf_äÿjfù°»îßbÂf8jê—ûöf†Då}º,gÔJ#¯Žôag‰ìZ²q–gë$§ñÌgwWÓˆh×”Ê,ë5h
:ý7ÊekhHDþbž¡hZÕ½û…gÕh±J­zgÁ
i¯N¬¬à¸@iZb××çtiñ:Í
ß ªiÖD hTài VÈB®ijkzÓ„IjsYH åj¤7-4ï³j
…8ëèjLð¦†Á%k0V(ô˜wSk»k21UˆýÞj¾k*do^Ëók5= 6~Ã'l ŽÃ]´]lÑÇ8šºlÆùÆ@é4Çl7¸ø#ýl#s:V!2mëOBÉ«©fmæã’»TœmpÎ;5Ž´Ñm б!nr-3ª;n™güßRJqnû—眥nßaú}!Ûn,}¼î”âovœk*:Eo”ƒµbzo=$qE}°oÌmÍ–œäo\È€¼ÃpÏ9}ÐUPpCˆœDë „pTªÃ&)¹pé”4osïpÝÁ%¨#qVA1/XqkY‘ýº¶Žqã×zÞ42ÃqÜÂþ÷qSñŸ›rþ-rÔöC¡¿br‰ô”‰Én—r«1úë{JÍr _|sNsÍv[Ð0â6sTr½šlsÐtÇ"¶à¡sRy«ãXÖs†¦Wï tÈöÝquAtztUÎÒutž˜ÑêG«tcÿÂ2± át<¿sÝOu ¯PßÔ£Jugm’ e¦€uÀwNþÏ´uñÊâýêuÖþL­~B vŒ> XSTv/NÈîåg‰v»azjßÁ¿v}Œ¢+ÙóvZœ/vÏ(wpƒû-T_w&2½œb“w°~ìÙ:Èw\žç4@IþwùÂ!Èí2x¸óT):©gx¥0ª³ˆ“xg^Jp5|Òxö\ÌBy3tâ<y1 ¨/L
ry=È’;Ÿ¦yMzw
Ç4Üyp¬Šfü zŒW-€; Fzo­8`Š‹{zel#|67±zG,…åz^Y÷!Eæ{Û—:5ëÏP{Ò=‰æ…{F+ƒßDº{L8û± kð{_zžÎ…$|ö‡FB§Y|úTÏk‰|8*ÃÆ«
Ä|Çôs¸V
ù|øñf¬P/};—Àkc}
=!°w˜}LŒ)\È”Î}°÷™9ý~œuˆ<ä7~ªKÝm~â[@JOª¢~ÚrÐãT×~ä*
ºÙ‚nQ:B)#ÊåÈv3t¬< Èë…óÌá¨íÎüÃá”Ðá ãá Žä éá ÷á, êá8methodÁ4ëá& ñá8¼,òá*ùá üá ¼â8·”†â ˜â ™â µâ, šâ8è4›â$ ¡â8·”£â% ¶â% ½â Äâ àâ , Åâ8è4Æâ& Ìâ8¼,Íâ$ Òâ, Ôâ8«,Õâ& Úâ8¼,Ûâ*ââ åâ ‹ä8 ïâ, òâ8è4óâ ùâ8§ úâ ûâ üâ ã8$ýâ$ ã8ŽÍ<ƒã& Šã8§ Œã(ã8Í4’ã ˜ã8§ ™ã'šã8—B,œã ¡ã8$,«ã8§ ½ã& ¾ã8¾Àã'Âã8öA<Äã Ëã:øÌã Ïã$ Ðã Úã …ä8$èã ìã, íã8«,îã óã ûã8ŽÍ<ôã% Œäüºä(» 
Ü›äìšäü‘ä(ÜÇä ãä –å éä öä, êä ëä ôä, ìä8bodyÁ$íä& ñä8¯òä
õä*øä ûä “å, …å †å Œå, ‡å8ã–$ˆå
å% ”åäèæ|õæ …ç ‰ê ‹ç ¤ç, Œç8thisÁ$ç& ‘ç8¼,’ç, ˜ç ™ç ¢ç, šç8ã–$›ç& Ÿç8¯ ç
£ç*¦ç ©ç †ê 8ø ܳç Îç Ðç é, Þç8‘˜$ßç ãç8Þ|äçôç7 ÷ç% øç8†è, ‰è8‘˜$Šè Žè8Þ|èŸè7ˆ ¢è ¤è ƒé84¶è8½è Àè ôè, Áè8‘˜$Âè Æè8÷TÇè Ñè óè8LÒè'Ûè8«9´Ýè% õè, ˜é8‘˜$™é, žé Ÿé ¥é,  é8ã–$¡é
¦é8ø ܱé Ìé Îé €ê, Üé8‘˜$Ýé áé8Þ|âéòé7 õé% öé% ‡êüŒêFø8ࣜàœÍìÚ¢ –êèÚ¢øL™ê—¢ž ˜šœž ¢¤¦¨ª¢¤¦¨ª¬®°²´¸º¼¾ÀŠ<<<<<“<•<™<<<Ÿ<£<¥<—<¡<§<©<«<­<¯<±<³<µ<·<¹<»<½<¿<Á<Ã<Å<Ç<° œ¢¦¼¨¬Â˜²ž¢¸¤¨¾ª®žš´ ¤º¦ªÀ‘êƒTÙê,Þêššͨü€ëb|ƒë—¢µÞÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
µÞøÎ<ͨš§ŸŸšÈß “ëÌ<µÞø„Ñë
žø8Ú¢µÞ$–ëŽÍ<œëFHü˜€c„›€—¢µÞ¯¢š§¡¡šÈß ¬€»£„ê€
 ø8Ú¢µÞ$¯€ŽÍ<µ€8:ü±Œc„´Œ—¢µÞ¯¢š§££šÈß ÅŒ»£„ƒ
¢ø8Ú¢µÞ$ÈŒŽÍ<ÎŒ8:üÌb—¢µÞ¯¢š§¥¥šÈß ß»£Ž
¤ø8Ú¢µÞŽÍ8:üÀ”e”Ô—¢µÞ¯¢š§§§šÈß Ö”»£„”•
¦ø8Ú¢µÞ$Ù”ŽÍ<ß”8:ü–®düÝ•IF Parses a JSON string as bytes. Note that this function does not checkÁü«–52 whether the bytes represent a valid UTF-8 string.Áå–úüí–FC The relevant part of the JSON specification is Section 8.2 of [RFCÁT¸— 7159]:ÁÇ—úüÏ—KH > When all the strings represented in a JSON text are composed entirelyÁüŸ˜EB > of Unicode characters (however escaped), then that JSON text isÁüé˜GD > interoperable in the sense that all software implementations thatÁüµ™JG > parse it will agree on the contents of names and of string values inÁÌ„š > objects and arrays.Á,¢šü¬šLI > However, the ABNF in this specification allows member names and stringÁüýšLI > values to contain bit sequences that cannot encode Unicode characters;ÁüΛKH > for example, "\uDEAD" (a single unpaired UTF-16 surrogate). InstancesÁüžœIF > of this have been observed, for example, when a library truncates aÁüìœC@ > UTF-16 string without checking whether the truncation split aÁü´HE > surrogate pair. The behavior of software that receives JSON textsÁüžKH > containing such values is unpredictable; for example, implementationsÁüÑžLI > might return different values for the length of a string value or evenÁü¢Ÿ&# > suffer fatal runtime exceptions.ÁÍŸúüÕŸ30 [RFC 7159]: https://tools.ietf.org/html/rfc7159Á úü• HE The behavior of serde_json is specified to fail on non-UTF-8 stringsÁüâ GD when deserializing into Rust UTF-8 string types such as String, andÁü®¡KH succeed with the bytes representing the [WTF-8] encoding of code pointsÁüþ¡)& when deserializing using this method.Á¬¢úü´¢/, [WTF-8]: https://simonsap
ØÈµÞ¯¢š§½½šÈß àÖ»£„ü×
¼ø8Ú¢µÞ$ìÖ¶È,úÖ_fieldsÁ<—׎Í<Á×RTüÎâ»ü¼áYV Parses an enum as an object like `{"$KEY":$VALUE}`, where $VALUE is either a straightÁüšâ! value, a `[..]`, or a `{..}`.Á„Ñââ—¢ âþеޯ¢š§¿¿ ƒãšÈß â⻣„øã
¾ø8Ú¢µÞ$îâ¶È,üâ _variantsÁL‘ãŽÍ<½ãTVü—ëi´šë—¢µÞ¯¢š§ÁÁšÈß ±ë»£„ïë
Àø8Ú¢µÞ$´ëŽÍ<ºë8:ü¸ìj¼»ì—¢µÞ¯¢š§ÃÚÈß Ó컣„‘í
Âø8Ú¢µÞ$ÖìŽÍ<Üì8:ÜòíLùí'±Å£ÆÅÆÞ¶ ‡îÙ¦±ŠîÖ×Ü”îÄÄ‚%Ǿ'È«%'YƯ)í´W-±Ù¦YƯ)í´W-ÇȃîÅv”î'ÄÄ ±„·\µî,µî'ÄÄüÅî ±Ê£ËËÊÞ¶ ÎîÖ×Ñîî×ÌÊîÊüìî+ïî'öØî×ÉÉ
̱٦¾óîüÉïHøÎ±Ï£ÐÎÏÐÊž ×ïÜžLÚïÚ¢±æïî¢ÑÒ=Ž=ÒÎïÓïBDÏT˜ð,ðÍÍͨü±ðvŒ´ðã ãֿٿڿ«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ¬Üø…<ͨÍ¥ÓÓ ÉðÍÍì¬Ü Æðƒ<¬ÜøÄŽñ
Òø±Ú¢¬Ü$ÎðseedÁ$ÔðJLü¶ñr„¹ñ'ä äî¢Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ͨøÕ±Ö£×Ö×Õ øñÊž ÓñÜžLÖñ–Ûâñ
Ôø±Ú¢seqÁóñÊñÏñFHÖܨúL¯ú'±Ù£ÚÚÙÞ¶ ½úÖ×ÀúÖ×ÜÊúØØ¯Û¾'Ü«%'L?_[
ZËw±Ù¦L?_[
ZËwÛܹúxzÙvÊú'ØØöØ\ëú,ëú'ØØüûú ±Þ£ßÞßÞ¶ „ûÖׇûÍáà€ûÞü¢û+¥û'öØÍáÝÝ
à±Ù¦¾©ûüÿûHøâ±ã£ääâãÊž üÜžLü–Ûœü½£åæì•=–=˜=æì„ü‰üFHãTÎü,Óüááͨüçürlêüå å½£œÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙˆæø…<ͨáœçç ûüáÍìˆæ øüƒ<ˆæøÄÀý
æø±Ú¢ˆæ$€ýÉÝ$†ýGIüèýWdëý'æ æ½£˜ßøé±ê£ëéêë ™þÊž þÜžL„þ–Ûþ
èø±Ú¢Ø”þøýýýCEêüÀˆl|Èç ç½£µÞÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
µÞø…<ͨá§íí ÖˆáÈß Óˆƒ<µÞøÄ“‰
ìø±Ú¢µÞ$ÛˆÉÝ$áˆGIü‘Šl˜Š'±ï£ðïðÞ¶ ªŠÖ×­ŠÖ×Ü·Šîî—(ñ¾'ô±l\q/ø±Ù¦ô±l\q/øñ¦Škmïi·Š'îîöØü׊$±ó£ôôóÞ¶ àŠÖ×ãŠíìõÜŠóü‚‹+…‹'öØíìòò
õ±Ù¦¾‰‹üÖ‹Mø÷±ø£ùøù÷Êž ä‹ÜžLç‹–Û󋌤úûü§=¨=©=üÛ‹à‹BDøTªŒ,¯ŒööͨdÂŒ<ÇŒööŒ¤üÜŒldߌŒ¤µÞÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ŒëŒ¤ͨö§ýýöÈß ìŒÏëį
üø±Ú¢µÞ$ïŒÉÝ$õŒ9;üª’Pøÿ±£ÿÊž ¸’ÜžL»’–ÛÇ’Œ¤ƒˆ¯=°=±=µ=·=ƒˆ¯’´’\^T,†“þþͨüš“#dŒ¤îÒþþ
ƒø±Ú¢$ª“üù“l¤ü“Œ¤¬ÜÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÄÝͨþ¥þþÝ ‘”ÞÄÌ”
ø±Ú¢¬Ü$””ÉÝ$š”9;ü™•mlœ•Œ¤µÞ¯¢þ§þÈß ª•»£„õ•
ø±Ú¢µÞ$­•èÌ$³•ŽÍ<À•CEüÔ–t×–Œ¤þеޯ¢þ§þÈß æ–»£„Å—
ˆø±Ú¢µÞ$é–Ë4ï–ŽÍ<BDü±˜#Œ¸˜'±£ŒŒÞ¶ ΘÖ×јÖ×ÜÛ˜ŠŠ·*¾'@í¤ºiL†:±Ù¦@í¤ºiL†:ʘkmiÛ˜'ŠŠöØüû˜(±£Þ¶ „™Öׇ™ðù€™üª™+­™'öØðùŽŽ
±Ù¦¾±™ü‚šQø±£Êž šÜžL“š–ÛŸšá¤˜§=¨=©=˜‡šŒšBDTÚš,ßšͨdòš<÷šá¤üŒ›ldᤵÞÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Œëá¤ͨ§Èß œ›ÏëÄß›
˜ø±Ú¢µÞ$Ÿ›ÉÝ$¥›9;üáœTø±œ£œÊž ïœÜžLòœ–Ûþœá¤žŸ ¢¤¯=°=±=µ=·=Ÿ¤ ¢æœëœ\^œššͨüÕ#á¤îÒšš
Ÿø±Ú¢ü•žm¤˜žá¤
8Û$¥© ©© ¼©7ˆ$ª©#®©7$±© ¶©7$¸©*¾© Á© ©8 Ô©*Ö©84Ù©8à© ã© ª8$ä© è©8¾é© ë©8ë,ì© ñ© ª8Lò©'û©8á7”ý©$ ‘ª8®ª8»,²ª ¸ª8½ºª ½ª ¾ª Ùª8$¿ª ê8¾Ī ƪ, Ǫ8–¯DȪ Ъ ت8ŽÍ<Ѫ% Úª8,éª8½ïª òª óª ‚«8$ôª øª8¾ùª ûª8$üª €« « „« ™¬8Û$–« š« Ÿ«7$›«*¡«8$¤« ¨«8¾©« ««8´D¬« ´« µ«$ ¶«8 È«*Ê«84Í«8Ô« ׫ Ь8$Ø« Ü«8¾Ý« ß«8÷Tà« ê« ‰¬8Lë«'ô«8€6œö«$ ‹¬8«¨¬ ª¬ °¬8»,«¬% Á¬üƬ6ø¬±­£®¬­®Êž ԬܞLò¬¶¥¬ˬЬ#%üÈ­Pø°±±£²°±²Êž Ö­ÜžLŽ®¶¥³´®°²´¸º¼¾ÀÂĸº¼¾ÀÆÈÊÌÎÐÒÔÖØÚÜŠ<<<<“<•<—<™<<<Ÿ<¡<£<¥<<±<·<Ã<­<¯<§<©<«<³<µ<¹<»<½<¿<Á<Å<Ç<ÂØ´²Èº¸ÎÀ¾Ô®ÄڴʼºÐÀÖ°ÆÜ¸Ì¾Ò¼Í­Ò­|TŸ®,¤®¯¯ͨüÆ®b|É®¶¥µÞ¯¢¯§µµ¯Èß Ù®»£„—¯
´ø±Ú¢µÞ$Ü®ŽÍ<â®9;ü±·c„´·¶¥µÞ¯¢¯§··¯Èß Å·»£„ƒ¸
ø±Ú¢µÞ$È·ŽÍ<η9;ü²¿e”µ¿¶¥µÞ¯¢¯§¹¹¯Èß È¿»£„†À
¸ø±Ú¢µÞ$Ë¿ŽÍ<Ñ¿9;üüÀÔÿÀ¶¥ØÈµÞ¯¢¯§»»¯Èß šÁ»£„ìÁ
ºø±Ú¢µÞ$ÁÐ $£ÁŽÍ<·ÁBDü‘ÄÁ„”Ķ¥ØÈþеޯ¢¯§½½¯Èß ¥Ä»£„ÁÅ
¼ø±Ú¢µÞ$±ÄÐ $¿ÄÀDÛÄŽÍ<†ÅKMü¬ÆdŒ¯Æ¶¥µÞ¯¢¯§¿¿¯Èß ÁÆ»£„ÿÆ
¾ø±Ú¢µÞ$ÄÆŽÍ<ÊÆ9;üÛÇg¤ÞǶ¥µÞ¯¢¯§ÁÁ¯Èß óÇ»£„±È
Àø±Ú¢µÞ$öÇŽÍ<üÇ9;ü•Ð(üàÊB? Iterator that deserializes a stream into multiple JSON values.Á£Ëúü§ËMJ A stream deserializer can be created from any JSON deserializer using theÁüõË%" `Deserializer::into_iter` method.Á›ÌúüŸÌ[X The data can consist of any JSON value. Values need to be a self-delineating value e.g.ÁüûÌZW arrays, objects, or strings, or be followed by whitespace or a self-delineating value.ÁÖÍú<ÚÍëºüâÍ*' use serde_json::{Deserializer, Value};ÁÎú|‘Îàõü¡ÎA> let data = "{\"k\": 3}1\"cool\"\"stuff\" 3{} [0, 1, 2]";ÁãÎúüçÎGD let stream = Deserializer::from_str(data).into_iter::<Value>();Á¯Ïúì³Ï for value in stream {ÁüÑÏ+( println!("{}", value.unwrap());ÁLýÏ·¥,‡Ðݺ<Ð뺔 ÐøÃ£Ä¥ÅÃÄÅÞ¶ ¸ÐýÔ »Ðú¥<ê_B<$ÆÇÈÉʳÐ79;=œÄÐÄÐ'„·lÝÐ4ÝÐ'ÂÂdðÐ4ðÐ'´‚Ñ4‚Ñ'¨¯Fu\»ŸߦôžÑDžÑ'¨¯Fu\»Ÿ øüÁÑhøÌ£Í¥ÎÎÌÍÞ¶ ËÑýÔ ÎÑï¶|üÑŽÕ¤”Òú¥ÏÐÑÆÑ468:Ü“Õü°ÒIF Create a JSON stream deserializer from one of the possible serde_jsonÁ”þÒ input sources.Á
# ExampleÁ½€úüÁ€# Reading the contents of a file.Áå€ú<é€ëºÜñ€ use serde::Deserialize;ÁúÔ‘ use std::error::Error;Á´¬ use std::fs::File;ÁÜà use std::io::BufReader;ÁÄß use std::path::Path;Áøúüü! #[derive(Deserialize, Debug)]ÁŒž‚ struct User {Áä°‚ fingerprint: String,ÁÌÍ‚ location: String,Á,ç‚ݺí‚úüñ‚UR fn read_user_from_file<P: AsRef<Path>>(path: P) -> Result<User, Box<dyn Error>> {Áüǃ74 // Open the file in read-only mode with buffer.Áüÿƒ%" let file = File::open(path)?;Áü¥„*' let reader = BufReader::new(file);ÁЄúüÔ„GD // Read the JSON contents of the file as an instance of `User`.Áüœ…1. let u = serde_json::from_reader(reader)?;ÁÎ…úìÒ… // Return the `User`.Álð…
Ok(u)Á,þ…ݺ„†ú|ˆ†àõ<˜†ŸÒ´ † # fn fake_main() {Áü·†:7 let u = read_user_from_file("test.json").unwrap();Áìò† println!("{:#?}", u);Á,ݺ<–‡ëºž‡úü¢‡0- Reading from a persistent socket connection.ÁÓ‡ú<ׇëºÜ߇¡Îû‡úÔÿ‡ÓÎÜšˆ—Ïü¶ˆ+( use std::net::{TcpListener, TcpStream};Áâˆúüæˆ!ìÏŒˆ‰—Ð䚉²ÐÌ·‰ØÐ,щݺ׉úüÛ‰a^ fn read_user_from_stream(stream: &mut BufReader<TcpStream>) -> Result<User, Box<dyn Error>> {Áü½ŠC@ let mut de = serde_json::Deserializer::from_reader(stream);Áü,) let u = User::deserialize(&mut de)?;Á®‹úl²‹ìÔ,À‹ݺÆ‹ú|Ê‹àõ<Ú‹ŸÒ´â‹ºÕüù‹DA let listener = TcpListener::bind("127.0.0.1:4000").unwrap();Á¾ŒúüÂŒ/, for tcp_stream in listener.incoming() {ÁüòŒC@ let mut buffered = BufReader::new(tcp_stream.unwrap());Áü¶DA println!("{:#?}", read_user_from_stream(&mut buffered));Á·¥,…Žݺ<‹Žëº“Žúd—Ž # ErrorsÁ¤Žúü¨ŽMJ This conversion can fail if the structure of the input does not match theÁüöŽPM structure expected by `T`, for example if `T` is a struct type but the inputÁüÇOL contains something other than a JSON map. It can also fail if the structureÁü—OL is correct but `T`'s implementation of `Deserialize` decides that somethingÁüçOL is wrong with the data, for example required struct fields are missing fromÁü·‘KH the JSON map or some number is too big to fit in the expected primitiveÁLƒ’ type.Á»À|“’¼\Û’ÏßÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
×Ëͨ£â¥ãã⸴ ç’Íì×Ë ê’Þ½|<×ˤ§“
áÏß×ËrdrÁí’JLEGü’œTüé“@= Deserialize an instance of type `T` from bytes of JSON text.Áª”úl®”´Í¼”ú<À”ëºÜÈ”¡Îä”úüè”!ìÏŒŠ•—Ð䜕²Ð̹•ØÐ,Ó•ݺÙ•ú|Ý•àõüí•%" // The type of `j` is `&[u8]`Á”“– let j = b"Ál¦–ÃÌü´–85 \"fingerprint\": \"0xF9BA143B95FF6D82\",Áüí–0- \"location\": \"Menlo Park, CA\"Á|ž— }";Á®—úü²—96 let u: User = serde_json::from_slice(j).unwrap();Áìì—ŸÖ,Š˜ݺ<˜ëº˜˜údœ˜ÎÞ©˜úü­˜MòÞüû˜PÊßüÌ™O¥àüœšOÿàüìšOÙáü¼›K³âLˆœˆãT™œŠÃÇä±å¥ææåÏå ¨œû;×˱œÒœ
ä±×ËÁ «œ¤œ;=ü¼¥Qü”C@ Deserialize an instance of type `T` from a string of JSON text.ÁØú´ÍêúëºÜö¡Î’žúü–ž!ìÏŒ¸ž—ÐäÊž²ÐÌçžØÐ,Ÿݺ‡Ÿú|‹Ÿàõü›Ÿ$! // The type of `j` is `&str`ÁŒÀŸ let j = "ÁlÒŸÃÌüàŸ8—èü™ 0Úè|Ê ”éÚ úüÞ 74 let u: User = serde_json::from_str(j).unwrap();Áì–¡ŸÖ,´¡ݺ<º¡ëº¡údÆ¡ÎÞÓ¡úüסMòÞü¥¢PÊßüö¢O¥àüÆ£Oÿàü–¤OÙáüæ¤K³âL²¥ˆãDÃ¥ùÄÇä±è¥ééèÏå Ð¥íœù¥
ç±×˾ ӥ̥-/lâmü6 3 When serializing or deserializing JSON goes wrong.Á,êmûýŠŽÚÛáâãÞá9C èêë½áY êìß4r úHêîêDz —6êï×$•  `êñp,› ¿cêòpÂcêòt<¢ Äcêó  ¾[
D A I/O stream fails immediately following a previously read newlineÁt character.Á4¥ ì ìͨÿ ¬ ÿ
$­ ü¯" üá ( % Categorizes the cause of this error.ÁŽ úü– F C - `Category::Io` - failure to read or write bytes on an I/O streamÁüá E B - `Category::Syntax` - input that is not syntactically valid JSONÁü«
B ? - `Category::Data` - input data that is semantically incorrectÁüò
8 5 - `Category::Eof` - unexpected end of the input dataÁD¶ í íͨ÷¦ÿ ¿ ÿ
 Ü• ü©G D Returns true if this error was caused by a failure to read or writeÁÜõ  bytes on an I/O stream.Á,œ î îͨÿ ¢ ÿ
ƒ üÌ üæ? < Returns true if this error was caused by input that was notÁìª  syntactically valid JSON.ÁLÓ ï ïͨÿ Ý ÿ
 ì˜ ü¥@ = Returns true if this error was caused by input data that wasÁÜê  semantically incorrect.ÁŠ úü’L I For example, JSON containing a number is semantically incorrect when theÁüã0 - type being deserialized into holds a String.Á<Ÿ ð ðͨÿ § ÿ
 äâ üíL I Returns true if this error was caused by prematurely reaching the end ofÁœ¾  the input data.ÁÖ úüÞJ G Callers that process streaming input may be interested in retrying theÁü­0 - deserialization once more data is available.Á4é ñ ñͨÿ ð ÿ
 ü£+0 üµ K H The kind reported by the underlying standard library I/O error, if thisÁü…!J G error was caused by a failure to read or write bytes on an I/O stream.ÁÔ! úlÜ! ´Íî! ú<ö! ëºÔ‚"  use serde_json::Value;Áü¡") & use std::io::{self, ErrorKind, Read};Á¬Ï"  use std::process;Áé" úüñ"/ , struct ReaderThatWillTimeOut<'a>(&'a [u8]);Á¥# úü­#1 . impl<'a> Read for ReaderThatWillTimeOut<'a> {Áüã#A > fn read(&mut self, buf: &mut [u8]) -> io::Result<usize> {Áü©$"  if self.0.is_empty() {ÁüÐ$E B Err(io::Error::new(ErrorKind::TimedOut, "timed out"))Á¤š%  } else {Áü³%  self.0.read(buf)ÁlØ%
Lê% ·¥,ø% ݺ& ú|Š& àõüž&: 7 let reader = ReaderThatWillTimeOut(br#" {"k": "#);ÁÝ& úüå&> ; let _: Value = match serde_json::from_reader(reader) {Áü¨'  Ok(value) => value,ÁÜÌ'  Err(error) => {Áüì'G D if error.io_error_kind() == Some(ErrorKind::TimedOut) {Áü¸(U R // Maybe this application needs to retry certain kinds of errors.Á) úìš)  # return;Áļ)  } else {ÁüÙ)2 / eprintln!("error: {}", error);Áü*% " process::exit(1);ÁŒº* lÐ* Ë’Tâ* ãŠ,ñ* ݺ<û* 뺻À|+ ¼‡+ lª+ ò òͨÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙËK*ÌKÍKNotFoundÁÎKÏKPermissionDeniedÁÐKÑKConnectionRefusedÁÒKÓKConnectionResetÁÔKÕKHostUnreachableÁÖK×KNetworkUnreachableÁØKÙKConnectionAbortedÁÚKÛK NotConnectedÁÜKÝK AddrInUseÁÞKßKAddrNotAvailableÁ àKáK NetworkDownÁ
âKãK
BrokenPipeÁ äKåK
AlreadyExistsÁ æKçK
WouldBlockÁ
èKéK
NotADirectoryÁêKëK IsADirectoryÁìKíKDirectoryNotEmptyÁîKïKReadOnlyFilesystemÁðKñKFilesystemLoopÁòKóKStaleNetworkFileHandleÁôKõK InvalidInputÁöK÷K InvalidDataÁøKùKTimedOutÁúKûK WriteZeroÁüKýK StorageFullÁþKÿK NotSeekableÁ€LL
QuotaExceededÁLƒL FileTooLargeÁ„L…L ResourceBusyÁ†L‡LExecutableFileBusyÁˆL‰LDeadlockÁŠLLCrossesDevicesÁŒLL TooManyLinksÁ ŽLLInvalidFilenameÁ!LLArgumentListTooLongÁ"L“L InterruptedÁ#”L•L UnsupportedÁ$L—L
UnexpectedEofÁ%˜L™L OutOfMemoryÁ&šLL
InProgressÁ'œLL¯(žLŸL
UncategorizedÁ)ÚóÞtÿÂ&:ÿ ¸+ ÿ
$¹+ ô¤3 »À|í2 ¼ç2 Ÿ¨ëÌ¥: üÉ36 3 Convert a `serde_json::Error` into an `io::Error`.Á„4 úüŒ4I F JSON syntax and data errors are turned into `InvalidData` I/O errors.ÁüÚ4: 7 EOF errors are turned into `UnexpectedEof` I/O errors.Á™5 ú<¡5 뺄­5
use std::io;ÁÂ5 ú”Ê5  enum MyError {Á´á5  Io(io::Error),Áüü5  Json(serde_json::Error),Á,¡6 ݺ«6 úü³6. + impl From<serde_json::Error> for MyError {Áüæ64 1 fn from(err: serde_json::Error) -> MyError {ÁüŸ7, ) use serde_json::error::Category;ÁüÐ7"  match err.classify() {Áü÷7!  Category::Io => {Áü8+ ( MyError::Io(err.into())ÁŒÍ8 ç—üã8F C Category::Syntax | Category::Data | Category::Eof => {Áü®9& # MyError::Json(err)ÁŒÙ9 ç—lï9 Ë’L: ·¥,: ݺ<™: ëº$¨: ͨŸ¨ˆˆ
µ ­: „³= Lº= êÛ¬`ðÚã<ûtŒ|Ê= $Ê= ꊊ‚©\ß= $ß= ꊊlð= 4ð= ꊊ̂> L> ‚©E€Ã;֬옚œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ·¸¹º»¼½¾¿ÀÁÂÕã‚©Ÿ¨‚©˜šœž ¢  ¤

¦  ¨  ª

¬®°²´¸º¼¾ÀÂÄÎÄÎŽŽ
ÄÎÄÎÕã‚©ŽŽ¼°DÕ> ŽŽÕãÏÏŽŽ
ÏÏŸ¨‚©ŽŽ«±L¬? ŽŽŸ¨œß? ŽŽ‚©ŽŽ‚©¬ž@ ŽŽ‚©ŽŽ‚©¬Þ@ ŽŽ‚©ŽŽ‚©¤¢A ŽŽ‚©ŽŽ‚©lìA ŽŽ‚©ŽŽ‚©´ÁB ŽŽ‚©ŽŽ‚©ÄŸC ŽŽ‚©ŽŽ‚©ŒÿC ŽŽ‚©ŽŽ‚©ŒÎD ŽŽ‚©ŽŽ‚©œ“E ŽŽ‚©ŽŽ‚©lÎE ŽŽ‚©ŽŽ‚©lúE ŽŽ‚©ŽŽ‚©„ËF ŽŽ‚©ŽŽ‚©¼†G ŽŽ‚©ŽŽ‚©üÜG" ŽŽ‚©ŽŽ‚©„©H ŽŽ‚©ŽŽ‚©”öH ŽŽ‚©ŽŽ‚©¤¿I ŽŽ‚©ŽŽ‚©üˆJ ŽŽ‚©ŽŽ‚©lðJ ŽŽ‚©ŽŽ‚©”ÉK ŽŽ‚©ŽŽ‚©ĈL ŽŽ‚©ŽŽ‚©´öL ŽŽ‚©ŽŽ‚©T‘M ͨÄÅÆü®MI 4¼M ‚©ͨÃÃ
Ć3$ÃM š$ÔM 4áM üìO# 4ÓO óO Ÿ¨ͨÃÃ
Åë,öO üÙQb dçQ ͨͨÃÇÇÃÍì¬À ôQ –"¬ÀïåÔ R ¬Àïå˜"ͨ,µR
ƬÀ$÷Q ± ýQ GIÔ´S ‚©ÉÅcÉüÕS4 ØS óôõ ó‚© ô c cˆ¢cµ
 `£cÕÉ `àB¤GS
õÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ŸÈŸÈ Èè éBLÈ ÜS È
É$ÝS ± ãS ü’f" ͨË¿Ëü×f9 »À|Áf ¼»f 4Úf ö öͨÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ ö¾Ê áf Ê
Ë$âf ´Œh ͨÍÅcÍü©h4 ¬h ÷øù ÷ͨ ø c cˆ¢cµ
 `£cÕÉ `àB¤GS
ùÚÂÌ °h Ì
Í$±h ± ·h Ôi Û¬ÏÅcÏü®i4 ±i úûü úÛ¬ û c cˆ¢cµ
 `£cÕÉ `àB¤GS
üÚÂÎ µi Î
Ï$¶i ± ¼i ¤õl ͨÑÀcÑüm4 “m ýþÿ ýͨ þ c cˆ¢cµ
 `£cÕÉ `àB¤GS
ÿÚÂÐ —m Ð
Ñ$˜m ± žm Ĉo ͨÓÕÖ³;µ;¶;ÓÕÖü³o& 4¶o ÿÊͨÒ¥ÔÔÒ©ú ½o ÄcÿÊ<Ào
ÓÿÊmsgÁÉo (*ü—pF dšp ¼;¾;¿;XÀ;ˆÁ;Â;íŸÃ;ˆÄ;Å;Ž Æ;ˆÇ;È;É;ˆÊ;Ë;bÌ;ˆÍ;Î;ÞÏ;ˆÐ;Ñ;÷ Ò;ˆÓ;Ô;•¡Õ;Ö;¬×;Ø;¹¡ Ù;Ú;Ö¡
Û;Ü;ç< Ý;Þ;| ß;à;ˆ¢
á;â;£¢ã;ä;Á¢å;æ;Ý¢ç;è;¯é;ˆf£@Ô³ ù;ͨÒT²p Ò
ÕunexpÁ,§p “ξp ü‡rG lŠr ƒ¼;¾;¿;XÀ;ˆÁ;Â;íŸÃ;ˆÄ;Å;Ž Æ;ˆÇ;È;É;ˆÊ;Ë;bÌ;ˆÍ;Î;ÞÏ;ˆÐ;Ñ;÷ Ò;ˆÓ;Ô;•¡Õ;Ö;¬×;Ø;¹¡ Ù;Ú;Ö¡
Û;Ü;ç< Ý;Þ;| ß;à;ˆ¢
á;â;£¢ã;ä;Á¢å;æ;Ý¢ç;è;¯é;ˆf£@Ô³ ƒù;ƒͨÒT£r Ò
ÖëÎ,˜r “ίr Ìës ͨØ×AØü—t& 4št ÿÊͨ×¥ÙÙשú ¡t ÌË<¤t
ØÿÊæÊ­t  tôt ê±ÜÜÉ­㟉d"âuÛݼ;¾;¿;XÀ;ˆÁ;Â;íŸÃ;ˆÄ;Å;Ž Æ;ˆÇ;È;É;ˆÊ;Ë;bÌ;ˆÍ;Î;ÞÏ;ˆÐ;Ñ;÷ Ò;ˆÓ;Ô;•¡Õ;Ö;¬×;Ø;¹¡ Ù;Ú;Ö¡
Û;Ü;ç< Ý;Þ;| ß;à;ˆ¢
á;â;£¢ã;ä;Á¢å;æ;Ý¢ç;è;¯é;ˆf£@Ô³±É­ÏêÑÕÉ­ÚÚ
Û±ƒu ”‡u êÚÚÑÕüu' ±ßßÉ­àÅcà¢u üËu< Îu  É­  c cˆ¢cµ
 `£cÕÉ `àB¤GS
ÚÂÞ Òu Þ
à±$Óu êILÙu üÿy' Tz ê¶®ͨ
áæÊ‘z ü“|= t–| ê ¶®Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ ª|
âæÊ¥| ü …) Œ£… êˆ ˆ ¼…
ãž,µ… \ñmü)& A map of String to serde_json::Value.Á*úü.OL By default the map is backed by a [`BTreeMap`]. Enable the `preserve_order`Áü~63 feature of serde_json to use [`IndexMap`] instead.Áµúü¹,) [`BTreeMap`]: std::collections::BTreeMapÁüæ$! [`IndexMap`]: indexmap::IndexMapÁùmõùÑÙÜßáýŠòˆ¨¾Ôçèûäå—B,·äæßúHäçY4£ äè× `äêp,Á¿cäëpÂcä뎚eä펠eäí¢eäòPäï­
Ä äð¾Ôiäñ btree_mapÁLšÓ*äóWD¥ð
äôœ?œ©1¬Â#¤•µûýTÍÛݸÌí¨L¾™LÍŠ”…suce¤’üì%" Represents a JSON key/value type.Áœö§÷ö÷ÍìúË ¡ÑÍ ¤õõç<øØäæÅÊ[³[ÚúËÿËæÅÊ[³[ÚøXZ]_”­­äõõð
ð
Wô
rootÁÀ õ
lengthÁÀ ö
¤Ý ÷
_markerÁÀ ê©jÒÈj~úËÿË…Ë”ì»Ç
ÔÎäÍüÄ'äœú§ûûúÌä ùÑÍ üãå¼Úˆ®ýþÿˆŽ˜¤¥Ôø Makes a new empty Map.Á¬ˆ®üü
ýüÍ -ü€ :7 Makes a new empty Map with the given initial capacity.ÁlÔ ˆ®üü
þcapacityÁDâ ¼ˆ
üÍ (% Clears the map, removing all values.Á,
 ˆ®ü
ü
ÿ
ü¹yüÇ
>; Returns a reference to the value corresponding to the key.ÁŠúü’LI The key may be any borrowed form of the map's key type, but the orderingÁüãC@ on the borrowed form *must* match the ordering on the key type.ÁÀŠ Šˆ® ¢Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ Šä®ü¢ ÇüÎì¿í Ä ¶®¿íº¿í¢¿í¨še¿í
¿íÌEÎ`büÕxüÞC@ Returns true if the map contains a value for the specified key.Á¦úü®LìêüÿCÂëŒ Œˆ® ¿íü¢ƒƒ ìü¼î éÍîáî½ñîÃï
¿íÌEó<>üüü‚FC Returns a mutable reference to the value corresponding to the key.ÁÍúüÕLìêü¦CÂëŽ Žˆ® ¿íÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ Žä®ü¢ Žü¼î Íîáîññî÷ï
¿í$“ÌE<>ü›Žü±63 Returns the key-value pair matching the given key.ÁìúüôLìêüÅCÂë ˆ® ¿íÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ ¶® ä®ü¢ ³ü¼î °ÍîáîñîŸï
¿í$´ÌEº<>üÝ>üß*' Inserts a key-value pair into the map.ÁŽúü–A> If the map did not have this key present, `None` is returned.ÁÜúüäKH If the map did have this key present, the value is updated, and the oldÁ´´ value is returned.Á4ä ˆ®¶®ä®Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙä®ü ëü
ˆ öÁ üä&üë!IF Removes a key from the map, returning the value at the key if the keyÁô¹" was previously in the map.ÁÜ"úüä"Lìêüµ#CÂëý#úü…$B? If serde_json's "preserve_order" is enabled, `.remove(key)` isÁüÌ$JG equivalent to [`.swap_remove(key)`][Self::swap_remove], replacing thisÁü›%GD entry's position with the last element. If you need to preserve theÁüç%.+ relative order of the keys in the map, useÁüš&74 [`.shift_remove(key)`][Self::shift_remove] instead.Á4ë& ˆ® ¿í¡úü¢ŠŠ õ&ü¼î ò&ÍîL´'áîÓ'ñîÙ'ï$Þ'
¿í$ú&ÌE€'<>ü¶.ü›)IF Removes a key from the map, returning the stored key and value if theÁüé)" key was previously in the map.Á*úü˜*Lìêüé*CÂë±+úü¹+HE If serde_json's "preserve_order" is enabled, `.remove_entry(key)` isÁü†,GD equivalent to [`.swap_remove_entry(key)`][Self::swap_remove_entry],ÁüÒ,IF replacing this entry's position with the last element. If you need toÁü -;8 preserve the relative order of the keys in the map, useÁüà-C@ [`.shift_remove_entry(key)`][Self::shift_remove_entry] instead.Ád½. ˆ® ¿íÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙűü¢ŒŒ Í.ü¼î Ê.
,üEüÖHNü÷GDA Gets the given key's corresponding entry in the map for in-placeÁŒÀH manipulation.Á,ÝH ˆ®¤ÑÓÔ‘DÕˆÖ׬D؈RnÑü¤ æHüÍìö‰ ãHæö‰ ¶®d—I
Žö‰ $ëHÌEñH02üçI$LJÔ MüßL.+ Returns the number of elements in the map.Á§Mš šˆ®ü «Mü
$¬Mô£NüßM1. Returns true if the map contains no elements.ÁDªN ˆ®ü ³Nü
$´NÔ¯OüëN1. Gets an iterator over the entries of the map.Á$¶Oœ œˆ®òòãÐôùä¼¹tßþ—œü »Oü
$¼OüÞP%ü“P85 Gets a mutable iterator over the entries of the map.ÁDåP ˆ®ˆˆŽÒŠùä·˜4×ÓâW—ü îPü
$óPÔ•RüÔQ.+ Gets an iterator over the keys of the map.Á$œRž žˆ®¨¨ùÓªùäÆñw–a—tóžü ¡Rü
$¢Rô¼SüùR0- Gets an iterator over the values of the map.Á4ÃSŸ Ÿˆ®¾¾œÕÀùäâC¼‡‹ClŸü ÊSü
$ËSüïT)ü¨T41 Gets an iterator over mutable values of the map.ÁTöT   ˆ®ÔÔÁÖÖùäOÌšë¥Ôi¼ ü Uü
$†Uü°V&üíU0·‘ \·Vˆ®ηüü
˜$ÃVüæXZü­W96 Retains only the elements specified by the predicate.ÁëWúüóWGD In other words, remove all pairs `(k, v)` such that `f(&k, &mut v)`Á¤¿X returns `false`.Á4íX£ £ˆ®¬Àüšš ÷XüÕÀ ôX¡¢“"¬À ¡¶® ¢ä®üY"¡¢¬À·˜ ˜"$»Y
¬À$üX± ‚YsuÜ“aüîYC@ Sorts this map's entries in-place using `str`'s usual ordering.Á¶Zúü¾ZHE If serde_json's "preserve_order" feature is not enabled, this methodÁü‹[IF does no work because all JSON maps are always kept in a sorted state.ÁÙ[úüá[DA If serde_json's "preserve_order" feature is enabled, this methodÁüª\HE destroys the original source order or insertion order of this map inÁü÷\IF favor of an alphanumerical order that matches how a BTreeMap with theÁüÅ]LI same contents would be ordered. This takes **O(n log n + c)** time whereÁü–^96 _n_ is the length of the map and _c_ is the capacity.ÁÔ^úüÜ^JG Other maps nested within the values of this map are not sorted. If youÁü«_LI need the entire data structure to be sorted at all levels, you must alsoÁDü_ callÁü‰`IF <code>map.[values_mut]\().for_each([Value::sort_all_objects])</code>.Á×`úüß`! [values_mut]: Map::values_mutÁLša¤ ¤ˆ®ü ¤aü
$©aüòb#ˆ®´¤ªc<­cˆ®œœ
üƒd!ˆ®Ÿ ÙÚŸ ¼¹d,¼d¥ ¥ˆ®ˆ®ž Âdž
Ÿ$Ãdü§e'Tªe¦§ ¦ˆ® §ˆ®ž µež
 $ºe:4Àeü„f%ˆ®¢·ß¢ü¾f"Áf¨© ¨ˆ® ©ˆ®¡ Äf¡
¢$Åf¹
,ËfôŒgˆ®ü¯g ˆ®¥›e¥üÖg($Ùgª« ªˆ® «¤¦¦ ég¤Í쓦 Þg¢e“¦ 4ág
¥“¦ $êgº,ðg,.üÅmkü¶jPM Access an element of this map. Panics if the given key is not present in theÁD‡k map.Ákú<”këºäœk # use serde_json::Value;Á,¹kßÅü¿k.+ # let val = &Value::String("".to_owned());Álîk
# let _ =Á|ük match val {ÁüŒl-* Value::String(s) => Some(s.as_str()),Áüºl-* Value::Array(arr) => arr[0].as_str(),Áüèl30 Value::Object(map) => map["type"].as_str(),Á”œm _ => None,Á,¯mݺ<µm # ;Á<½mëº8¬¢¨¬¨Îìʰ Êm ¶®ʰL…nºʰ nʰ¦nšeʰ$«nˆ®©ªÛ¢Ü¢ª`b\·n4¼n§§ä®üÑn$,Ôn­® ­ˆ® ®ʰ ­ä®§ Ún§
ª8ʰ$ÛnÖ,ánüÇqnüŸoIF Mutably access an element of this map. Panics if the given key is notÁ¼éo present in the map.Ápú<…pëºÜpýý,©pßÅü¯p+( # let mut map = serde_json::Map::new();ÁüÛp<9 # map.insert("key".to_owned(), serde_json::Value::Null);Á,˜qßÅüžq  map["key"] = json!("value");Á<¿qëº8¯¢¬¯¬¼« ÌqÍ« LŠrá« ¥rñ« «r¬ $°rˆ®­µ"­35ü¼r0L¿r°± °ˆ® ±ʰ °ä®« Ér«
­8ʰ$ÎrÖ,Ôrü¹s!ˆ®¯Àc¯üïsGòs²³´ ²ˆ® ³ c cˆ¢cµ
 `£cÕÉ `àB¤GS
´Ú® ös®
¯$÷sêILýsü’u1»À|ìt»¤Œýtüët$üât/ˆ®±ÚA±üØumLÛuµ µˆ®ö‰ Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ö‰ ÝAö‰ ÞA°¤²² èu°ðŠ åuÜAö‰ ´®v
±ö‰ $éu
serializerÁTïu68ÄØvdävü©x5øµµˆ®ý;®xüóxh\öxÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â