0.4.21
-
Consider naming the projected type by passing an argument with the same name as the method to the #[pin_project] attribute instead.
use pin_project::pin_project; use std::pin::Pin; #[pin_project(project = EnumProj)] enum Enum<T> { Variant(#[pin] T), } fn func<T>(x: Pin<&mut Enum<T>>) { match x.project() { EnumProj::Variant(y) => { let _: Pin<&mut T> = y; } } }
See #225 for more details.
-
Diagnostic improvements.