@@ -558,13 +558,20 @@ impl<T: ?Sized + Read> Read for &mut T {
558558 fn read ( & mut self , buf : & mut [ u8 ] ) -> Result < usize , Self :: Error > {
559559 T :: read ( self , buf)
560560 }
561+
562+ #[ inline]
563+ fn read_exact ( & mut self , buf : & mut [ u8 ] ) -> Result < ( ) , ReadExactError < Self :: Error > > {
564+ T :: read_exact ( self , buf)
565+ }
561566}
562567
563568impl < T : ?Sized + BufRead > BufRead for & mut T {
569+ #[ inline]
564570 fn fill_buf ( & mut self ) -> Result < & [ u8 ] , Self :: Error > {
565571 T :: fill_buf ( self )
566572 }
567573
574+ #[ inline]
568575 fn consume ( & mut self , amt : usize ) {
569576 T :: consume ( self , amt) ;
570577 }
@@ -580,13 +587,33 @@ impl<T: ?Sized + Write> Write for &mut T {
580587 fn flush ( & mut self ) -> Result < ( ) , Self :: Error > {
581588 T :: flush ( self )
582589 }
590+
591+ #[ inline]
592+ fn write_all ( & mut self , buf : & [ u8 ] ) -> Result < ( ) , Self :: Error > {
593+ T :: write_all ( self , buf)
594+ }
583595}
584596
585597impl < T : ?Sized + Seek > Seek for & mut T {
586598 #[ inline]
587599 fn seek ( & mut self , pos : SeekFrom ) -> Result < u64 , Self :: Error > {
588600 T :: seek ( self , pos)
589601 }
602+
603+ #[ inline]
604+ fn rewind ( & mut self ) -> Result < ( ) , Self :: Error > {
605+ T :: rewind ( self )
606+ }
607+
608+ #[ inline]
609+ fn stream_position ( & mut self ) -> Result < u64 , Self :: Error > {
610+ T :: stream_position ( self )
611+ }
612+
613+ #[ inline]
614+ fn seek_relative ( & mut self , offset : i64 ) -> Result < ( ) , Self :: Error > {
615+ T :: seek_relative ( self , offset)
616+ }
590617}
591618
592619impl < T : ?Sized + ReadReady > ReadReady for & mut T {
0 commit comments