Lines Matching refs:T

1003 pub unsafe trait PinInit<T: ?Sized, E = Infallible>: Sized {
1012 unsafe fn __pinned_init(self, slot: *mut T) -> Result<(), E>; in __pinned_init()
1032 fn pin_chain<F>(self, f: F) -> ChainPinInit<Self, F, T, E> in pin_chain() argument
1034 F: FnOnce(Pin<&mut T>) -> Result<(), E>, in pin_chain()
1041 pub struct ChainPinInit<I, F, T: ?Sized, E>(I, F, __internal::Invariant<(E, T)>);
1047 unsafe impl<T: ?Sized, E, I, F> PinInit<T, E> for ChainPinInit<I, F, T, E>
1049 I: PinInit<T, E>,
1050 F: FnOnce(Pin<&mut T>) -> Result<(), E>,
1052 unsafe fn __pinned_init(self, slot: *mut T) -> Result<(), E> { in __pinned_init()
1102 pub unsafe trait Init<T: ?Sized, E = Infallible>: PinInit<T, E> {
1110 unsafe fn __init(self, slot: *mut T) -> Result<(), E>; in __init()
1140 fn chain<F>(self, f: F) -> ChainInit<Self, F, T, E> in chain() argument
1142 F: FnOnce(&mut T) -> Result<(), E>, in chain()
1149 pub struct ChainInit<I, F, T: ?Sized, E>(I, F, __internal::Invariant<(E, T)>);
1154 unsafe impl<T: ?Sized, E, I, F> Init<T, E> for ChainInit<I, F, T, E>
1156 I: Init<T, E>,
1157 F: FnOnce(&mut T) -> Result<(), E>,
1159 unsafe fn __init(self, slot: *mut T) -> Result<(), E> { in __init()
1170 unsafe impl<T: ?Sized, E, I, F> PinInit<T, E> for ChainInit<I, F, T, E>
1172 I: Init<T, E>,
1173 F: FnOnce(&mut T) -> Result<(), E>,
1175 unsafe fn __pinned_init(self, slot: *mut T) -> Result<(), E> { in __pinned_init()
1194 pub const unsafe fn pin_init_from_closure<T: ?Sized, E>( in pin_init_from_closure()
1195 f: impl FnOnce(*mut T) -> Result<(), E>, in pin_init_from_closure()
1196 ) -> impl PinInit<T, E> { in pin_init_from_closure() argument
1213 pub const unsafe fn init_from_closure<T: ?Sized, E>( in init_from_closure()
1214 f: impl FnOnce(*mut T) -> Result<(), E>, in init_from_closure()
1215 ) -> impl Init<T, E> { in init_from_closure() argument
1223 pub fn uninit<T, E>() -> impl Init<MaybeUninit<T>, E> { in uninit() argument
1238 pub fn init_array_from_fn<I, const N: usize, T, E>( in init_array_from_fn() argument
1240 ) -> impl Init<[T; N], E> in init_array_from_fn()
1242 I: Init<T, E>, argument
1244 let init = move |slot: *mut [T; N]| {
1245 let slot = slot.cast::<T>();
1281 pub fn pin_init_array_from_fn<I, const N: usize, T, E>( in pin_init_array_from_fn() argument
1283 ) -> impl PinInit<[T; N], E> in pin_init_array_from_fn()
1285 I: PinInit<T, E>, argument
1287 let init = move |slot: *mut [T; N]| {
1288 let slot = slot.cast::<T>();
1310 unsafe impl<T, E> Init<T, E> for T { implementation
1311 unsafe fn __init(self, slot: *mut T) -> Result<(), E> { in __init()
1319 unsafe impl<T, E> PinInit<T, E> for T { implementation
1320 unsafe fn __pinned_init(self, slot: *mut T) -> Result<(), E> { in __pinned_init()
1327 pub trait InPlaceWrite<T> {
1334 fn write_init<E>(self, init: impl Init<T, E>) -> Result<Self::Initialized, E>; in write_init() argument
1339 fn write_pin_init<E>(self, init: impl PinInit<T, E>) -> Result<Pin<Self::Initialized>, E>; in write_pin_init() argument
1401 unsafe impl<T: ZeroableOption> Zeroable for Option<T> {}
1407 pub fn zeroed<T: Zeroable>() -> impl Init<T> { in zeroed() argument
1411 init_from_closure(|slot: *mut T| { in zeroed()
1441 {<T: ?Sized>} PhantomData<T>, core::marker::PhantomPinned, (),
1444 {<T>} MaybeUninit<T>,
1447 {<T: ?Sized + Zeroable>} UnsafeCell<T>,
1455 {<T>} Option<NonNull<T>>,
1464 {<T>} *mut T, {<T>} *const T,
1468 {<T>} *mut [T], {<T>} *const [T], *mut str, *const str,
1471 {<const N: usize, T: Zeroable>} [T; N], {<T: Zeroable>} Wrapping<T>,