Files
boc/aamos-ledger-rust/target/debug/deps/libcrossbeam_queue-04c07d9f0d9b8a99.rmeta
T

117 lines
40 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Ácrossbeam_utilsÁшce¡B.^ ~¶-ÕX-3fc97031a65be933Áí¤À array_queueÁ 
  
SlotÁ¥stampÁ»
ArrayQueueÁ¥headÁtailÁbufferÁcapÁone_lapÁ!¥#¥%¥'¥)¥)æ + ) push_or_elseÁ-)pushÁ/ )
force_pushÁ1 )popÁ)capacityÁ)is_emptyÁ)is_fullÁ)8¥8ã;¥;×>¥>>IntoIterÁ>êC¥CCó  seg_queueÁGGGGGGGGGG G
G G G
GGGGGGGGWRITEÁGREADÁGDESTROYÁGLAPÁG BLOCK_CAPÁGSHIFTÁGHAS_NEXTÁGíd¥d»dºGh¥h
wait_writeÁGBlockÁk¥kó kslotsÁn Gp¥pLAYOUTÁpæ p wait_nextÁpdestroyÁGPositionÁv¥vÖv¸GSegQueueÁz¥zª zµ z_markerÁG¥G¥Gƒ¥G¥G¥æ Á
å
þ
GŽ¥ŽãG¥×G ¥>G
¥Ø êG œ¥œœó Ø £¥£» ¦¥¦×GØ ©¥©»G ¬¥¬×-
-
/
1
3
4
5
6
7
:
=
=
=
F
j
t
Š

Œ





Ÿ
¨
¨
¨
®
®
®
 ª µ À Í  × ”v|5:”¥Ì쫽¬½Œ"¿cÇL¿c££Ø ¥»ÒFæ8}ˆVØùM¤Ììzzˆ|ª G}µ G~¬G1e"ù!8Ø æ«½æ¬½æŒ"æ¿cæ³æÇLæ¿c©©Ø «»G:ÌOØùMö!z#z%ƒz'z8Žz;¦£©>zC£œ©z mÌì «½
¬½ Œ" ¿c ÇLùM ³
ÚÚ Ú32Áœ`Ú ¢Ú. 1`Ú/Ú\Úüƒ!aÚ,”Ú.`Úž`ÚÚÚL¿ 
aÚo$Ú/6:aÚ BLOCK_CAPÁ
¬“
 œ“

Ë‚kký
mó GnG½Çͧ¢±ØZø'²
ӂ



#

Ȃ1
 Ó
W Ø
Úy$   Æüå ãmù)@#ù*ž"# 
ù<ž"#
¶cüç
@> AP
Wá)#
ÜWcurü†
Á èØèØ éØ²‚êØŸ²‚ªë¥CHÈ Á!öÃÀÚÀ ÁÃù)Üì#äÈäÈ ArgumentsÁæÈtemplateÁ `çÈÀ `üöMõô]Td[layoutÁ½ üÒ*Žüã*|ü…+|”+
l”+
²Ž*7
>t…+
Ò]ŽN_ £+œ½+
„½+
ŒÄ Î+Ú> vØ Þ+ç
î„Ò*
¨vväxÖGy¸G¡ó]±/u}
Ø1D ß+üô+Žü…,|ü§,|¶, 
l¶,û! $1
8t§,¢" BS Å, œß,

„ß,Ý" ð,Ú
:¦ vØ
 €-
×
Þ„ô+¿#çù -\™-  Øüµ*ú zØ ®- µ-ü‰*¬ æ\Ÿ* CachePaddedÁ»(BP:®YöBÅ#
Å#¤]¤]V¦]Á‚]üß3ø¤”& Ž6ˆ(5¤]¤]V¦]Á‚]üß3ø¤”&Ú'=Å#;Û':ˆ(9š(ë PhantomDataÁFu\»ŸØ7Gí¤,‹À·’ T©¡ˆz¢üÊ´ Concurrent queues.ÁúüKH This crate provides concurrent queues that can be shared among threads:Ágúükb_ * [`ArrayQueue`], a bounded MPMC queue that allocates a fixed-capacity buffer on construction.ÁüÎ^[ * [`SegQueue`], an unbounded MPMC queue that allocates small buffers, segments, on demand.Áüí ü—6Gíà¤áÀàß¡ˆÞz¢036”þ-„ª"»¤ŒÇóµ ÌÚüÆ.ü½9£BoxÁÁ
UnsafeCellÁTÖî0×ì `í$ë
MaybeUninitÁ\‡ÑÛ
RefUnwindSafeÁl§¬½
UnwindSafeÁT¶«½atomicÁ$Ü] AtomicUsizeÁ\â„Ä®¼ÀBackoffÁ<Á&\šŒ³.´Ê ûéë\™ÐÒ¸”Ǥ4ÓŒŽ|~|ÿikZ\tÀ¥ÍìØ Ìíÿ»5T÷WÏieØ5T÷WÏieQS”‚,‚š(ü»!î0î0Ù-ð0»Ì-·}—KEüC£ÑÛÑÛœ.ÓÛuninitÁÝÔÛ»ÝÍõƒ«%9ØÄ’ üá2/ A bounded multi-producer multi-consumer queue.Áúü˜_\ This queue allocates a fixed-capacity buffer on construction, which is used to store pushedÁüø_\ elements. The queue cannot hold more elements than the buffer allows. Attempting to push anÁüØ\Y element into a full queue will fail. Alternatively, [`force_push`] makes it possible forÁüµ^[ this queue to be used as a ring-buffer. Having a buffer allocated upfront makes this queueÁü” # a bit faster than [`SegQueue`].Á¸ úü¼ *' [`force_push`]: ArrayQueue::force_pushÁüç ! [`SegQueue`]: super::SegQueueÁ
út
 # ExamplesÁœ
ú< 
 ```矬
$! use crossbeam_queue::ArrayQueue;ÁÍ
úüÑ
 let q = ArrayQueue::new(2);Áñ
úüõ
$! assert_eq!(q.push('a'), Ok(()));Áüš $! assert_eq!(q.push('b'), Ok(()));Áü¿ &# assert_eq!(q.push('c'), Err('c'));Áüæ # assert_eq!(q.pop(), Some('a'));Á ¬8T ¥ã1 ¨ ”v|5:” :"$ôà›&»(BP:®YöBš(ô´$´Ë<´ûžÃ-¡ˆˆ¢ˆl }.xÏ
ò1çEçEèEGlobalÁ ¿±‡§í#´Útÿ<ÿÚü’+¥""ã1 žÌìØüÁ+¥$$ã1 Íë>$Ðüñ$¥&&ã1 ö ü™'¥((ã1 ž ¬Å¥**ã1 Ê+-/134567ü€'üá85 Creates a new bounded queue with the given capacity.Ážú # PanicsÁ·úü¿# Panics if the capacity is zero.Áçú‰8ú¬8ü–$½8¿úüÇ(% let q = ArrayQueue::<i32>::new(100);Á¬8Ú))
+ØÍ +<closure_kind>Á,<closure_signature>Á,<upvars>Á,,+,ØÚò1öüî° °ØÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
öØ).. )ÍìE þ¯"EØÚÚ ¯ò1üÂ-¯E¨F˜"Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ØØ
-ØE$‚»± ¹»ü¯4-üÂ1/, Attempts to push an element into the queue.Áö1úüþ1C@ If the queue is full, the element is returned back as an error.ÁÆ2útÎ2‰8á2ú<é2¬8üõ2$½8ž3úü¦3 let q = ArrayQueue::new(1);ÁÊ3úüÒ3# assert_eq!(q.push(10), Ok(()));Áüú3$! assert_eq!(q.push(20), Err(20));Á<£4¬8$¶4± ±Ø•E) »4)
/Ø$¼4»,Â4|€5/ðB0ˆC0¥C00/0ØØÚÚ ò1ÕF üò;/üÝ7PM Pushes an element into the queue, replacing the oldest element if necessary.Á²8úüº8FC If the queue is full, the oldest element is replaced and returned,Áü…9! otherwise `None` is returned.Á«9út³9‰8Æ9ú<Î9¬8üÚ9$½8ƒ:úü‹:÷8¯:úü·:'$ assert_eq!(q.force_push(10), None);Áüã:'$ assert_eq!(q.force_push(20), None);Áü;+( assert_eq!(q.force_push(30), Some(10));Áü¿;" assert_eq!(q.pop(), Some(20));Á<æ;¬8Tù;² ²ØÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙØ) „<)
1Ø$…<»,<ÌÅ<1ðB2ˆC2¥C2212ØûKþKšLôïEüöB.+ Attempts to pop an element from the queue.Á©Cúü±C.+ If the queue is empty, `None` is returned.ÁäCútìC‰8ÿCú<‡D¬8ü“D$½8¼DúüÄDÅHüèD#úHEúü˜E" assert_eq!(q.pop(), Some(10));Áü¿E assert!(q.pop().is_none());Á<ãE¬8öE³ ³æP) úE)
3Ø$ûEü‚[üY&# Returns the capacity of the queue.ÁºYútÂY‰8ÕYú<ÝY¬8üéY$½8’ZúüšZ(ãAÇZúüÏZ" assert_eq!(q.capacity(), 100);Á<öZ¬8D‰[´ ´Ú) ’[)
4Ø$“[ôã]üÀ[)& Returns `true` if the queue is empty.Áî[útö[‰8‰\ú<\¬8ü\$½8Æ\úüÎ\! let q = ArrayQueue::new(100);Áô\úÔü\ assert!(q.is_empty());Á¼›] q.push(1).unwrap();ÁÜ·] assert!(!q.is_empty());Á<×]¬8Dê]µ µ) ó])
5Ø$ô]ìÈcüªa(% Returns `true` if the queue is full.Á×aútßa‰8òaú<úa¬8ü†b$½8¯búü·bÅHÛbúÔãb assert!(!q.is_full());Á¼‚cËXÌžc assert!(q.is_full());Á<¼c¬8<Ïc ) ×c)
6Ø$ØcÔíiüüf0- Returns the number of elements in the queue.Á±g
 `£cbufÁ `àB¤GS