@@ -1711,20 +1711,21 @@ mod helper {
1711
1711
#[ repr( transparent) ]
1712
1712
#[ unstable( feature = "pin_derefmut_internals" , issue = "none" ) ]
1713
1713
#[ allow( missing_debug_implementations) ]
1714
- pub struct Pin <Ptr > {
1714
+ pub struct PinHelper <Ptr > {
1715
1715
pointer: Ptr ,
1716
1716
}
1717
1717
1718
1718
#[ unstable ( feature = "pin_derefmut_internals" , issue = "none" ) ]
1719
1719
#[ rustc_const_unstable ( feature = "const_convert" , issue = "143773" ) ]
1720
- pub const trait DerefMut {
1720
+ #[ rustc_diagnostic_item = "PinDerefMutHelper" ]
1721
+ pub const trait PinDerefMutHelper {
1721
1722
type Target : ?Sized ;
1722
1723
fn deref_mut( & mut self ) -> & mut Self :: Target ;
1723
1724
}
1724
1725
1725
1726
#[ unstable ( feature = "pin_derefmut_internals" , issue = "none" ) ]
1726
1727
#[ rustc_const_unstable ( feature = "const_convert" , issue = "143773" ) ]
1727
- impl<Ptr : [ const ] super :: DerefMut > const DerefMut for Pin <Ptr >
1728
+ impl<Ptr : [ const ] super :: DerefMut > const PinDerefMutHelper for PinHelper <Ptr >
1728
1729
where
1729
1730
Ptr :: Target : crate :: marker:: Unpin ,
1730
1731
{
@@ -1743,14 +1744,14 @@ mod helper {
1743
1744
impl<Ptr > const DerefMut for Pin <Ptr >
1744
1745
where
1745
1746
Ptr : [ const ] Deref ,
1746
- helper:: Pin <Ptr >: [ const ] helper:: DerefMut <Target = Self :: Target >,
1747
+ helper:: PinHelper <Ptr >: [ const ] helper:: PinDerefMutHelper <Target = Self :: Target >,
1747
1748
{
1748
1749
#[ inline]
1749
1750
fn deref_mut ( & mut self ) -> & mut Ptr :: Target {
1750
- // SAFETY: Pin and helper::Pin have the same layout, so this is equivalent to
1751
+ // SAFETY: Pin and PinHelper have the same layout, so this is equivalent to
1751
1752
// `&mut self.pointer` which is safe because `Target: Unpin`.
1752
- helper:: DerefMut :: deref_mut ( unsafe {
1753
- & mut * ( self as * mut Pin < Ptr > as * mut helper:: Pin < Ptr > )
1753
+ helper:: PinDerefMutHelper :: deref_mut ( unsafe {
1754
+ & mut * ( self as * mut Pin < Ptr > as * mut helper:: PinHelper < Ptr > )
1754
1755
} )
1755
1756
}
1756
1757
}
0 commit comments