Lines Matching refs:T

128 pub struct Arc<T: ?Sized> {
129 ptr: NonNull<ArcInner<T>>,
130 _p: PhantomData<ArcInner<T>>,
135 struct ArcInner<T: ?Sized> {
137 data: T,
141 impl<T: ?Sized> core::ops::Receiver for Arc<T> {}
145 impl<T: ?Sized + Unsize<U>, U: ?Sized> core::ops::CoerceUnsized<Arc<U>> for Arc<T> {}
148 impl<T: ?Sized + Unsize<U>, U: ?Sized> core::ops::DispatchFromDyn<Arc<U>> for Arc<T> {}
154 unsafe impl<T: ?Sized + Sync + Send> Send for Arc<T> {}
161 unsafe impl<T: ?Sized + Sync + Send> Sync for Arc<T> {}
163 impl<T> Arc<T> {
165 pub fn try_new(contents: T) -> Result<Self, AllocError> { in try_new()
184 pub fn pin_init<E>(init: impl PinInit<T, E>) -> error::Result<Self> in pin_init() argument
195 pub fn init<E>(init: impl Init<T, E>) -> error::Result<Self> in init() argument
203 impl<T: ?Sized> Arc<T> {
210 unsafe fn from_inner(inner: NonNull<ArcInner<T>>) -> Self { in from_inner()
223 pub fn as_arc_borrow(&self) -> ArcBorrow<'_, T> { in as_arc_borrow() argument
236 impl<T: 'static> ForeignOwnable for Arc<T> {
237 type Borrowed<'a> = ArcBorrow<'a, T>;
243 unsafe fn borrow<'a>(ptr: *const core::ffi::c_void) -> ArcBorrow<'a, T> { in borrow() argument
246 let inner = NonNull::new(ptr as *mut ArcInner<T>).unwrap(); in borrow()
261 impl<T: ?Sized> Deref for Arc<T> {
262 type Target = T;
271 impl<T: ?Sized> AsRef<T> for Arc<T> {
272 fn as_ref(&self) -> &T { in as_ref() argument
277 impl<T: ?Sized> Clone for Arc<T> {
289 impl<T: ?Sized> Drop for Arc<T> {
310 impl<T: ?Sized> From<UniqueArc<T>> for Arc<T> {
311 fn from(item: UniqueArc<T>) -> Self { in from()
316 impl<T: ?Sized> From<Pin<UniqueArc<T>>> for Arc<T> {
317 fn from(item: Pin<UniqueArc<T>>) -> Self { in from()
378 pub struct ArcBorrow<'a, T: ?Sized + 'a> {
379 inner: NonNull<ArcInner<T>>,
384 impl<T: ?Sized> core::ops::Receiver for ArcBorrow<'_, T> {}
388 impl<T: ?Sized + Unsize<U>, U: ?Sized> core::ops::DispatchFromDyn<ArcBorrow<'_, U>>
389 for ArcBorrow<'_, T>
393 impl<T: ?Sized> Clone for ArcBorrow<'_, T> {
399 impl<T: ?Sized> Copy for ArcBorrow<'_, T> {}
401 impl<T: ?Sized> ArcBorrow<'_, T> {
409 unsafe fn new(inner: NonNull<ArcInner<T>>) -> Self { in new()
418 impl<T: ?Sized> From<ArcBorrow<'_, T>> for Arc<T> {
419 fn from(b: ArcBorrow<'_, T>) -> Self { in from()
429 impl<T: ?Sized> Deref for ArcBorrow<'_, T> {
430 type Target = T;
513 pub struct UniqueArc<T: ?Sized> {
514 inner: Arc<T>,
517 impl<T> UniqueArc<T> {
519 pub fn try_new(value: T) -> Result<Self, AllocError> { in try_new()
527 pub fn try_new_uninit() -> Result<UniqueArc<MaybeUninit<T>>, AllocError> { in try_new_uninit()
532 data <- init::uninit::<T, AllocError>(), in try_new_uninit()
542 impl<T> UniqueArc<MaybeUninit<T>> {
544 pub fn write(mut self, value: T) -> UniqueArc<T> { in write() argument
556 pub unsafe fn assume_init(self) -> UniqueArc<T> { in assume_init() argument
566 pub fn init_with<E>(mut self, init: impl Init<T, E>) -> core::result::Result<UniqueArc<T>, E> { in init_with() argument
578 init: impl PinInit<T, E>, in pin_init_with() argument
579 ) -> core::result::Result<Pin<UniqueArc<T>>, E> { in pin_init_with() argument
590 impl<T: ?Sized> From<UniqueArc<T>> for Pin<UniqueArc<T>> {
591 fn from(obj: UniqueArc<T>) -> Self { in from()
598 impl<T: ?Sized> Deref for UniqueArc<T> {
599 type Target = T;
606 impl<T: ?Sized> DerefMut for UniqueArc<T> {
615 impl<T: fmt::Display + ?Sized> fmt::Display for UniqueArc<T> {
621 impl<T: fmt::Display + ?Sized> fmt::Display for Arc<T> {
627 impl<T: fmt::Debug + ?Sized> fmt::Debug for UniqueArc<T> {
633 impl<T: fmt::Debug + ?Sized> fmt::Debug for Arc<T> {