+ let res = self.file.read(buf);
+ if let Err(_) = res { return Err(ByteIOError::ReadError); }
+ let sz = res.unwrap();
+ if sz < buf.len() { self.eof = true; return Err(ByteIOError::EOF); }
+ Ok(sz)
+ }
+
+ fn read_buf_some(&mut self, buf: &mut [u8]) -> ByteIOResult<usize> {