use slice;
use vec::Vec;
-const BUF_CAPACITY: uint = 128;
+const BUF_CAPACITY: usize = 128;
-fn combine(seek: SeekStyle, cur: uint, end: uint, offset: i64) -> IoResult<u64> {
+fn combine(seek: SeekStyle, cur: usize, end: usize, offset: i64) -> IoResult<u64> {
// compute offset as signed and clamp to prevent overflow
let pos = match seek {
old_io::SeekSet => 0,
/// Create a new `MemWriter`, allocating at least `n` bytes for
/// the internal buffer.
#[inline]
- pub fn with_capacity(n: uint) -> MemWriter {
+ pub fn with_capacity(n: usize) -> MemWriter {
MemWriter::from_vec(Vec::with_capacity(n))
}
/// Create a new `MemWriter` that will append to an existing `Vec`.
/// ```
pub struct MemReader {
buf: Vec<u8>,
- pos: uint
+ pos: usize
}
impl MemReader {
impl Reader for MemReader {
#[inline]
- fn read(&mut self, buf: &mut [u8]) -> IoResult<uint> {
+ fn read(&mut self, buf: &mut [u8]) -> IoResult<usize> {
if self.eof() { return Err(old_io::standard_error(old_io::EndOfFile)) }
let write_len = min(buf.len(), self.buf.len() - self.pos);
let input = &self.buf[self.pos.. self.pos + write_len];
let output = &mut buf[..write_len];
assert_eq!(input.len(), output.len());
- slice::bytes::copy_memory(output, input);
+ slice::bytes::copy_memory(input, output);
}
self.pos += write_len;
assert!(self.pos <= self.buf.len());
#[inline]
fn seek(&mut self, pos: i64, style: SeekStyle) -> IoResult<()> {
let new = try!(combine(style, self.pos, self.buf.len(), pos));
- self.pos = new as uint;
+ self.pos = new as usize;
Ok(())
}
}
}
#[inline]
- fn consume(&mut self, amt: uint) { self.pos += amt; }
+ fn consume(&mut self, amt: usize) { self.pos += amt; }
}
impl<'a> Reader for &'a [u8] {
#[inline]
- fn read(&mut self, buf: &mut [u8]) -> IoResult<uint> {
+ fn read(&mut self, buf: &mut [u8]) -> IoResult<usize> {
if self.is_empty() { return Err(old_io::standard_error(old_io::EndOfFile)); }
let write_len = min(buf.len(), self.len());
{
let input = &self[..write_len];
let output = &mut buf[.. write_len];
- slice::bytes::copy_memory(output, input);
+ slice::bytes::copy_memory(input, output);
}
*self = &self[write_len..];
}
#[inline]
- fn consume(&mut self, amt: uint) {
+ fn consume(&mut self, amt: usize) {
*self = &self[amt..];
}
}
/// ```
pub struct BufWriter<'a> {
buf: &'a mut [u8],
- pos: uint
+ pos: usize
}
impl<'a> BufWriter<'a> {
let src_len = src.len();
if dst_len >= src_len {
- slice::bytes::copy_memory(dst, src);
+ slice::bytes::copy_memory(src, dst);
self.pos += src_len;
Ok(())
} else {
- slice::bytes::copy_memory(dst, &src[..dst_len]);
+ slice::bytes::copy_memory(&src[..dst_len], dst);
self.pos += dst_len;
#[inline]
fn seek(&mut self, pos: i64, style: SeekStyle) -> IoResult<()> {
let new = try!(combine(style, self.pos, self.buf.len(), pos));
- self.pos = min(new as uint, self.buf.len());
+ self.pos = min(new as usize, self.buf.len());
Ok(())
}
}
/// ```
pub struct BufReader<'a> {
buf: &'a [u8],
- pos: uint
+ pos: usize
}
impl<'a> BufReader<'a> {
impl<'a> Reader for BufReader<'a> {
#[inline]
- fn read(&mut self, buf: &mut [u8]) -> IoResult<uint> {
+ fn read(&mut self, buf: &mut [u8]) -> IoResult<usize> {
if self.eof() { return Err(old_io::standard_error(old_io::EndOfFile)) }
let write_len = min(buf.len(), self.buf.len() - self.pos);
let input = &self.buf[self.pos.. self.pos + write_len];
let output = &mut buf[..write_len];
assert_eq!(input.len(), output.len());
- slice::bytes::copy_memory(output, input);
+ slice::bytes::copy_memory(input, output);
}
self.pos += write_len;
assert!(self.pos <= self.buf.len());
#[inline]
fn seek(&mut self, pos: i64, style: SeekStyle) -> IoResult<()> {
let new = try!(combine(style, self.pos, self.buf.len(), pos));
- self.pos = new as uint;
+ self.pos = new as usize;
Ok(())
}
}
}
#[inline]
- fn consume(&mut self, amt: uint) { self.pos += amt; }
+ fn consume(&mut self, amt: usize) { self.pos += amt; }
}
#[cfg(test)]
mod test {
extern crate test as test_crate;
use old_io::{SeekSet, SeekCur, SeekEnd, Reader, Writer, Seek, Buffer};
- use prelude::v1::{Ok, Err, Vec, AsSlice};
- use prelude::v1::IteratorExt;
+ use prelude::v1::{Ok, Err, Vec};
+ use prelude::v1::Iterator;
use old_io;
use iter::repeat;
use self::test_crate::Bencher;
assert_eq!(buf, b);
}
- fn do_bench_mem_writer(b: &mut Bencher, times: uint, len: uint) {
+ fn do_bench_mem_writer(b: &mut Bencher, times: usize, len: usize) {
let src: Vec<u8> = repeat(5).take(len).collect();
b.bytes = (times * len) as u64;
wr.write(&[5; 10]).unwrap();
}
}
- assert_eq!(buf.as_slice(), [5; 100].as_slice());
+ assert_eq!(&buf[..], &[5; 100][..]);
});
}