Lines Matching full:weak
7 sync::Weak,
15 /// Like `futures::task::ArcWake` but uses `Weak<T>` instead of `Arc<T>`.
17 fn wake_by_ref(weak_self: &Weak<Self>); in wake_by_ref()
19 fn wake(weak_self: Weak<Self>) { in wake()
34 // Get a handle to the Weak<T> but wrap it in a ManuallyDrop so that we don't reduce the in clone_weak_raw()
36 let weak = ManuallyDrop::new(Weak::<W>::from_raw(data as *const W)); in clone_weak_raw() localVariable
38 // Now increase the weak count and keep it in a ManuallyDrop so that it doesn't get decreased in clone_weak_raw()
40 let _weak_clone: ManuallyDrop<_> = weak.clone(); in clone_weak_raw()
46 let weak: Weak<W> = Weak::from_raw(data as *const W); in wake_weak_raw() localVariable
48 WeakWake::wake(weak) in wake_weak_raw()
52 // Get a handle to the Weak<T> but wrap it in a ManuallyDrop so that we don't reduce the in wake_by_ref_weak_raw()
54 let weak = ManuallyDrop::new(Weak::<W>::from_raw(data as *const W)); in wake_by_ref_weak_raw() localVariable
56 WeakWake::wake_by_ref(&weak) in wake_by_ref_weak_raw()
60 drop(Weak::from_raw(data as *const W)) in drop_weak_raw()
63 pub(crate) fn new_waker<W: WeakWake>(w: Weak<W>) -> Waker { in new_waker()