Files
thefoldwithin-earth/.old2/target/wasm32-unknown-unknown/release/deps/libpin_project-2ab532b3d4770f62.rlib
T

163 lines
21 KiB
Plaintext
Raw Normal View History

2025-10-19 16:48:12 -05:00
!<arch>
/ 0 0 0 0 8 `
// 72 `
pin_project-2ab532b3d4770f62.pin_project.95133998b4771b06-cgu.0.rcgu.o/
lib.rmeta/ 0 0 0 644 21193 `
asm linking²¥.rmetarust
Q#rustc 1.90.0 (1159e78c4 2025-09-14)Á˜ø½E—y88àìOg[-a0f3a77406fcd134Ápin_project_internalÁã/M×° !à¾zï€Nw-947c0c4132f8162cÁÒµÅL®Ùp,ØnWš÷*Ó-eed239b623db52f0Á˜ UnsafeUnpinÁ __privateÁ 

PinnedDropÁª
'aÁòóPinnedFieldsOfÁPinnedFieldsOfHelperTraitÁActualÁPinnedFieldsOfHelperStructÁ
  ò$$µ AlwaysUnpinÁ'
'Ð''ò'ó-UnsafeDropInPlaceGuardÁ/
//ò33Ô
66UnsafeOverwriteGuardÁ99ã9valueÁ==Ô
@@88-888B8ªòó õú|¼Û’Ÿ8  !Â#ò …£AÍû¬RÎÞ''(+ò,ó ?«ZqÍm8ÌÅ//0Ä2ò ÉÁߊ’ZzãÅ99;ã<ÀÙæ<8åžsS$ -'6/@9ÎÞÅL‡Y /šY5üÒXH×$ôX äX§  /4Ì[®
Ô¹[”¹[
Þ1" Ò[ì[8üâYŠôY ×LêY¸ a®
>ý
Äÿ^µÄ3; Ïüé^0 9 ˜_£_?ü§^|ýŒ3T;±l $Ö^®
4¹^,É^ÏÏ ManuallyDropÁ‘ÏÀ© ‰ |éë6<ÌãXÀ\š\Æa®
¼ÓaýÖÙ%C
ýì$C êa„bBüá_£ýËO1;º\ÞaýžÇåC}ý®†ê Cü»a0¸ ó_  Lé_®
Ê»ƒüúL! Ì*ªòó õú|¼Û’ŸÌmÃÃÄ PhantomDataÁ±öµ,±ÀU ¸ §Ì®µà ÌÞêŸõÞüÌ ü¦S0  !%Ø07>L  b!nØyì€V 'Ì()''(+ò,ó ?«ZqÍmÌlÞsÃÃÄì±öµ,±ÀUÌŸ¦´ 'ÌÏ(ÛÍæÞíôûüÍW, /0%×0®
7>L /b0n×y®
˜ pin_projectÁ\ÌÚ pinned_dropÁ\†Ûü/Ýaü/‰
<!-- Note: Document from sync-markdown-to-rustdoc:start through sync-markdown-to-rustdoc:end
is synchronized from README.md. Any changes to that range are not preserved. -->
<!-- tidy:sync-markdown-to-rustdoc:start -->
A crate for safe and ergonomic [pin-projection].
## Usage
Add this to your `Cargo.toml`:
```toml
[dependencies]
pin-project = "1"
```
## Examples
[`#[pin_project]`][`pin_project`] attribute creates projection types
covering all the fields of struct or enum.
```
use std::pin::Pin;
use pin_project::pin_project;
#[pin_project]
struct Struct<T, U> {
#[pin]
pinned: T,
unpinned: U,
}
impl<T, U> Struct<T, U> {
fn method(self: Pin<&mut Self>) {
let this = self.project();
let _: Pin<&mut T> = this.pinned; // Pinned reference to the field
let _: &mut U = this.unpinned; // Normal reference to the field
}
}
```
[*code like this will be generated*][struct-default-expanded]
To use `#[pin_project]` on enums, you need to name the projection type
returned from the method.
```
use std::pin::Pin;
use pin_project::pin_project;
#[pin_project(project = EnumProj)]
enum Enum<T, U> {
Pinned(#[pin] T),
Unpinned(U),
}
impl<T, U> Enum<T, U> {
fn method(self: Pin<&mut Self>) {
match self.project() {
EnumProj::Pinned(x) => {
let _: Pin<&mut T> = x;
}
EnumProj::Unpinned(y) => {
let _: &mut U = y;
}
}
}
}
```
[*code like this will be generated*][enum-default-expanded]
See [`#[pin_project]`][`pin_project`] attribute for more details, and
see [examples] directory for more examples and generated code.
## Related Projects
- [pin-project-lite]: A lightweight version of pin-project written with declarative macros.
[enum-default-expanded]: https://github.com/taiki-e/pin-project/blob/HEAD/examples/enum-default-expanded.rs
[examples]: https://github.com/taiki-e/pin-project/blob/HEAD/examples/README.md
[pin-project-lite]: https://github.com/taiki-e/pin-project-lite
[pin-projection]: https://doc.rust-lang.org/std/pin/index.html#projections-and-structural-pinning
[struct-default-expanded]: https://github.com/taiki-e/pin-project/blob/HEAD/examples/struct-default-expanded.rs
<!-- tidy:sync-markdown-to-rustdoc:end -->
ÁÿÈ Ë ã8ú Ð â8ë
$ å8Á ï à8à ý ®8warningsÁ$ 8rust_2018_idiomsÁ„ˆ$ ˜8single_use_lifetimesÁ¤š$ ¯8à ¾ Ú8ÄL¿$ È8unused_variablesÁ„ÊüÅ ˜ƒ
Ìy
Úém
Û³

¹
ü¶!¦
üð!
ä™-ü”96 A trait used for custom implementations of [`Unpin`].ÁΩüÒHE This trait is used in conjunction with the `UnsafeUnpin` argument toÁü›85 the [`#[pin_project]`][macro@pin_project] attribute.ÁÔ© # SafetyÁå©üé>; The Rust [`Unpin`] trait is safe to implement - by itself,Áü¨LI implementing it cannot lead to [undefined behavior][undefined-behavior].ÁüõEB Undefined behavior can only occur when other unsafe code is used.Á»©ü¿HE It turns out that using pin projections, which requires unsafe code,ÁüˆOL imposes additional requirements on an [`Unpin`] impl. Normally, all of thisÁüØNK unsafety is contained within this crate, ensuring that it's impossible forÁü§DA you to violate any of the guarantees required by pin projection.Áì©üðIF However, things change if you want to provide a custom [`Unpin`] implÁüº:7 for your `#[pin_project]` type. As stated in [the RustÁüõPM documentation][pin-projection], you must be sure to only implement [`Unpin`]ÁüÆOL when all of your `#[pin]` fields (i.e. structurally pinned fields) are alsoÁt [`Unpin`].Á¥ ©ü© IF To help highlight this unsafety, the `UnsafeUnpin` trait is provided.Áüó OL Implementing this trait is logically equivalent to implementing [`Unpin`] -ÁüÃ!OL this crate will generate an [`Unpin`] impl for your type that 'forwards' toÁü“"NK your `UnsafeUnpin` impl. However, this trait is `unsafe` - since your typeÁüâ"KH uses structural pinning (otherwise, you wouldn't be using this crate!),Áü®#A> you must be sure that your `UnsafeUnpin` impls follows all ofÁüð#IF the requirements for an [`Unpin`] impl of a structurally-pinned type.Áº$©ü¾$HE Note that if you specify `#[pin_project(UnsafeUnpin)]`, but do *not*Áü‡%OL provide an impl of `UnsafeUnpin`, your type will never implement [`Unpin`].Áü×%LI This is effectively the same thing as adding a [`PhantomPinned`] to yourÁL¤& type.Á®&©ü²&EB Since this trait is `unsafe`, impls of it will be detected by theÁüø&IF `unsafe_code` lint, and by tools like [`cargo geiger`][cargo-geiger].ÁÂ'©tÆ' # ExamplesÁÕ'©üÙ'KH An `UnsafeUnpin` impl which, in addition to requiring that structurallyÁü¥(B? pinned fields be [`Unpin`], imposes an additional requirement:Áè(©<ì( ```Áüô(0- use pin_project::{UnsafeUnpin, pin_project};Á¥)©ü©) #[pin_project(UnsafeUnpin)]ÁÌÉ) struct Struct<K, V> {Átã) #[pin]Áœò) field_1: K,Áœ†* field_2: V,Á,š* *©ü¤*LI unsafe impl<K, V> UnsafeUnpin for Struct<K, V> where K: Unpin + Clone {}Á<ñ*¸>ù*©üý*2/ [`PhantomPinned`]: core::marker::PhantomPinnedÁü°+DA [cargo-geiger]: https://github.com/rust-secure-code/cargo-geigerÁüõ+B? [pin-projection]: core::pin#projections-and-structural-pinningÁü¸,`] [undefined-behavior]: https://doc.rust-lang.org/reference/behavior-considered-undefined.htmlÁ\ª-“Þü™-Œ„.ÿÏ- Ò- Ù-84Ó-tÍ-LŒ. !'(/09 d«.Ïì\ñ.Ã
ìÄ
PhantomPinnedÁlþ.ÏÞ ˆEÐÞ UnpinÁ,/ÎÞ DropÁ$¢/Å
PinÁµ/±¸§ Â/¢__PinProjectInternalDeriveÁÔ„0Üß\°0¼ .øüØ.tíïÂÄŸL/D°/qsüî/0O”©0C¤ü8ÿë8 î8 õ884ï8té8T†9òDüü8aü²9%ÿ9  9 §984¡9t9$¼9C±¸±¸åE³¸÷ ÀR$ÂÄ%^PòàÞ CúD¸  Ë9
úD$Á9mÿÑL ÔL ÛL84ÕLtÏL<…MГÞÌ ‘Mªòó õú|¼Û’ŸÐÌõú|¼Û’ŸÃÃÄì±öµ,±ÀU и ÌçJmÇ¿KÌçJ
ÐÌM×ÙœœM¿K ±MÌüäMC8DDØJ ðMÌ\üMÔßPÿÎP ÑP ØP84ÒPtÌPtèP’Þ ÷PØ üÆR#ÿµR ¸R ¿R84¹Rt³RÌÐRòDüÆRH“ÞúD¤ôR‡OœôR4ùRÿ•S ˜S ŸS84™St“SÔ±S""“Þ ÌSØ…£AÍû¬R!#ØPØ 
!]_ ×S  üßSK%%þO äSØ&
\µT4ºT$$ ÿïU òU ùU84óUtíU\VÐ)**)’ÞÌ V''(+ò,ó ?«ZqÍmÐÌ?«ZqÍm(+,¿K“¶R ¿K“¶R''
(ÐÌ—V«­œžV''¿Kt³V''üÈV$8E.E.§R ÍV %
ÿ¼W ¿W ÆW84ÀWtºW´ØW11þO ïW×ÉÁߊ’Zzã02®
×8%
I®
×//
0_a4úW//®
ü‡X)44þO ŒX×5
üÒX&ÿ½X ÀX ÇX84ÁXt»XàX®
×33
5§ ³ü¥Y277þO ªY×88 
”âY$åYF F׸ 6 êY6
8$ïYüÿ\"ÿî\ ñ\ ø\84ò\tì\¤Š]::ƒN Ÿ] Ùæ<8åžsS;<B t¬]4¬]99®
´Ä],Ä]99
üæ]>>ƒN ë] ?
ü§^3ÿ’^ •^ œ^84^t^µ^®
 ==
?ãüÀü®_(AAƒN ³_ BB 
”á_$ä_G G ¸ @ é_@
B$î_ ¡NæV ó+3=BÌÚ+https://github.com/taiki-e/pin-project-liteÁ¹Eundefined behaviorÁ#[pin_project]Á code like this will be generatedÁThttps://github.com/taiki-e/pin-project/blob/HEAD/examples/struct-default-expanded.rsÁcore::marker::PhantomPinnedÁ core::markerÁ cargo geigerÁpin-project-liteÁ̱[¹EˆE,https://doc.rust-lang.org/std/pin/index.htmlÁý[\ core::pinÁŽ]®]Chttps://github.com/taiki-e/pin-project/blob/HEAD/examples/README.mdÁÐ]̱[¹EÎÞˆEpin-projectionÁù]ý[the RustdocumentationÁ´^Ž]ÏÞexamplesÁÑ^Ð]ˆE¸_ù]Fhttps://doc.rust-lang.org/reference/behavior-considered-undefined.htmlÁÕ_´^ÀR˜Rhttps://github.com/taiki-e/pin-project/blob/HEAD/examples/enum-default-expanded.rsÁÿ_Ñ^0https://github.com/rust-secure-code/cargo-geigerÁ¸_æ[¥`Õ_˜µ\„aÿ_¿]åaæ[¥`˜\µ\„a®]¿]åaêGª¦¸¾ÌìÇòš£ îÅÉÌÏšŸˆH¿H÷GîGóH‘Þ’ÞÎÞw´˜9ð"æ!Z…P…ýë»*tá%ê¢Hd5ÂuÙ?-—ü?Úý^…-œNÕöc‚‰Ò:>ß芓ÂCœ³é.šcG3âI«ˆÆ€ížãÕÉ¢¡ì®Mar.“0ÚO£±žÏoAi.H©fnI3h0=ò›PÍ@PzâÄàò‘ÉÌâ :öXµ¾q¡î+ëZ12¹¡×m¤•_ò.YàÄè´½ 65ôÚl¥Ï­…û11krU…åÔ|ÅtŒÏÀÇkú?ÝóÀEÇéä“Õ·Ëð?¡]&Ó¬
üë:µ/ÊÜ¡ƒ
š¡žÆlvˆDW[1Ì;ŒsRܯLNs“—+Jø­àå÷2Câ²üùÚwðÚ|SÊÊ®q+O‰-—¥øWPWpmëþ©9ÆümyŠmîE=§ á­NåÑŠa/Gë…FG‹èª„™·Ö¦%ÿF>>›®tî\¢ÞB}7”s 蘆ë÷B8,hOµb©Jˆ·pzmÈ­@$íìWܨiÿÈî]‚»å´Ãr¶r•±ý—96¦7‡tvSû:ÆÀ½%T®X@·ËºãWŠ%ØOÖcOfö¸>2틦è‹)&‘Ç•×ò9”‘‡~¦"Ëš|K“(u ~cY”R\Zà9Îßú±.¥_?STþ‡‰cÉï}E^¾Wü‡Z\>}  †gÑ×#g¸c}­ã’=Ç9ý|:³ZÜ‘½[â`Í3ʯ­QNNêìUá”4À''¢-£->Q "
 Ž<"$Ë%B&¬&&':'÷'(A(W(n)„))Ö)Œ*×*<+r+6,N,g,, -?-<"E "Ú#'"Û#;%0&'¥'.(
)Å)8*Ã*\+!,,)-%   
% 
%  %      ;Ü!D"®# $´$Š%Í%ã%l&Ø&*'f'Å'ù'E(ƒ(-)p)†)*Z*Ž*+‡+í+:,R,Ö,T- qwzŠ"H#N#S#U#Y#]#a#g#m#q#x#~#à#…$t%´%º%Ç%Ý%ó%1&>&š&§&"'7'¯'æ'ó' (0(=(T()W)])j)€))Æ)Ó)D*{*ˆ*ž*Å*Ò*7+a+n+¼+%,2,J,b,‰,,-.-;-‰--“-™-ž-tØ!@"L#W#[#_#e#k#o#v#|#ª# $°$w%¸%¼%Ë%á%3&h&œ&Ô&&'b'²'è'÷'2(A(()[)_)n)„)È)þ)G*}*Œ*Ç*ý*c+r+é+',6,N,,Á,0-?-Œ--—-œ- -ï!Á#s$Õ$¡%Ä%×%í%&;&€&¤&ë&3'{'Ù'ð'(#(:(N(¤(D)g)z))º)Ð)*n*…*˜*¸*Ï*%+Q+k+ª+,/,D,\,|,“,ë,-8-w-Ý!¯#g$·$™%¾%Ï%å%ú%5&m&ž&Ù&+'h'Ñ'ê'û'(4(F(†(<)a)r)ˆ))Ê)*f***¥*É*+>+e+ž+ï+),<,T,i,,ã, -2-k-w$ç$§%Û%ñ%.&&'ß'(,(R(¶(J)~)”)Ã) *t*œ*Á*)+Z+®+ ,H,`,…,ï,'-{-!%g'(/)*\*+ˆ+×,U-"$=%Ž%¦'È' )1)9*]*+‰+Ø,V-$y%´')I*+v+Å,C-
TŒÒÆ%=&¦&ò'<(i)Ò)‡*Ñ*m+1,•,:-k #
qÖ|x.ÑÎ o
-ÐÍ n
Ôzvi "
·
Õ{wj¥%Ý'H)r*~$0+µ+ö,-B*#,"Ë#õ&FF9Ö!>"¨#®$ø%Ò&`'(}()ü)£*<+ç+g, -1%').*,%%'ô("*
ÈÏÓ×Ûíý 
!%):AHLU\cjnuб¾ßãêñõü '.59@]ahoszŒ®µ¼ÈÌÓÚÞåìòøþ4%ž')1*,¸