Lines Matching refs:T

768 pub unsafe trait PinInit<T: ?Sized, E = Infallible>: Sized {
777 unsafe fn __pinned_init(self, slot: *mut T) -> Result<(), E>; in __pinned_init()
818 fn pin_chain<F>(self, f: F) -> ChainPinInit<Self, F, T, E> in pin_chain() argument
820 F: FnOnce(Pin<&mut T>) -> Result<(), E>, in pin_chain()
827 pub struct ChainPinInit<I, F, T: ?Sized, E>(I, F, __internal::Invariant<(E, Box<T>)>);
833 unsafe impl<T: ?Sized, E, I, F> PinInit<T, E> for ChainPinInit<I, F, T, E>
835 I: PinInit<T, E>,
836 F: FnOnce(Pin<&mut T>) -> Result<(), E>,
838 unsafe fn __pinned_init(self, slot: *mut T) -> Result<(), E> { in __pinned_init()
883 pub unsafe trait Init<T: ?Sized, E = Infallible>: PinInit<T, E> {
891 unsafe fn __init(self, slot: *mut T) -> Result<(), E>; in __init()
920 fn chain<F>(self, f: F) -> ChainInit<Self, F, T, E> in chain() argument
922 F: FnOnce(&mut T) -> Result<(), E>, in chain()
929 pub struct ChainInit<I, F, T: ?Sized, E>(I, F, __internal::Invariant<(E, Box<T>)>);
934 unsafe impl<T: ?Sized, E, I, F> Init<T, E> for ChainInit<I, F, T, E>
936 I: Init<T, E>,
937 F: FnOnce(&mut T) -> Result<(), E>,
939 unsafe fn __init(self, slot: *mut T) -> Result<(), E> { in __init()
952 unsafe impl<T: ?Sized, E, I, F> PinInit<T, E> for ChainInit<I, F, T, E>
954 I: Init<T, E>,
955 F: FnOnce(&mut T) -> Result<(), E>,
957 unsafe fn __pinned_init(self, slot: *mut T) -> Result<(), E> { in __pinned_init()
976 pub const unsafe fn pin_init_from_closure<T: ?Sized, E>( in pin_init_from_closure()
977 f: impl FnOnce(*mut T) -> Result<(), E>, in pin_init_from_closure()
978 ) -> impl PinInit<T, E> { in pin_init_from_closure() argument
995 pub const unsafe fn init_from_closure<T: ?Sized, E>( in init_from_closure()
996 f: impl FnOnce(*mut T) -> Result<(), E>, in init_from_closure()
997 ) -> impl Init<T, E> { in init_from_closure() argument
1005 pub fn uninit<T, E>() -> impl Init<MaybeUninit<T>, E> { in uninit() argument
1019 pub fn init_array_from_fn<I, const N: usize, T, E>( in init_array_from_fn() argument
1021 ) -> impl Init<[T; N], E> in init_array_from_fn()
1023 I: Init<T, E>, argument
1025 let init = move |slot: *mut [T; N]| {
1026 let slot = slot.cast::<T>();
1063 pub fn pin_init_array_from_fn<I, const N: usize, T, E>( in pin_init_array_from_fn() argument
1065 ) -> impl PinInit<[T; N], E> in pin_init_array_from_fn()
1067 I: PinInit<T, E>, argument
1069 let init = move |slot: *mut [T; N]| {
1070 let slot = slot.cast::<T>();
1098 unsafe impl<T, E> Init<T, E> for T { implementation
1099 unsafe fn __init(self, slot: *mut T) -> Result<(), E> { in __init()
1106 unsafe impl<T, E> PinInit<T, E> for T { implementation
1107 unsafe fn __pinned_init(self, slot: *mut T) -> Result<(), E> { in __pinned_init()
1113 pub trait InPlaceInit<T>: Sized {
1118 fn try_pin_init<E>(init: impl PinInit<T, E>) -> Result<Pin<Self>, E> in try_pin_init() argument
1126 fn pin_init<E>(init: impl PinInit<T, E>) -> error::Result<Pin<Self>> in pin_init() argument
1138 fn try_init<E>(init: impl Init<T, E>) -> Result<Self, E> in try_init() argument
1143 fn init<E>(init: impl Init<T, E>) -> error::Result<Self> in init() argument
1155 impl<T> InPlaceInit<T> for Box<T> {
1157 fn try_pin_init<E>(init: impl PinInit<T, E>) -> Result<Pin<Self>, E> in try_pin_init() argument
1171 fn try_init<E>(init: impl Init<T, E>) -> Result<Self, E> in try_init() argument
1185 impl<T> InPlaceInit<T> for UniqueArc<T> {
1187 fn try_pin_init<E>(init: impl PinInit<T, E>) -> Result<Pin<Self>, E> in try_pin_init() argument
1201 fn try_init<E>(init: impl Init<T, E>) -> Result<Self, E> in try_init() argument
1270 pub fn zeroed<T: Zeroable>() -> impl Init<T> { in zeroed() argument
1274 init_from_closure(|slot: *mut T| { in zeroed()
1303 {<T: ?Sized>} PhantomData<T>, core::marker::PhantomPinned, (),
1306 {<T>} MaybeUninit<T>,
1308 {<T>} Opaque<T>,
1311 {<T: ?Sized + Zeroable>} UnsafeCell<T>,
1322 {<T: ?Sized>} Option<NonNull<T>>,
1323 {<T: ?Sized>} Option<Box<T>>,
1332 {<T>} *mut T, {<T>} *const T,
1336 {<T>} *mut [T], {<T>} *const [T], *mut str, *const str,
1339 {<const N: usize, T: Zeroable>} [T; N], {<T: Zeroable>} Wrapping<T>,