1
1
// default #[pin_project], PinnedDrop, Replace, !Unpin, and UnsafeUnpin without UnsafeUnpin impl are completely safe.
2
2
3
3
#[ :: pin_project:: pin_project]
4
+ #[ derive( Debug ) ]
4
5
pub struct DefaultStruct < T , U > {
5
6
#[ pin]
6
7
pub pinned : T ,
7
8
pub unpinned : U ,
8
9
}
9
10
10
11
#[ :: pin_project:: pin_project]
12
+ #[ derive( Debug ) ]
11
13
pub struct DefaultTupleStruct < T , U > ( #[ pin] pub T , pub U ) ;
12
14
13
15
#[ :: pin_project:: pin_project]
16
+ #[ derive( Debug ) ]
14
17
pub enum DefaultEnum < T , U > {
15
18
Struct {
16
19
#[ pin]
@@ -22,6 +25,7 @@ pub enum DefaultEnum<T, U> {
22
25
}
23
26
24
27
#[ :: pin_project:: pin_project( PinnedDrop ) ]
28
+ #[ derive( Debug ) ]
25
29
pub struct PinnedDropStruct < T , U > {
26
30
#[ pin]
27
31
pub pinned : T ,
@@ -34,6 +38,7 @@ impl<T, U> PinnedDrop for PinnedDropStruct<T, U> {
34
38
}
35
39
36
40
#[ :: pin_project:: pin_project( PinnedDrop ) ]
41
+ #[ derive( Debug ) ]
37
42
pub struct PinnedDropTupleStruct < T , U > ( #[ pin] pub T , pub U ) ;
38
43
39
44
#[ :: pin_project:: pinned_drop]
@@ -42,6 +47,7 @@ impl<T, U> PinnedDrop for PinnedDropTupleStruct<T, U> {
42
47
}
43
48
44
49
#[ :: pin_project:: pin_project( PinnedDrop ) ]
50
+ #[ derive( Debug ) ]
45
51
pub enum PinnedDropEnum < T , U > {
46
52
Struct {
47
53
#[ pin]
@@ -58,16 +64,19 @@ impl<T, U> PinnedDrop for PinnedDropEnum<T, U> {
58
64
}
59
65
60
66
#[ :: pin_project:: pin_project( Replace ) ]
67
+ #[ derive( Debug ) ]
61
68
pub struct ReplaceStruct < T , U > {
62
69
#[ pin]
63
70
pub pinned : T ,
64
71
pub unpinned : U ,
65
72
}
66
73
67
74
#[ :: pin_project:: pin_project( Replace ) ]
75
+ #[ derive( Debug ) ]
68
76
pub struct ReplaceTupleStruct < T , U > ( #[ pin] pub T , pub U ) ;
69
77
70
78
#[ :: pin_project:: pin_project( Replace ) ]
79
+ #[ derive( Debug ) ]
71
80
pub enum ReplaceEnum < T , U > {
72
81
Struct {
73
82
#[ pin]
@@ -79,16 +88,19 @@ pub enum ReplaceEnum<T, U> {
79
88
}
80
89
81
90
#[ :: pin_project:: pin_project( UnsafeUnpin ) ]
91
+ #[ derive( Debug ) ]
82
92
pub struct UnsafeUnpinStruct < T , U > {
83
93
#[ pin]
84
94
pub pinned : T ,
85
95
pub unpinned : U ,
86
96
}
87
97
88
98
#[ :: pin_project:: pin_project( UnsafeUnpin ) ]
99
+ #[ derive( Debug ) ]
89
100
pub struct UnsafeUnpinTupleStruct < T , U > ( #[ pin] pub T , pub U ) ;
90
101
91
102
#[ :: pin_project:: pin_project( UnsafeUnpin ) ]
103
+ #[ derive( Debug ) ]
92
104
pub enum UnsafeUnpinEnum < T , U > {
93
105
Struct {
94
106
#[ pin]
@@ -100,16 +112,19 @@ pub enum UnsafeUnpinEnum<T, U> {
100
112
}
101
113
102
114
#[ :: pin_project:: pin_project( !Unpin ) ]
115
+ #[ derive( Debug ) ]
103
116
pub struct NotUnpinStruct < T , U > {
104
117
#[ pin]
105
118
pub pinned : T ,
106
119
pub unpinned : U ,
107
120
}
108
121
109
122
#[ :: pin_project:: pin_project( !Unpin ) ]
123
+ #[ derive( Debug ) ]
110
124
pub struct NotUnpinTupleStruct < T , U > ( #[ pin] pub T , pub U ) ;
111
125
112
126
#[ :: pin_project:: pin_project( !Unpin ) ]
127
+ #[ derive( Debug ) ]
113
128
pub enum NotUnpinEnum < T , U > {
114
129
Struct {
115
130
#[ pin]
0 commit comments