@@ -1111,38 +1111,38 @@ pub unsafe fn unreachable() -> ! {
11111111/// A pinned reference is a lot like a mutable reference, except that it is not
11121112/// safe to move a value out of a pinned reference unless the type of that
11131113/// value implements the `Unpin` trait.
1114- #[ unstable( feature = "pin" , issue = "0 " ) ]
1114+ #[ unstable( feature = "pin" , issue = "49150 " ) ]
11151115#[ fundamental]
11161116pub struct Pin < ' a , T : ?Sized + ' a > {
11171117 inner : & ' a mut T ,
11181118}
11191119
1120- #[ unstable( feature = "pin" , issue = "0 " ) ]
1120+ #[ unstable( feature = "pin" , issue = "49150 " ) ]
11211121impl < ' a , T : ?Sized + Unpin > Pin < ' a , T > {
11221122 /// Construct a new `Pin` around a reference to some data of a type that
11231123 /// implements `Unpin`.
1124- #[ unstable( feature = "pin" , issue = "0 " ) ]
1124+ #[ unstable( feature = "pin" , issue = "49150 " ) ]
11251125 pub fn new ( reference : & ' a mut T ) -> Pin < ' a , T > {
11261126 Pin { inner : reference }
11271127 }
11281128}
11291129
11301130
1131- #[ unstable( feature = "pin" , issue = "0 " ) ]
1131+ #[ unstable( feature = "pin" , issue = "49150 " ) ]
11321132impl < ' a , T : ?Sized > Pin < ' a , T > {
11331133 /// Construct a new `Pin` around a reference to some data of a type that
11341134 /// may or may not implement `Unpin`.
11351135 ///
11361136 /// This constructor is unsafe because we do not know what will happen with
11371137 /// that data after the reference ends. If you cannot guarantee that the
11381138 /// data will never move again, calling this constructor is invalid.
1139- #[ unstable( feature = "pin" , issue = "0 " ) ]
1139+ #[ unstable( feature = "pin" , issue = "49150 " ) ]
11401140 pub unsafe fn new_unchecked ( reference : & ' a mut T ) -> Pin < ' a , T > {
11411141 Pin { inner : reference }
11421142 }
11431143
11441144 /// Borrow a Pin for a shorter lifetime than it already has.
1145- #[ unstable( feature = "pin" , issue = "0 " ) ]
1145+ #[ unstable( feature = "pin" , issue = "49150 " ) ]
11461146 pub fn borrow < ' b > ( this : & ' b mut Pin < ' a , T > ) -> Pin < ' b , T > {
11471147 Pin { inner : this. inner }
11481148 }
@@ -1152,7 +1152,7 @@ impl<'a, T: ?Sized> Pin<'a, T> {
11521152 /// This function is unsafe. You must guarantee that you will never move
11531153 /// the data out of the mutable reference you receive when you call this
11541154 /// function.
1155- #[ unstable( feature = "pin" , issue = "0 " ) ]
1155+ #[ unstable( feature = "pin" , issue = "49150 " ) ]
11561156 pub unsafe fn get_mut < ' b > ( this : & ' b mut Pin < ' a , T > ) -> & ' b mut T {
11571157 this. inner
11581158 }
@@ -1166,15 +1166,15 @@ impl<'a, T: ?Sized> Pin<'a, T> {
11661166 /// will not move so long as the argument value does not move (for example,
11671167 /// because it is one of the fields of that value), and also that you do
11681168 /// not move out of the argument you receive to the interior function.
1169- #[ unstable( feature = "pin" , issue = "0 " ) ]
1169+ #[ unstable( feature = "pin" , issue = "49150 " ) ]
11701170 pub unsafe fn map < ' b , U , F > ( this : & ' b mut Pin < ' a , T > , f : F ) -> Pin < ' b , U > where
11711171 F : FnOnce ( & mut T ) -> & mut U
11721172 {
11731173 Pin { inner : f ( this. inner ) }
11741174 }
11751175}
11761176
1177- #[ unstable( feature = "pin" , issue = "0 " ) ]
1177+ #[ unstable( feature = "pin" , issue = "49150 " ) ]
11781178impl < ' a , T : ?Sized > Deref for Pin < ' a , T > {
11791179 type Target = T ;
11801180
@@ -1183,33 +1183,33 @@ impl<'a, T: ?Sized> Deref for Pin<'a, T> {
11831183 }
11841184}
11851185
1186- #[ unstable( feature = "pin" , issue = "0 " ) ]
1186+ #[ unstable( feature = "pin" , issue = "49150 " ) ]
11871187impl < ' a , T : ?Sized + Unpin > DerefMut for Pin < ' a , T > {
11881188 fn deref_mut ( & mut self ) -> & mut T {
11891189 self . inner
11901190 }
11911191}
11921192
1193- #[ unstable( feature = "pin" , issue = "0 " ) ]
1193+ #[ unstable( feature = "pin" , issue = "49150 " ) ]
11941194impl < ' a , T : fmt:: Debug + ?Sized > fmt:: Debug for Pin < ' a , T > {
11951195 fn fmt ( & self , f : & mut fmt:: Formatter ) -> fmt:: Result {
11961196 fmt:: Debug :: fmt ( & * * self , f)
11971197 }
11981198}
11991199
1200- #[ unstable( feature = "pin" , issue = "0 " ) ]
1200+ #[ unstable( feature = "pin" , issue = "49150 " ) ]
12011201impl < ' a , T : fmt:: Display + ?Sized > fmt:: Display for Pin < ' a , T > {
12021202 fn fmt ( & self , f : & mut fmt:: Formatter ) -> fmt:: Result {
12031203 fmt:: Display :: fmt ( & * * self , f)
12041204 }
12051205}
12061206
1207- #[ unstable( feature = "pin" , issue = "0 " ) ]
1207+ #[ unstable( feature = "pin" , issue = "49150 " ) ]
12081208impl < ' a , T : ?Sized > fmt:: Pointer for Pin < ' a , T > {
12091209 fn fmt ( & self , f : & mut fmt:: Formatter ) -> fmt:: Result {
12101210 fmt:: Pointer :: fmt ( & ( & * self . inner as * const T ) , f)
12111211 }
12121212}
12131213
1214- #[ unstable( feature = "pin" , issue = "0 " ) ]
1214+ #[ unstable( feature = "pin" , issue = "49150 " ) ]
12151215impl < ' a , T : ?Sized + Unsize < U > , U : ?Sized > CoerceUnsized < Pin < ' a , U > > for Pin < ' a , T > { }
0 commit comments