pub trait Project {
type Base: ?Sized;
type Output<'a, Field: 'a>
where Self: 'a;
// Required method
unsafe fn project<'a, Field>(
&'a self,
project_field: fn(*const Self::Base) -> *const Field,
) -> Self::Output<'a, Field>;
}Required Associated Types§
Required Methods§
unsafe fn project<'a, Field>( &'a self, project_field: fn(*const Self::Base) -> *const Field, ) -> Self::Output<'a, Field>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
Source§impl<P> Project for Pin<P>where
P: Deref,
[`Project’] is used to “project” a generic type onto a field of that type that’s wrapped.
impl<P> Project for Pin<P>where
P: Deref,
[`Project’] is used to “project” a generic type onto a field of that type that’s wrapped.