Re: [PATCH v3 04/13] rust: add pin-init API core

From: Andreas Hindborg
Date: Fri Mar 31 2023 - 04:18:45 EST



Benno Lossin <y86-dev@xxxxxxxxxxxxxx> writes:

> On 30.03.23 15:05, Andreas Hindborg wrote:
>>> +//! [`Arc<T>`]: crate::sync::Arc
>>> +//! [`impl PinInit<Foo>`]: PinInit
>>> +//! [`impl PinInit<T, E>`]: PinInit
>>> +//! [`impl Init<T, E>`]: Init
>>> +//! [`Opaque`]: kernel::types::Opaque
>>> +//! [`pin_data`]: ::macros::pin_data
>>> +//! [`UniqueArc<T>`]: kernel::sync::UniqueArc
>>> +//! [`Box<T>`]: alloc::boxed::Box
>>> +
>>> +use core::{convert::Infallible, marker::PhantomData, mem::MaybeUninit};
>>> +
>>> +/// A pinned initializer for `T`.
>>
>> "An initializer for a pinned `T`" instead?
>
> To me this does not really make sense, since the type `T` cannot be
> pinned, only an instance can be. But maybe I should use the term
> `pin-initializer` instead.

I see. Could be "An initializer for a pinned instance of `T`" then. Just
to clarify that the initializer itself is not the thing that is pinned.