Files
boc/aamos-ledger-rust/target/debug/deps/libthread_local-402561c7040ba8ef.rmeta
T

233 lines
67 KiB
Plaintext
Raw Normal View History

rust
¸#rustc 1.96.0 (ac68faa20 2026-05-25)ÁÀ뉊]!ÜÛê(¹Þ—šên-5be7b69c3ff7b5b8ÁíàÄTËŸ ÜJîÄ)'ß\¥!-3d1337db07d0b3aeÁ¤²XctÔ'ÐÓ©z¨ɽÓ-a4945860e1c53b00Á¤°ð ¾ä-±($²ï=©Ã-7e98a21bfd32b0edÁòÖÀ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Á®f©¾/ô)c§{õa“â‘-a3906971a93fd1b8Á
POINTER_WIDTHÁl˜û16ÁÜôîû32ÁܶtestsÁ,$÷€ÀcachedÁCachedThreadLocalÁ ¥ innerÁ¥>¥æ getÁget_orÁ
get_or_tryÁúclearÁ¥IntoIterÁê!'aÁ!¥!!®
!ê'¥'get_or_defaultÁ*¥*×-¥
CachedIterMutÁ/È
/¥/ 3È
3¥33ó 3 size_hintÁ9È
9¥CachedIntoIterÁ<¥<  ?¥??ó ?ó 
D¥ thread_idÁFFFFFFThreadIdManagerÁL free_fromÁL free_listÁFOæ O¤Q OfreeÁFTHREAD_ID_MANAGERÁFUæ WWUncheckedOptionExtÁY¥Yunchecked_unwrapÁYunchecked_unwrap_noneÁWUncheckedResultExtÁ]¥]]unchecked_unwrap_okÁ]unchecked_unwrap_errÁWb¥b¬bÃWf¥fff  
  
îBUCKETSÁ ThreadLocalÁ¥bucketsÁ ¼EntryÁ¥presentÁ»ˆ¥ˆã¥¥>¥ã¥æ  
with_capacityÁ Ì Ö šš ê  get_innerÁinsertÁùú
¥¥¥¥®
¥êªÈ
ª¥ªª®
ªê°È
°¥°°®
°ê¥ø
 ¹¥¹×
¼¥ ¾æ ¾ó ÀÈ
À¥¾next_mutÁÃÈ
Ã¥¾ next_bucketÁ¾ó Ç¥¾size_hint_frozenÁÉ¥ ËÈ
Ë¥ËËó Ëó 
Ñ¥IterMutÁÓÈ
Ó¥ÓÓ@ØÈ
Ø¥ØØó Ü Øó ߥá¥ãÈ
ã¥ã×ç¥ççó ê çó í¥ï¥allocate_bucketÁñ¥ñ deallocate_bucketÁô¥FThreadÁöidÁöbucketÁö bucket_sizeÁöÖFFüƒFF ThreadGuardÁÿ¨Fã FÌ  Fget_slowÁ FTHREADÁˆ__RUST_STD_INTERNAL_INITÁˆ Š __RUST_STD_INTERNAL_VALÁŠ ñF THREAD_GUARDÁÇ  ñ ñRawIterÁyieldedÁ²ÀÖ×IterÁÈ
¥@¢È
¢¥¢×®
¦¥¦¦@ª¥ª×




)
,
,
,
7
8
B
C
Q
S
Š


š

 
¡
¢
£
¤
¸
»
»
»
À
Ã
Æ
Ç
Ç
É
É
Ï
Ð
Ñ
Ü
Þ
ß
á
æ
æ
æ
ê
ì
ý


œ
œ
œ
¥
¥
¥
¬
¬
¬
Y]³  þ
 ë`OFsþs¥ÇL¯ÇL È
  þ
 ë`OFsþs¥¿c¯«½¯ùM//ª 2 ]8A4?È
  ÃMà ùM<< > ª1‹òŠÚN—ÙÃM‡!Ûööš÷¨ø²ùÀúÖ%0ØÅ!Š Å!Œ"ÿÿî¨F».ÜðáùÞYÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÙÙ]Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÙÙƒ$Œ"»ÑŽ*P'+WÙ Ñꃼ9#‚ÆÑyÖeÙ³Ø$Œ"Ø$ÇLØ$ÇL È
Ñꃼ9#‚ÆÑyÖe  ÇL È
¼%¿cØ$«½Ø$¿cÖ嘲ÀšÖ SÒõ!h¿c ¡@ºEð(s}œÈ
  ùMø&òP ¡@ºEð(s}œ8  ùMÓÓÖ×@»cÐìWÈ
  ÃMÓÓÖ×@»cÐìW8  òPÖ(¿c(¿c¦¦®
¨©@ÉÆ]’æ©È ÙùM°)ÃM°)òP°)  !
¥ª
°
* ¹¢ãÓª¦- ¼3/?ØÓç¦9/DÓí¦ûöüöþöÿˆbÛ¼fÖ¿ÑáÓ靈ßÇL ¿c«½'ùM ÃMÛØŠ Œ"Y] òP Û¼š š
BinaryHeapÁ dataÁ¾zìÐÉÖÞßÞßßßÏá߈ çÀLëòÀ"çEçEèEGlobalÁ ¿±‡§í#üÆG L ä·- ŒPü¥nLL
M
FN­
FŸØx›¨6Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÈ,ˆù¤e

ée
¾á.á.aã.»Ì-IÜžB2®Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÅ!ù£eŠÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙð/ ð/õ0±QùËb•aˆ®®£° ¨it§ÅLS¶ð/áÝbaXŠõ0õ0$Ã$ Û¼Å!|¹$
 L¹$
/0?* Ç$ù»+eð/¤š$0|.ù¾e
é¾e
Ðð//5ùôðe  ú02/õ0 öeù»ßeùöe  ”5—5¦5#õ0 eM eù©ÿeŠõ0”5—5¦5å”5—5¦5ŸSù!…¤e

é!…e
¾®"ù!£eÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ®" ®"Ã7±ßù Ëb•a®®£° ¨it§ÅLS¶®"á ÝbaXÃ7Ã7d£%
L£%
/·- ­%·-Aü‘%  ÿ °%ù!»+e®"\û$á.á.aã.»Ì-IÜžB2®·-º[ù!¾e
é!¾e
Ю"/5ù!ôðe  ”5È7Û8¦5/Ã7eù!»ßeù!’öe  ”5¢<¦5#Ã7 !”eM !™eù!©ÿeÃ7”5¢<¦5å”5¢<¦5ŸS@64ÁœË}> Ü>- *}>(>T>äË·- æü´4~·->¡>«5¥}>¯}>
~·-%·-07;~·-BUCKETSÁ<á&Üì&
Ìì&
²$+ üë&&·-? 'ü·'"<Ï'¼À' ¤]¤]V¦]Á‚]üß3ø¤”& $·-? Ö'œï'
„ï'
ŒÄ €(·->ü›'r Ù Œ( ’(“(ü®&åüÝ&¶Ø$tÄ&B·-?BßA8ÍC7¤]¤]V¦]Á‚]üß3ø¤”&·-êÚ<‰'
~·-%·-07;~·-BUCKETSÁ<À+
~·-˜%·-07;~·-BUCKETSÁFW}~Óñô¦À <lª /mþŒó n
UnsafeCellÁT—î0o׬¤,p
FusedIteratorÁlÀòPqíØër MaybeUninitÁ\ëÑÛs
UnwindSafeÁTˆ«½tµ u
AtomicBoolÁTº¬]w AtomicPtrÁLƯ]x AtomicUsizeÁ\Ñ„Äy®¼Àzšö{ß”‘]|üÍ‹£üÍ# Per-object thread-local storageÁñúüõPM This library provides the `ThreadLocal` type which allows a separate copy ofÁüÆDA an object to be used for each thread. This allows for per-objectÁü‹MJ thread-local storage, unlike the standard library's `thread_local!` macroÁüÙ2/ which only allows static thread-local storage.ÁŒúüNK Per-thread objects are not destroyed when a thread exits. Instead, objectsÁüßKH are only destroyed when the `ThreadLocal` containing them is destroyed.Á«úü¯HE You can also iterate over the thread-local values of all thread in aÁüøOL `ThreadLocal` object using the `iter_mut` and `into_iter` methods. This canÁüÈNK only be done if you have mutable access to the `ThreadLocal` object, whichÁü—C@ guarantees that you are the only thread currently accessing it.ÁÛúüßOL Note that since thread IDs are recycled when a thread exits, it is possibleÁü¯ PM for one thread to retrieve the object of another thread. Since this can onlyÁü€
NK occur after a thread has exited this does not lead to any race conditions.ÁÏ
ú
# ExamplesÁâ
úüæ
! Basic usage of `ThreadLocal`:Áˆ ú  ```rustÁü˜ " use thread_local::ThreadLocal;Áü» 30 let tls: ThreadLocal<u32> = ThreadLocal::new();Áüï  assert_eq!(tls.get(), None);Áü %" assert_eq!(tls.get_or(|| 5), &5);Áü¶ $! assert_eq!(tls.get(), Some(&5));Á  ```Áã úüç 74 Combining thread-local values into a single result:ÁŸ
ú
¯Rü¯
"ÄR¼Ò
 use std::sync::Arc;ÁÄê
 use std::cell::Cell;Á¤ƒ use std::thread;Á˜úüœ+( let tls = Arc::new(ThreadLocal::new());ÁÈúüÌ,) // Create a bunch of threads to do stuffÁœù for _ in 0..5 {Áü let tls2 = tls.clone();Áü­ thread::spawn(move || {ÁüÍ96 // Increment a counter to count some event...Áü‡41 let cell = tls2.get_or(|| Cell::new(0));Áü¼%" cell.set(cell.get() + 1);ÁÜâ }).join().unwrap();ÁúüˆKH // Once all threads are done, collect the counter values and return theÁüÔ.+ // sum of all thread-local counter values.Áüƒ,) let tls = Arc::try_unwrap(tls).unwrap();Áü°<9 let total = tls.into_iter().fold(0, |x, y| x + y.get());ÁÌí assert_eq!(total, 5);Á<‡³TFW}~Óñô¦À¤  ¥ <lª ¤ /mþ£  nÕE˜ î0o× ¤,p…F òPqíˆ ër¸F| ÑÛs×Fq «½tµ p uˆGe ¬]w¥G[ ¯]xÁGO „Äy®N ¼ÀzšM ö{ßL ]|Ì Ï Ò T4… /<®
D#¦<-ÓÑ\6×M¤,×FTb«½ ¬,wä
,mo_aQSDHG´V:Tr,üû%ü# Wrapper around [`ThreadLocal`].Á£úü§KH This used to add a fast path for a single thread, however that has beenÁüóDA obsoleted by performance improvements to [`ThreadLocal`] itself.Á1.1.0ÁUse `ThreadLocal` insteadÁÜÝü¸BŒ†êaóa¥  ÍìÙ ˜ÌìÙ$›¯ë`OFsþs
,.¬§êaóa  Ø$üÁ.¥Ác ÆÑc$ɯ´üö$¯
ÙüÇ"¥Ác ÌÑc$ϯü¯$üð,) Creates a new empty `CachedThreadLocal`.Á¯
Ùüþü®=: Returns the element for the current thread, if it exists.Á­ ­¯Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ ­Ù 
Ùü±LüÄKH Returns the element for the current thread, or creates it if it doesn'tÁT” exist.Á4¸® ®¯ ®Ù ÂÍìÛi ¿"Ûi¦5Ûi¦5˜"Ù û
ÙÛicreateÁ4ÉIKüé
iü± KÑgü
FC exist. If `create` fails, that error is returned and no element isÁ
 added.ÁTð
¯ ¯¯ÛiÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
 ¯Ù j û
Íìîl þ
jĹ Ûi¦5˜"Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÙîldÅ 
ÙÛiîl$‚ Õi4ˆ œžüÃ.üŠ DA Returns a mutable iterator over the local values of all threads.ÁÓ úüÛ IF Since this call borrows the `ThreadLocal` mutably, this operation canÁü©
FC be done safely---the mutable borrow statically guarantees no otherÁüô
<9 threads are currently accessing their associated values.ÁDʰ °¯//ª 2 ]8A4?°Ù Ó
Ù¼µüËJG Removes all thread-specific values from the `ThreadLocal`, effectivelyÁüš&# reseting it to its original state.ÁÅúüÍIÃnü›F–oüæ<æo,¼± ±¯¦5 Â
Ùüô3¥Ác ùÑc$ü¯ ÈLÉLÊL #%Ù‡!üé'¯‡!
ÙüêDÈ
"¥#"#Íì  óÌì    È
ýð$%&ÈLÉLÊL&ï@B"Lµ!! È
  !!à üû*ðà !!
&È
  üÉ,¥((Ác ÎÑc$ѳٯ)!üæ"üüKH Returns the element for the current thread, or creates a default one ifÁ¬Ì it doesn't exist.Átí² ²¯ ²Ù' ü'
)Ùü´>¥++Ác ¹Ñc$¼¿cÙ¯,Àc,&(üù4ü³´µ ³¯ ´ c cˆ¢cµ
 `£cbufÁ `àB¤GS
µÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¦5ŸÈŸÈ ÈErrorÁ O˜éBL* *
,Ù$± üý>¥..Ác Ñc$…«½Ù¯ üÀ*üÀ@= Mutable iterator over the contents of a `CachedThreadLocal`.ÁêaUse `IterMut` insteadÁ¼¦ü>êaª}È
0¥110“v Ý£v$à³vç³vü¼p$à ]8A4?2Ù8:0¬ñêaª}š//(ü‹8È
4¥554“v £v$—³vžà 678úMûMÿM87354LÊ33wüô' à Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ‚w3 ü3
7È
  $üÑ-· ·à ·-Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ·-3 Þ3
8È
  ü©AÈ
:¥;:;“v ²£v$µ³v¼à ®:üè"üï85 An iterator that moves out of a `CachedThreadLocal`.ÁêaUse `IntoIter` insteadÁÄÍü¨?êaÖƒ¥==Ác Ñc$… ‡!ª1‹òŠÚN—>#%”‘ , êaÖƒy<<°)ü¨ ,¥@@Ác ­ Ñc$° ‡!ABCúMûMÿMBC&(??Ùüý $€!¸ ¸‡!á"? …!?
BÙ$Š!üÒ!-LÕ!¹ ¹‡!Á‚? ß!?
CÙ$à!üª"5¥EEÁc ¯"Ñc$²"‡!lL‘LTöÿˆî }FGa$öá.FHÏÞßFIÏßßFIÒ+T©š FJ¤µ>FK¤Ñt|ëhŒ€[ä—9„¹,´¥F·.ŸØx›¨6MN„ÂFLL·-üØ-FLLñ.¤Š·.PQS´¥®F·.OO
Pä™Fº º·.·-O ¢O
QQ<closure_kind>ÁR<closure_signature>ÁR<upvars>ÁRRQR È,Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ„-¦5ì»

F» »·.·-¦5O Ã
O
S
¨Î
üÌ 0ŒÓ Fµ>µ>¤·> £>¸>poisonÁ£>¹>å+£>Ë»™z™g—·.C(ÿÿÿÿÿ(\ÊÅ!VüÜ$ê·-Å!UU
V¨î\ Y]unreachable_uncheckedÁ¬Ü  WXüÑ üÔÍY¥ZYZÎìüÃú“v àYö ö&[\[\[\,.ü­&„·þ  YY
[þ  ü•&¬Ÿþ¦5YY
\þ  ü‘"”›]¥^_]_^öü‘“v ®¨m ±]ö'ö-`a`aa`359;üý)œ‡þ  ]]
`þ  îl$›üî*¤øþîl]]
aþ  îl$üœ+¥ccÁc ¡á"de[\deüÎ%„Øá"Ùbb
dÙüç %¬ñ á"¦5bb
eÙ$‡
üâ
4¥ghghÁc ç
Íìƒ$ ê
²#ij`aij')$&ü (œ§ ²#Ùff
iÙƒ$ ü¹ )¤Ã ²#ƒ$ff
jÙƒ$ §"§"·"·"Ç"Ç"¬Œá"D§ô"ĵ#DÓ'#¬áE#´üc#D˜w#Œ¦”#”#°#°#Î#Î#â#â#Œíö#ü„ $¼–û64ÁÜøüò#>¤´·-üÏüê! Thread-local variable wrapperÁŒúü>; See the [module-level documentation](index.html) for more.Á¥Ác æÑc$éØ$9#‚ÆÑyÖeƒ)+üï'àA·-œ›4›ûC|³¥Ác À$ÑŽ*P'+WŠ"$œÉ¤]¤]V¦]Á‚]üß3ø¤”&üâ!î0î0ÕEð0»Ì-·}—KEüC£ÑÛÑÛ¸FÓÛuninitÁÝÔÛ»ÝÍõƒ«%9Ù̈¥Ác "Š”¨¼ ¼–$¦5ˆ °ˆ
ŠÙü!,¥ŒŒÁc ™!Ñc$œ!Ø$ü¾!(¥ŽŽÁc Ã!Ñc$Æ!Ø$´ôí!<ð!Ø$
Ùü²"%¥Ác ·"Ñc$º"Ø$"”Þ"$á"½ ½Ø$¦5 æ"
Ù$ë"äà%¥Ác å%Ñc$è%Ø$•š ¡¢£¤,.ü®&$üƒ&&# Creates a new empty `ThreadLocal`.Á»&Ø$
ÙÌ!·-ü÷)7ü™([X Creates a new `ThreadLocal` with an initial capacity. If less than the capacity threadsÁüù([X access the thread local it will never reallocate. The capacity may be rounded up to theÁÌÙ) nearest power of two.Álþ)·-Ø$
ÙcapacityÁDŒ*'"·-üÆ/ü„/=çeÍ/¾ ¾Ø$Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ ¾Ù Ñ/
Ù$Ò/üû0Lüœ0KÑgTì0¥h41¿ ¿Ø$Ûi ¿Ù Œ1j ‰1jl¹1¯j Å1
šÙÛi$1Õi4“1,.û1š†‹œž‹œ»‹œœšœÙÛi¦5Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Ù¦5Ûiüû3iüÑ2KÑgü¡3FjTì3ÚjT4À ÀØ$ÛiÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
 ÀÙîlžŸŸž “4j 4¨m 4jÄË4¿md×4
ÙÛiîl$”4Õi4š468<>ü£61L¦6Á ÁØ$Å!Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ ÁÙ °6
 Ù$±6Š4·6üŸ:/4¢:Â ÂØ$Å!Ù ÂÙ ©:
¡Ù$ª:Š4°:å+$À:ü‘G<üÚEKH Returns an iterator over the local values of all threads in unspecifiedÁTªF order.Á¹FúüÁFKH This call can be done safely, as `T` is required to implement [`Sync`].Á$˜GÃ ÃØ$ ¡@ºEð(s}œÃÙ G Ù$ÈG
¢Ù$žGüK(ü¹HFC Returns a mutable iterator over the local values of all threads inÁ´„I unspecified order.ÁŸIúü§IIÃnüõIFoüÀJ<æoDˆKÄ ÄØ$ÓÓÖ×@»cÐìWÄÙ ‘K
£Ù$–K¼ðNü”LJ²qüãL&†rŽMúü–MIÃnüäMFoü¯N<æo,÷NÅ ÅØ$¦5 ýN
¤Ù$‚Oü·O-¥¦¦Ác ¼OÑc$¿OØ$§¨©ÈLÉLÊL©')LëO$ðO
«¥¬«¬“v ´Q£v$·Q   $¾Q¶%­®¯ÈLÉLÊL¯°Q<>LîQ$óQªª È
  l…RDŠRªªø&ü§R$LªR¶%¶%ÉLªª
¯È
  $´RüëR9È
±¥²²±“v ôR£v$÷Rý%³´µÈLÉLÊLµðR-/L«S$°S°°‚wlÆSDËS°°(üëS$LîSý%(°°
µÈ
  $øSü³T&¥··Ác ¸TÑc$»T•x<ÂTØ$¸üÊU"üàTKÅw¬°U™xtÑUÆ ÆØ$ ÆÙ àU
¸Ù$áUüžV8¥ººÁc £VÑc$¦V±zT­VØ$»Àc» "üÝV4àVÇÈÉ ÇØ$ È c cˆ¢cµ
 `£c»z `àB¤GS
Éâ{¹ äV¹