aboutsummaryrefslogtreecommitdiff
path: root/tests/expand/multifields/enum.expanded.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/expand/multifields/enum.expanded.rs')
-rw-r--r--tests/expand/multifields/enum.expanded.rs145
1 files changed, 80 insertions, 65 deletions
diff --git a/tests/expand/multifields/enum.expanded.rs b/tests/expand/multifields/enum.expanded.rs
index fd31201..8223de3 100644
--- a/tests/expand/multifields/enum.expanded.rs
+++ b/tests/expand/multifields/enum.expanded.rs
@@ -1,14 +1,13 @@
use pin_project::pin_project;
-# [pin (__private (project = EnumProj , project_ref = EnumProjRef , project_replace = EnumProjOwn))]
+#[pin(
+ __private(
+ project = EnumProj,
+ project_ref = EnumProjRef,
+ project_replace = EnumProjOwn
+ )
+)]
enum Enum<T, U> {
- Struct {
- #[pin]
- pinned1: T,
- #[pin]
- pinned2: T,
- unpinned1: U,
- unpinned2: U,
- },
+ Struct { #[pin] pinned1: T, #[pin] pinned2: T, unpinned1: U, unpinned2: U },
Tuple(#[pin] T, #[pin] T, U, U),
Unit,
}
@@ -17,6 +16,7 @@ enum Enum<T, U> {
#[allow(explicit_outlives_requirements)]
#[allow(single_use_lifetimes)]
#[allow(unreachable_pub)]
+#[allow(unused_tuple_struct_fields)]
#[allow(clippy::unknown_clippy_lints)]
#[allow(clippy::pattern_type_mismatch)]
#[allow(clippy::redundant_pub_crate)]
@@ -46,6 +46,7 @@ where
#[allow(explicit_outlives_requirements)]
#[allow(single_use_lifetimes)]
#[allow(unreachable_pub)]
+#[allow(unused_tuple_struct_fields)]
#[allow(clippy::unknown_clippy_lints)]
#[allow(clippy::pattern_type_mismatch)]
#[allow(clippy::redundant_pub_crate)]
@@ -75,6 +76,7 @@ where
#[allow(explicit_outlives_requirements)]
#[allow(single_use_lifetimes)]
#[allow(unreachable_pub)]
+#[allow(unused_tuple_struct_fields)]
#[allow(clippy::unknown_clippy_lints)]
#[allow(clippy::pattern_type_mismatch)]
#[allow(clippy::redundant_pub_crate)]
@@ -102,6 +104,7 @@ enum EnumProjOwn<T, U> {
#[allow(explicit_outlives_requirements)]
#[allow(single_use_lifetimes)]
#[allow(unreachable_pub)]
+#[allow(unused_tuple_struct_fields)]
#[allow(clippy::unknown_clippy_lints)]
#[allow(clippy::pattern_type_mismatch)]
#[allow(clippy::redundant_pub_crate)]
@@ -114,74 +117,80 @@ const _: () = {
#[allow(unused_extern_crates)]
extern crate pin_project as _pin_project;
impl<T, U> Enum<T, U> {
+ #[allow(dead_code)]
fn project<'pin>(
self: _pin_project::__private::Pin<&'pin mut Self>,
) -> EnumProj<'pin, T, U> {
unsafe {
match self.get_unchecked_mut() {
- Self::Struct {
- pinned1,
- pinned2,
- unpinned1,
- unpinned2,
- } => EnumProj::Struct {
- pinned1: _pin_project::__private::Pin::new_unchecked(pinned1),
- pinned2: _pin_project::__private::Pin::new_unchecked(pinned2),
- unpinned1,
- unpinned2,
- },
- Self::Tuple(_0, _1, _2, _3) => EnumProj::Tuple(
- _pin_project::__private::Pin::new_unchecked(_0),
- _pin_project::__private::Pin::new_unchecked(_1),
- _2,
- _3,
- ),
+ Self::Struct { pinned1, pinned2, unpinned1, unpinned2 } => {
+ EnumProj::Struct {
+ pinned1: _pin_project::__private::Pin::new_unchecked(
+ pinned1,
+ ),
+ pinned2: _pin_project::__private::Pin::new_unchecked(
+ pinned2,
+ ),
+ unpinned1,
+ unpinned2,
+ }
+ }
+ Self::Tuple(_0, _1, _2, _3) => {
+ EnumProj::Tuple(
+ _pin_project::__private::Pin::new_unchecked(_0),
+ _pin_project::__private::Pin::new_unchecked(_1),
+ _2,
+ _3,
+ )
+ }
Self::Unit => EnumProj::Unit,
}
}
}
+ #[allow(dead_code)]
#[allow(clippy::missing_const_for_fn)]
fn project_ref<'pin>(
self: _pin_project::__private::Pin<&'pin Self>,
) -> EnumProjRef<'pin, T, U> {
unsafe {
match self.get_ref() {
- Self::Struct {
- pinned1,
- pinned2,
- unpinned1,
- unpinned2,
- } => EnumProjRef::Struct {
- pinned1: _pin_project::__private::Pin::new_unchecked(pinned1),
- pinned2: _pin_project::__private::Pin::new_unchecked(pinned2),
- unpinned1,
- unpinned2,
- },
- Self::Tuple(_0, _1, _2, _3) => EnumProjRef::Tuple(
- _pin_project::__private::Pin::new_unchecked(_0),
- _pin_project::__private::Pin::new_unchecked(_1),
- _2,
- _3,
- ),
+ Self::Struct { pinned1, pinned2, unpinned1, unpinned2 } => {
+ EnumProjRef::Struct {
+ pinned1: _pin_project::__private::Pin::new_unchecked(
+ pinned1,
+ ),
+ pinned2: _pin_project::__private::Pin::new_unchecked(
+ pinned2,
+ ),
+ unpinned1,
+ unpinned2,
+ }
+ }
+ Self::Tuple(_0, _1, _2, _3) => {
+ EnumProjRef::Tuple(
+ _pin_project::__private::Pin::new_unchecked(_0),
+ _pin_project::__private::Pin::new_unchecked(_1),
+ _2,
+ _3,
+ )
+ }
Self::Unit => EnumProjRef::Unit,
}
}
}
+ #[allow(dead_code)]
fn project_replace(
self: _pin_project::__private::Pin<&mut Self>,
__replacement: Self,
) -> EnumProjOwn<T, U> {
unsafe {
let __self_ptr: *mut Self = self.get_unchecked_mut();
- let __guard =
- _pin_project::__private::UnsafeOverwriteGuard::new(__self_ptr, __replacement);
+ let __guard = _pin_project::__private::UnsafeOverwriteGuard::new(
+ __self_ptr,
+ __replacement,
+ );
match &mut *__self_ptr {
- Self::Struct {
- pinned1,
- pinned2,
- unpinned1,
- unpinned2,
- } => {
+ Self::Struct { pinned1, pinned2, unpinned1, unpinned2 } => {
let __result = EnumProjOwn::Struct {
pinned1: _pin_project::__private::PhantomData,
pinned2: _pin_project::__private::PhantomData,
@@ -189,10 +198,12 @@ const _: () = {
unpinned2: _pin_project::__private::ptr::read(unpinned2),
};
{
- let __guard =
- _pin_project::__private::UnsafeDropInPlaceGuard::new(pinned2);
- let __guard =
- _pin_project::__private::UnsafeDropInPlaceGuard::new(pinned1);
+ let __guard = _pin_project::__private::UnsafeDropInPlaceGuard::new(
+ pinned2,
+ );
+ let __guard = _pin_project::__private::UnsafeDropInPlaceGuard::new(
+ pinned1,
+ );
}
__result
}
@@ -204,8 +215,12 @@ const _: () = {
_pin_project::__private::ptr::read(_3),
);
{
- let __guard = _pin_project::__private::UnsafeDropInPlaceGuard::new(_1);
- let __guard = _pin_project::__private::UnsafeDropInPlaceGuard::new(_0);
+ let __guard = _pin_project::__private::UnsafeDropInPlaceGuard::new(
+ _1,
+ );
+ let __guard = _pin_project::__private::UnsafeDropInPlaceGuard::new(
+ _0,
+ );
}
__result
}
@@ -232,15 +247,15 @@ const _: () = {
__field2: T,
__field3: T,
}
- impl<'pin, T, U> _pin_project::__private::Unpin for Enum<T, U> where
- __Enum<'pin, T, U>: _pin_project::__private::Unpin
- {
- }
+ impl<'pin, T, U> _pin_project::__private::Unpin for Enum<T, U>
+ where
+ __Enum<'pin, T, U>: _pin_project::__private::Unpin,
+ {}
#[doc(hidden)]
- unsafe impl<'pin, T, U> _pin_project::UnsafeUnpin for Enum<T, U> where
- __Enum<'pin, T, U>: _pin_project::__private::Unpin
- {
- }
+ unsafe impl<'pin, T, U> _pin_project::UnsafeUnpin for Enum<T, U>
+ where
+ __Enum<'pin, T, U>: _pin_project::__private::Unpin,
+ {}
trait EnumMustNotImplDrop {}
#[allow(clippy::drop_bounds, drop_bounds)]
impl<T: _pin_project::__private::Drop> EnumMustNotImplDrop for T {}