diff options
| author | Steven Fackler <sfackler@gmail.com> | 2014-03-26 09:24:16 -0700 |
|---|---|---|
| committer | Steven Fackler <sfackler@gmail.com> | 2014-04-06 15:39:56 -0700 |
| commit | d0e60b72ee3f5fb07b01143d82362cb42307f32d (patch) | |
| tree | ed0161843da862f7b40a01b76a81ced97c1e67da /src/libsyntax/parse | |
| parent | 94a055c7295bd5822219b86243c2af6fff9d21d3 (diff) | |
| download | rust-d0e60b72ee3f5fb07b01143d82362cb42307f32d.tar.gz rust-d0e60b72ee3f5fb07b01143d82362cb42307f32d.zip | |
De-~[] Reader and Writer
There's a little more allocation here and there now since from_utf8_owned can't be used with Vec.
Diffstat (limited to 'src/libsyntax/parse')
| -rw-r--r-- | src/libsyntax/parse/comments.rs | 2 | ||||
| -rw-r--r-- | src/libsyntax/parse/mod.rs | 7 |
2 files changed, 5 insertions, 4 deletions
diff --git a/src/libsyntax/parse/comments.rs b/src/libsyntax/parse/comments.rs index 3bf1474c461..bb812f7f6b4 100644 --- a/src/libsyntax/parse/comments.rs +++ b/src/libsyntax/parse/comments.rs @@ -350,7 +350,7 @@ pub fn gather_comments_and_literals(span_diagnostic: srdr: &mut io::Reader) -> (Vec<Comment>, Vec<Literal>) { let src = srdr.read_to_end().unwrap(); - let src = str::from_utf8_owned(src).unwrap(); + let src = str::from_utf8(src.as_slice()).unwrap().to_owned(); let cm = CodeMap::new(); let filemap = cm.new_filemap(path, src); let mut rdr = lexer::new_low_level_string_reader(span_diagnostic, filemap); diff --git a/src/libsyntax/parse/mod.rs b/src/libsyntax/parse/mod.rs index dbb85972774..35f9898ebbb 100644 --- a/src/libsyntax/parse/mod.rs +++ b/src/libsyntax/parse/mod.rs @@ -228,9 +228,10 @@ pub fn file_to_filemap(sess: &ParseSess, path: &Path, spanopt: Option<Span>) unreachable!() } }; - match str::from_utf8_owned(bytes) { + match str::from_utf8(bytes.as_slice()) { Some(s) => { - return string_to_filemap(sess, s, path.as_str().unwrap().to_str()) + return string_to_filemap(sess, s.to_owned(), + path.as_str().unwrap().to_str()) } None => err(format!("{} is not UTF-8 encoded", path.display())), } @@ -292,7 +293,7 @@ mod test { let mut writer = MemWriter::new(); let mut encoder = json::Encoder::new(&mut writer as &mut io::Writer); let _ = val.encode(&mut encoder); - str::from_utf8_owned(writer.unwrap()).unwrap() + str::from_utf8(writer.unwrap().as_slice()).unwrap().to_owned() } // produce a codemap::span |
