summaryrefslogtreecommitdiff
path: root/rust/kernel/types.rs
diff options
context:
space:
mode:
Diffstat (limited to 'rust/kernel/types.rs')
-rw-r--r--rust/kernel/types.rs13
1 files changed, 8 insertions, 5 deletions
diff --git a/rust/kernel/types.rs b/rust/kernel/types.rs
index ac316fd7b538..132dd428c1f6 100644
--- a/rust/kernel/types.rs
+++ b/rust/kernel/types.rs
@@ -13,7 +13,10 @@ use pin_init::{PinInit, Wrapper, Zeroable};
#[doc(hidden)]
pub mod for_lt;
-pub use for_lt::ForLt;
+pub use for_lt::{
+ CovariantForLt,
+ ForLt, //
+};
/// Used to transfer ownership to and from foreign (non-Rust) languages.
///
@@ -417,13 +420,13 @@ impl<T> Opaque<T> {
impl<T> Wrapper<T> for Opaque<T> {
/// Create an opaque pin-initializer from the given pin-initializer.
- fn pin_init<E>(slot: impl PinInit<T, E>) -> impl PinInit<Self, E> {
- Self::try_ffi_init(|ptr: *mut T| {
+ fn pin_init<E>(init: impl PinInit<T, E>) -> impl PinInit<Self, E> {
+ Self::try_ffi_init(|slot: *mut T| {
// SAFETY:
- // - `ptr` is a valid pointer to uninitialized memory,
+ // - `slot` is a valid pointer to uninitialized memory,
// - `slot` is not accessed on error,
// - `slot` is pinned in memory.
- unsafe { PinInit::<T, E>::__pinned_init(slot, ptr) }
+ unsafe { pin_init::raw_try_init(slot, init) }
})
}
}