Home
last modified time | relevance | path

Searched refs:UniqueArc (Results 1 – 4 of 4) sorted by relevance

/linux/rust/kernel/sync/ !
H A Darc.rs215 UniqueArc::try_pin_init(init, flags).map(|u| u.into()) in try_pin_init()
223 UniqueArc::try_init(init, flags).map(|u| u.into()) in try_init()
313 /// Converts this [`Arc`] into a [`UniqueArc`], or destroys it if it is not unique.
321 /// use kernel::sync::{Arc, UniqueArc};
335 /// use kernel::sync::{Arc, UniqueArc};
347 pub fn into_unique_or_drop(self) -> Option<Pin<UniqueArc<T>>> { in into_unique_or_drop()
355 // no other arcs, and we can create a `UniqueArc`. in into_unique_or_drop()
364 // INVARIANT: We own the only refcount to this arc, so we may create a `UniqueArc`. We in into_unique_or_drop()
365 // must pin the `UniqueArc` because the values was previously in an `Arc`, and they pin in into_unique_or_drop()
367 Some(Pin::from(UniqueArc { in into_unique_or_drop()
718 pub struct UniqueArc<T: ?Sized> { global() struct
722 impl<T> InPlaceInit<T> for UniqueArc<T> { global() implementation
742 impl<T> InPlaceWrite<T> for UniqueArc<MaybeUninit<T>> { global() implementation
764 impl<T> UniqueArc<T> { global() implementation
792 impl<T> UniqueArc<MaybeUninit<T>> { global() implementation
848 impl<T: ?Sized> Deref for UniqueArc<T> { global() implementation
856 impl<T: ?Sized> DerefMut for UniqueArc<T> { global() implementation
884 impl<T: ?Sized> Borrow<T> for UniqueArc<T> { global() implementation
909 impl<T: ?Sized> BorrowMut<T> for UniqueArc<T> { global() implementation
915 impl<T: fmt::Display + ?Sized> fmt::Display for UniqueArc<T> { global() implementation
927 impl<T: fmt::Debug + ?Sized> fmt::Debug for UniqueArc<T> { global() implementation
[all...]
/linux/rust/kernel/list/ !
H A Darc.rs9 use crate::sync::{Arc, ArcBorrow, UniqueArc};
76 /// using this strategy, the only way to create a [`ListArc`] is using a [`UniqueArc`].
140 /// simplest is to convert a [`UniqueArc`] into a `ListArc`. However, the refcounted object could
174 Ok(Self::from(UniqueArc::new(contents, flags)?)) in new()
187 Ok(Self::from(UniqueArc::try_pin_init(init, flags)?)) in pin_init()
198 Ok(Self::from(UniqueArc::try_init(init, flags)?)) in init()
202 impl<T, const ID: u64> From<UniqueArc<T>> for ListArc<T, ID>
206 /// Convert a [`UniqueArc`] into a [`ListArc`].
208 fn from(unique: UniqueArc<T>) -> Self { in from()
213 impl<T, const ID: u64> From<Pin<UniqueArc<
[all...]
/linux/rust/kernel/ !
H A Dsync.rs21 pub use arc::{Arc, ArcBorrow, UniqueArc};
/linux/samples/rust/ !
H A Drust_print_main.rs23 let b = UniqueArc::new("hello, world", GFP_KERNEL)?; in arc_print()