Lines Matching +full:num +full:- +full:ids
1 // SPDX-License-Identifier: GPL-2.0
68 fn try_new_list_arc(&self) -> bool; in try_new_list_arc()
86 (impl$({$($generics:tt)*})? ListArcSafe<$num:tt> for $t:ty { untracked; } $($rest:tt)*) => {
87 impl$(<$($generics)*>)? $crate::list::ListArcSafe<$num> for $t {
94 (impl$({$($generics:tt)*})? ListArcSafe<$num:tt> for $t:ty {
97 impl$(<$($generics)*>)? $crate::list::ListArcSafe<$num> for $t {
107 <$fty as $crate::list::ListArcSafe<$num>>::on_create_list_arc_from_unique(field)
113 … unsafe { <$fty as $crate::list::ListArcSafe<$num>>::on_drop_list_arc(&self.$field) };
116 unsafe impl$(<$($generics)*>)? $crate::list::TryNewListArc<$num> for $t
118 $fty: TryNewListArc<$num>,
120 fn try_new_list_arc(&self) -> bool {
121 <$fty as $crate::list::TryNewListArc<$num>>::try_new_list_arc(&self.$field)
173 pub fn new(contents: T, flags: Flags) -> Result<Self, AllocError> { in new()
177 /// Use the given initializer to in-place initialize a `T`.
183 pub fn pin_init<E>(init: impl PinInit<T, E>, flags: Flags) -> Result<Self, E> in pin_init()
190 /// Use the given initializer to in-place initialize a `T`.
194 pub fn init<E>(init: impl Init<T, E>, flags: Flags) -> Result<Self, E> in init()
208 fn from(unique: UniqueArc<T>) -> Self { in from()
219 fn from(mut unique: Pin<UniqueArc<T>>) -> Self { in from()
235 /// The two ids must be different.
237 pub fn pair_from_unique<const ID2: u64>(unique: UniqueArc<T>) -> (Self, ListArc<T, ID2>) in pair_from_unique()
246 /// The two ids must be different.
250 ) -> (Self, ListArc<T, ID2>) in pair_from_pin_unique()
265 // for both IDs (which are different), so we can create two `ListArc`s. in pair_from_pin_unique()
277 pub fn try_from_arc(arc: Arc<T>) -> Result<Self, Arc<T>> in try_from_arc()
293 pub fn try_from_arc_borrow(arc: ArcBorrow<'_, T>) -> Option<Self> in try_from_arc_borrow()
310 pub fn try_from_arc_or_drop(arc: Arc<T>) -> Option<Self> in try_from_arc_or_drop()
327 unsafe fn transmute_from_arc(arc: Arc<T>) -> Self { in transmute_from_arc()
337 fn transmute_to_arc(self) -> Arc<T> { in transmute_to_arc()
349 pub fn into_raw(self) -> *const T { in into_raw()
361 pub unsafe fn from_raw(ptr: *const T) -> Self { in from_raw()
371 pub fn into_arc(self) -> Arc<T> { in into_arc()
380 pub fn clone_arc(&self) -> Arc<T> { in clone_arc()
391 pub fn as_arc(&self) -> &Arc<T> { in as_arc()
400 pub fn as_arc_borrow(&self) -> ArcBorrow<'_, T> { in as_arc_borrow()
406 pub fn ptr_eq(this: &Self, other: &Self) -> bool { in ptr_eq()
418 fn deref(&self) -> &Self::Target { in deref()
440 fn as_ref(&self) -> &Arc<T> { in as_ref()
446 // dynamically-sized type (DST) `U`.
479 pub fn new() -> impl PinInit<Self> { in new()
480 // INVARIANT: Pin-init initializers can't be used on an existing `Arc`, so this value will in new()
488 fn project_inner(self: Pin<&mut Self>) -> &mut AtomicBool { in project_inner()
512 // `ListArc` happens-before the creation of the new `ListArc`.
514 fn try_new_list_arc(&self) -> bool { in try_new_list_arc()