diff options
| author | Huon Wilson <dbau.pp+github@gmail.com> | 2013-11-28 23:52:11 +1100 |
|---|---|---|
| committer | Huon Wilson <dbau.pp+github@gmail.com> | 2013-12-04 22:35:53 +1100 |
| commit | 9d64e46013096997627da62ecc65225bc22682e8 (patch) | |
| tree | fa20c8fd1d653acff5f996253d16103dd61addd9 /src/libstd/io | |
| parent | 9635c763ba5edc8c8ea2868b895548b52f640e5a (diff) | |
| download | rust-9d64e46013096997627da62ecc65225bc22682e8.tar.gz rust-9d64e46013096997627da62ecc65225bc22682e8.zip | |
std::str: remove from_utf8.
This function had type &[u8] -> ~str, i.e. it allocates a string internally, even though the non-allocating version that take &[u8] -> &str and ~[u8] -> ~str are all that is necessary in most circumstances.
Diffstat (limited to 'src/libstd/io')
| -rw-r--r-- | src/libstd/io/flate.rs | 6 | ||||
| -rw-r--r-- | src/libstd/io/fs.rs | 39 |
2 files changed, 21 insertions, 24 deletions
diff --git a/src/libstd/io/flate.rs b/src/libstd/io/flate.rs index 8a5aa171eb8..6548c0e65c9 100644 --- a/src/libstd/io/flate.rs +++ b/src/libstd/io/flate.rs @@ -107,7 +107,7 @@ mod test { fn smoke_test() { let mem_writer = MemWriter::new(); let mut deflate_writer = DeflateWriter::new(mem_writer); - let in_msg = "test"; + let in_msg: &str = "test"; let in_bytes = in_msg.as_bytes(); deflate_writer.write(in_bytes); deflate_writer.flush(); @@ -117,7 +117,7 @@ mod test { let mut out_bytes = [0, .. 100]; let bytes_read = inflate_reader.read(out_bytes).unwrap(); assert_eq!(bytes_read, in_bytes.len()); - let out_msg = str::from_utf8(out_bytes); - assert!(in_msg == out_msg); + let out_msg = str::from_utf8_slice(out_bytes); + assert_eq!(in_msg, out_msg); } } diff --git a/src/libstd/io/fs.rs b/src/libstd/io/fs.rs index e239f630f01..db8de9df24a 100644 --- a/src/libstd/io/fs.rs +++ b/src/libstd/io/fs.rs @@ -770,9 +770,9 @@ mod test { let mut read_buf = [0, .. 1028]; let read_str = match read_stream.read(read_buf).unwrap() { -1|0 => fail!("shouldn't happen"), - n => str::from_utf8(read_buf.slice_to(n)) + n => str::from_utf8_owned(read_buf.slice_to(n).to_owned()) }; - assert!(read_str == message.to_owned()); + assert_eq!(read_str, message.to_owned()); } unlink(filename); }) @@ -801,7 +801,7 @@ mod test { }) test!(fn file_test_io_non_positional_read() { - let message = "ten-four"; + let message: &str = "ten-four"; let mut read_mem = [0, .. 8]; let tmpdir = tmpdir(); let filename = &tmpdir.join("file_rt_io_file_test_positional.txt"); @@ -821,8 +821,8 @@ mod test { } } unlink(filename); - let read_str = str::from_utf8(read_mem); - assert!(read_str == message.to_owned()); + let read_str = str::from_utf8_slice(read_mem); + assert_eq!(read_str, message); }) test!(fn file_test_io_seek_and_tell_smoke_test() { @@ -845,10 +845,10 @@ mod test { tell_pos_post_read = read_stream.tell(); } unlink(filename); - let read_str = str::from_utf8(read_mem); - assert!(read_str == message.slice(4, 8).to_owned()); - assert!(tell_pos_pre_read == set_cursor); - assert!(tell_pos_post_read == message.len() as u64); + let read_str = str::from_utf8_slice(read_mem); + assert_eq!(read_str, message.slice(4, 8)); + assert_eq!(tell_pos_pre_read, set_cursor); + assert_eq!(tell_pos_post_read, message.len() as u64); }) test!(fn file_test_io_seek_and_write() { @@ -870,16 +870,16 @@ mod test { read_stream.read(read_mem); } unlink(filename); - let read_str = str::from_utf8(read_mem); + let read_str = str::from_utf8_slice(read_mem); assert!(read_str == final_msg.to_owned()); }) test!(fn file_test_io_seek_shakedown() { use std::str; // 01234567890123 let initial_msg = "qwer-asdf-zxcv"; - let chunk_one = "qwer"; - let chunk_two = "asdf"; - let chunk_three = "zxcv"; + let chunk_one: &str = "qwer"; + let chunk_two: &str = "asdf"; + let chunk_three: &str = "zxcv"; let mut read_mem = [0, .. 4]; let tmpdir = tmpdir(); let filename = &tmpdir.join("file_rt_io_file_test_seek_shakedown.txt"); @@ -892,18 +892,15 @@ mod test { read_stream.seek(-4, SeekEnd); read_stream.read(read_mem); - let read_str = str::from_utf8(read_mem); - assert!(read_str == chunk_three.to_owned()); + assert_eq!(str::from_utf8_slice(read_mem), chunk_three); read_stream.seek(-9, SeekCur); read_stream.read(read_mem); - let read_str = str::from_utf8(read_mem); - assert!(read_str == chunk_two.to_owned()); + assert_eq!(str::from_utf8_slice(read_mem), chunk_two); read_stream.seek(0, SeekSet); read_stream.read(read_mem); - let read_str = str::from_utf8(read_mem); - assert!(read_str == chunk_one.to_owned()); + assert_eq!(str::from_utf8_slice(read_mem), chunk_one); } unlink(filename); }) @@ -977,12 +974,12 @@ mod test { { let n = f.filestem_str(); File::open(f).read(mem); - let read_str = str::from_utf8(mem); + let read_str = str::from_utf8_slice(mem); let expected = match n { None|Some("") => fail!("really shouldn't happen.."), Some(n) => prefix+n }; - assert!(expected == read_str); + assert_eq!(expected.as_slice(), read_str); } unlink(f); } |
