@@ -187,25 +187,21 @@ impl<W: Writer> Decorator<W> for BufferedWriter<W> {
187
187
}
188
188
}
189
189
190
- // FIXME #9155 this should be a newtype struct
191
- struct InternalBufferedWriter < W > {
192
- inner : BufferedWriter < W >
193
- }
190
+ struct InternalBufferedWriter < W > ( BufferedWriter < W > ) ;
194
191
195
192
impl < W : Reader > Reader for InternalBufferedWriter < W > {
196
193
fn read ( & mut self , buf : & mut [ u8 ] ) -> Option < uint > {
197
- self . inner . inner . read ( buf)
194
+ self . inner . read ( buf)
198
195
}
199
196
200
197
fn eof ( & mut self ) -> bool {
201
- self . inner . inner . eof ( )
198
+ self . inner . eof ( )
202
199
}
203
200
}
204
201
205
202
/// Wraps a Stream and buffers input and output to and from it
206
203
///
207
204
/// Note that `BufferedStream` will NOT flush its output buffer when dropped.
208
- // FIXME #9155 this should be a newtype struct
209
205
pub struct BufferedStream < S > {
210
206
priv inner : BufferedReader < InternalBufferedWriter < S > >
211
207
}
@@ -214,7 +210,7 @@ impl<S: Stream> BufferedStream<S> {
214
210
pub fn with_capacities ( reader_cap : uint , writer_cap : uint , inner : S )
215
211
-> BufferedStream < S > {
216
212
let writer = BufferedWriter :: with_capacity ( writer_cap, inner) ;
217
- let internal_writer = InternalBufferedWriter { inner : writer } ;
213
+ let internal_writer = InternalBufferedWriter ( writer) ;
218
214
let reader = BufferedReader :: with_capacity ( reader_cap,
219
215
internal_writer) ;
220
216
BufferedStream { inner : reader }
@@ -238,25 +234,25 @@ impl<S: Stream> Reader for BufferedStream<S> {
238
234
239
235
impl < S : Stream > Writer for BufferedStream < S > {
240
236
fn write ( & mut self , buf : & [ u8 ] ) {
241
- self . inner . inner . inner . write ( buf)
237
+ self . inner . inner . write ( buf)
242
238
}
243
239
244
240
fn flush ( & mut self ) {
245
- self . inner . inner . inner . flush ( )
241
+ self . inner . inner . flush ( )
246
242
}
247
243
}
248
244
249
245
impl < S : Stream > Decorator < S > for BufferedStream < S > {
250
246
fn inner ( self ) -> S {
251
- self . inner . inner . inner . inner ( )
247
+ self . inner . inner . inner ( )
252
248
}
253
249
254
250
fn inner_ref < ' a > ( & ' a self ) -> & ' a S {
255
- self . inner . inner . inner . inner_ref ( )
251
+ self . inner . inner . inner_ref ( )
256
252
}
257
253
258
254
fn inner_mut_ref < ' a > ( & ' a mut self ) -> & ' a mut S {
259
- self . inner . inner . inner . inner_mut_ref ( )
255
+ self . inner . inner . inner_mut_ref ( )
260
256
}
261
257
}
262
258
0 commit comments