mirror of
https://github.com/rust-lang/rust.git
synced 2025-01-10 14:57:14 +00:00
[std::str] Rename from_utf8_opt() to from_utf8(), drop the old from_utf8() behavior
This commit is contained in:
parent
46b01647ba
commit
b8c4149293
@ -308,7 +308,7 @@ fn run_debuginfo_test(config: &config, props: &TestProps, testfile: &Path) {
|
||||
|
||||
let adb_arg = format!("export LD_LIBRARY_PATH={}; gdbserver :5039 {}/{}",
|
||||
config.adb_test_dir.clone(), config.adb_test_dir.clone(),
|
||||
str::from_utf8(exe_file.filename().unwrap()));
|
||||
str::from_utf8(exe_file.filename().unwrap()).unwrap());
|
||||
|
||||
let mut process = procsrv::run_background("", config.adb_path,
|
||||
[~"shell",adb_arg.clone()],
|
||||
|
@ -30,7 +30,7 @@ impl<'doc> Doc<'doc> {
|
||||
}
|
||||
|
||||
pub fn as_str_slice<'a>(&'a self) -> &'a str {
|
||||
str::from_utf8(self.data.slice(self.start, self.end))
|
||||
str::from_utf8(self.data.slice(self.start, self.end)).unwrap()
|
||||
}
|
||||
|
||||
pub fn as_str(&self) -> ~str {
|
||||
|
@ -704,7 +704,7 @@ fn should_sort_failures_before_printing_them() {
|
||||
|
||||
st.write_failures();
|
||||
let s = match st.out {
|
||||
Raw(ref m) => str::from_utf8(m.get_ref()),
|
||||
Raw(ref m) => str::from_utf8(m.get_ref()).unwrap(),
|
||||
Pretty(_) => unreachable!()
|
||||
};
|
||||
|
||||
|
@ -57,8 +57,8 @@ fn run_ar(sess: Session, args: &str, cwd: Option<&Path>,
|
||||
if !o.status.success() {
|
||||
sess.err(format!("{} {} failed with: {}", ar, args.connect(" "),
|
||||
o.status));
|
||||
sess.note(format!("stdout ---\n{}", str::from_utf8(o.output)));
|
||||
sess.note(format!("stderr ---\n{}", str::from_utf8(o.error)));
|
||||
sess.note(format!("stdout ---\n{}", str::from_utf8(o.output).unwrap()));
|
||||
sess.note(format!("stderr ---\n{}", str::from_utf8(o.error).unwrap()));
|
||||
sess.abort_if_errors();
|
||||
}
|
||||
o
|
||||
@ -141,7 +141,7 @@ impl Archive {
|
||||
/// Lists all files in an archive
|
||||
pub fn files(&self) -> ~[~str] {
|
||||
let output = run_ar(self.sess, "t", None, [&self.dst]);
|
||||
str::from_utf8(output.output).lines().map(|s| s.to_owned()).collect()
|
||||
str::from_utf8(output.output).unwrap().lines().map(|s| s.to_owned()).collect()
|
||||
}
|
||||
|
||||
fn add_archive(&mut self, archive: &Path, name: &str, skip: &[&str]) {
|
||||
|
@ -97,7 +97,7 @@ pub fn parse_ident(st: &mut PState, last: char) -> ast::Ident {
|
||||
|
||||
fn parse_ident_(st: &mut PState, is_last: |char| -> bool) -> ast::Ident {
|
||||
scan(st, is_last, |bytes| {
|
||||
st.tcx.sess.ident_of(str::from_utf8(bytes))
|
||||
st.tcx.sess.ident_of(str::from_utf8(bytes).unwrap())
|
||||
})
|
||||
}
|
||||
|
||||
@ -476,7 +476,7 @@ fn parse_abi_set(st: &mut PState) -> AbiSet {
|
||||
let mut abis = AbiSet::empty();
|
||||
while peek(st) != ']' {
|
||||
scan(st, |c| c == ',', |bytes| {
|
||||
let abi_str = str::from_utf8(bytes).to_owned();
|
||||
let abi_str = str::from_utf8(bytes).unwrap().to_owned();
|
||||
let abi = abi::lookup(abi_str).expect(abi_str);
|
||||
abis.add(abi);
|
||||
});
|
||||
|
@ -72,7 +72,7 @@ pub fn enc_ty(w: &mut MemWriter, cx: @ctxt, t: ty::t) {
|
||||
None => {
|
||||
let wr = &mut MemWriter::new();
|
||||
enc_sty(wr, cx, &ty::get(t).sty);
|
||||
let s = str::from_utf8(wr.get_ref()).to_managed();
|
||||
let s = str::from_utf8(wr.get_ref()).unwrap().to_managed();
|
||||
let mut short_names_cache = cx.tcx
|
||||
.short_names_cache
|
||||
.borrow_mut();
|
||||
|
@ -112,7 +112,7 @@ pub fn render(w: &mut io::Writer, s: &str) {
|
||||
unsafe {
|
||||
let my_opaque: &my_opaque = cast::transmute(opaque);
|
||||
vec::raw::buf_as_slice((*text).data, (*text).size as uint, |text| {
|
||||
let text = str::from_utf8(text);
|
||||
let text = str::from_utf8(text).unwrap();
|
||||
let mut lines = text.lines().filter(|l| stripped_filtered_line(*l).is_none());
|
||||
let text = lines.to_owned_vec().connect("\n");
|
||||
|
||||
@ -172,14 +172,14 @@ pub fn find_testable_code(doc: &str, tests: &mut ::test::Collector) {
|
||||
let (test, shouldfail, ignore) =
|
||||
vec::raw::buf_as_slice((*lang).data,
|
||||
(*lang).size as uint, |lang| {
|
||||
let s = str::from_utf8(lang);
|
||||
let s = str::from_utf8(lang).unwrap();
|
||||
(s.contains("rust"), s.contains("should_fail"),
|
||||
s.contains("ignore"))
|
||||
});
|
||||
if !test { return }
|
||||
vec::raw::buf_as_slice((*text).data, (*text).size as uint, |text| {
|
||||
let tests: &mut ::test::Collector = intrinsics::transmute(opaque);
|
||||
let text = str::from_utf8(text);
|
||||
let text = str::from_utf8(text).unwrap();
|
||||
let mut lines = text.lines().map(|l| stripped_filtered_line(l).unwrap_or(l));
|
||||
let text = lines.to_owned_vec().connect("\n");
|
||||
tests.add_test(text, ignore, shouldfail);
|
||||
|
@ -193,7 +193,7 @@ impl<'a> PkgScript<'a> {
|
||||
Some(output) => {
|
||||
debug!("run_custom: second pkg command did {:?}", output.status);
|
||||
// Run the configs() function to get the configs
|
||||
let cfgs = str::from_utf8(output.output).words()
|
||||
let cfgs = str::from_utf8(output.output).unwrap().words()
|
||||
.map(|w| w.to_owned()).collect();
|
||||
Some((cfgs, output.status))
|
||||
},
|
||||
|
@ -143,7 +143,7 @@ fn run_git(args: &[~str], env: Option<~[(~str, ~str)]>, cwd: &Path, err_msg: &st
|
||||
let rslt = prog.finish_with_output();
|
||||
if !rslt.status.success() {
|
||||
fail!("{} [git returned {:?}, output = {}, error = {}]", err_msg,
|
||||
rslt.status, str::from_utf8(rslt.output), str::from_utf8(rslt.error));
|
||||
rslt.status, str::from_utf8(rslt.output).unwrap(), str::from_utf8(rslt.error).unwrap());
|
||||
}
|
||||
}
|
||||
|
||||
@ -279,13 +279,13 @@ fn command_line_test_with_env(args: &[~str], cwd: &Path, env: Option<~[(~str, ~s
|
||||
}).expect(format!("failed to exec `{}`", cmd));
|
||||
let output = prog.finish_with_output();
|
||||
debug!("Output from command {} with args {:?} was {} \\{{}\\}[{:?}]",
|
||||
cmd, args, str::from_utf8(output.output),
|
||||
str::from_utf8(output.error),
|
||||
cmd, args, str::from_utf8(output.output).unwrap(),
|
||||
str::from_utf8(output.error).unwrap(),
|
||||
output.status);
|
||||
if !output.status.success() {
|
||||
debug!("Command {} {:?} failed with exit code {:?}; its output was --- {} {} ---",
|
||||
cmd, args, output.status,
|
||||
str::from_utf8(output.output), str::from_utf8(output.error));
|
||||
str::from_utf8(output.output).unwrap(), str::from_utf8(output.error).unwrap());
|
||||
Fail(output)
|
||||
}
|
||||
else {
|
||||
@ -445,7 +445,7 @@ fn built_library_exists(repo: &Path, short_name: &str) -> bool {
|
||||
fn command_line_test_output(args: &[~str]) -> ~[~str] {
|
||||
let mut result = ~[];
|
||||
let p_output = command_line_test(args, &os::getcwd());
|
||||
let test_output = str::from_utf8(p_output.output);
|
||||
let test_output = str::from_utf8(p_output.output).unwrap();
|
||||
for s in test_output.split('\n') {
|
||||
result.push(s.to_owned());
|
||||
}
|
||||
@ -459,7 +459,7 @@ fn command_line_test_output_with_env(args: &[~str], env: ~[(~str, ~str)]) -> ~[~
|
||||
Fail(_) => fail!("Command-line test failed"),
|
||||
Success(r) => r
|
||||
};
|
||||
let test_output = str::from_utf8(p_output.output);
|
||||
let test_output = str::from_utf8(p_output.output).unwrap();
|
||||
for s in test_output.split('\n') {
|
||||
result.push(s.to_owned());
|
||||
}
|
||||
@ -1199,7 +1199,7 @@ fn test_uninstall() {
|
||||
let workspace = create_local_package(&CrateId::new("foo"));
|
||||
command_line_test([~"uninstall", ~"foo"], workspace.path());
|
||||
let output = command_line_test([~"list"], workspace.path());
|
||||
assert!(!str::from_utf8(output.output).contains("foo"));
|
||||
assert!(!str::from_utf8(output.output).unwrap().contains("foo"));
|
||||
}
|
||||
|
||||
#[test]
|
||||
@ -1269,8 +1269,8 @@ fn test_extern_mod() {
|
||||
let outp = prog.finish_with_output();
|
||||
if !outp.status.success() {
|
||||
fail!("output was {}, error was {}",
|
||||
str::from_utf8(outp.output),
|
||||
str::from_utf8(outp.error));
|
||||
str::from_utf8(outp.output).unwrap(),
|
||||
str::from_utf8(outp.error).unwrap());
|
||||
}
|
||||
assert!(exec_file.exists() && is_executable(&exec_file));
|
||||
}
|
||||
@ -1324,8 +1324,8 @@ fn test_extern_mod_simpler() {
|
||||
let outp = prog.finish_with_output();
|
||||
if !outp.status.success() {
|
||||
fail!("output was {}, error was {}",
|
||||
str::from_utf8(outp.output),
|
||||
str::from_utf8(outp.error));
|
||||
str::from_utf8(outp.output).unwrap(),
|
||||
str::from_utf8(outp.error).unwrap());
|
||||
}
|
||||
assert!(exec_file.exists() && is_executable(&exec_file));
|
||||
}
|
||||
@ -2092,7 +2092,7 @@ fn test_rustpkg_test_creates_exec() {
|
||||
fn test_rustpkg_test_output() {
|
||||
let workspace = create_local_package_with_test(&CrateId::new("foo"));
|
||||
let output = command_line_test([~"test", ~"foo"], workspace.path());
|
||||
let output_str = str::from_utf8(output.output);
|
||||
let output_str = str::from_utf8(output.output).unwrap();
|
||||
// The first two assertions are separate because test output may
|
||||
// contain color codes, which could appear between "test f" and "ok".
|
||||
assert!(output_str.contains("test f"));
|
||||
@ -2123,7 +2123,7 @@ fn test_rustpkg_test_cfg() {
|
||||
"#[test] #[cfg(not(foobar))] fn f() { assert!('a' != 'a'); }");
|
||||
let output = command_line_test([~"test", ~"--cfg", ~"foobar", ~"foo"],
|
||||
foo_workspace);
|
||||
let output_str = str::from_utf8(output.output);
|
||||
let output_str = str::from_utf8(output.output).unwrap();
|
||||
assert!(output_str.contains("0 passed; 0 failed; 0 ignored; 0 measured"));
|
||||
}
|
||||
|
||||
@ -2424,8 +2424,8 @@ fn correct_error_dependency() {
|
||||
Fail(ProcessOutput{ error: error, output: output, .. }) => {
|
||||
assert!(str::is_utf8(error));
|
||||
assert!(str::is_utf8(output));
|
||||
let error_str = str::from_utf8(error);
|
||||
let out_str = str::from_utf8(output);
|
||||
let error_str = str::from_utf8(error).unwrap();
|
||||
let out_str = str::from_utf8(output).unwrap();
|
||||
debug!("ss = {}", error_str);
|
||||
debug!("out_str = {}", out_str);
|
||||
if out_str.contains("Package badpkg depends on some_package_that_doesnt_exist") &&
|
||||
|
@ -115,7 +115,7 @@ pub fn try_getting_local_version(local_path: &Path) -> Option<Version> {
|
||||
}
|
||||
|
||||
let mut output = None;
|
||||
let output_text = str::from_utf8(outp.output);
|
||||
let output_text = str::from_utf8(outp.output).unwrap();
|
||||
for l in output_text.lines() {
|
||||
if !l.is_whitespace() {
|
||||
output = Some(l);
|
||||
@ -147,8 +147,8 @@ pub fn try_getting_version(remote_path: &Path) -> Option<Version> {
|
||||
let outp = opt_outp.expect("Failed to exec `git`");
|
||||
if outp.status.success() {
|
||||
debug!("Cloned it... ( {}, {} )",
|
||||
str::from_utf8(outp.output),
|
||||
str::from_utf8(outp.error));
|
||||
str::from_utf8(outp.output).unwrap(),
|
||||
str::from_utf8(outp.error).unwrap());
|
||||
let mut output = None;
|
||||
let git_dir = tmp_dir.join(".git");
|
||||
debug!("(getting version, now getting tags) executing \\{git --git-dir={} tag -l\\}",
|
||||
@ -158,7 +158,7 @@ pub fn try_getting_version(remote_path: &Path) -> Option<Version> {
|
||||
["--git-dir=" + git_dir.as_str().unwrap(),
|
||||
~"tag", ~"-l"]);
|
||||
let outp = opt_outp.expect("Failed to exec `git`");
|
||||
let output_text = str::from_utf8(outp.output);
|
||||
let output_text = str::from_utf8(outp.output).unwrap();
|
||||
debug!("Full output: ( {} ) [{:?}]", output_text, outp.status);
|
||||
for l in output_text.lines() {
|
||||
debug!("A line of output: {}", l);
|
||||
|
@ -488,7 +488,7 @@ mod test {
|
||||
|
||||
let nread = result.unwrap();
|
||||
assert!(nread > 0);
|
||||
let read_str = str::from_utf8(read_mem.slice_to(nread as uint));
|
||||
let read_str = str::from_utf8(read_mem.slice_to(nread as uint)).unwrap();
|
||||
assert_eq!(read_str, "hello");
|
||||
}
|
||||
// unlink
|
||||
|
@ -167,7 +167,7 @@ impl CString {
|
||||
if self.buf.is_null() { return None; }
|
||||
let buf = self.as_bytes();
|
||||
let buf = buf.slice_to(buf.len()-1); // chop off the trailing NUL
|
||||
str::from_utf8_opt(buf)
|
||||
str::from_utf8(buf)
|
||||
}
|
||||
|
||||
/// Return a CString iterator.
|
||||
|
@ -812,7 +812,7 @@ impl<'a> Formatter<'a> {
|
||||
|
||||
fn runplural(&mut self, value: uint, pieces: &[rt::Piece]) {
|
||||
::uint::to_str_bytes(value, 10, |buf| {
|
||||
let valuestr = str::from_utf8(buf);
|
||||
let valuestr = str::from_utf8(buf).unwrap();
|
||||
for piece in pieces.iter() {
|
||||
self.run(piece, Some(valuestr));
|
||||
}
|
||||
|
@ -805,7 +805,7 @@ mod test {
|
||||
}
|
||||
}
|
||||
unlink(filename);
|
||||
let read_str = str::from_utf8(read_mem);
|
||||
let read_str = str::from_utf8(read_mem).unwrap();
|
||||
assert_eq!(read_str, message);
|
||||
})
|
||||
|
||||
@ -829,7 +829,7 @@ mod test {
|
||||
tell_pos_post_read = read_stream.tell();
|
||||
}
|
||||
unlink(filename);
|
||||
let read_str = str::from_utf8(read_mem);
|
||||
let read_str = str::from_utf8(read_mem).unwrap();
|
||||
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);
|
||||
@ -854,7 +854,7 @@ mod test {
|
||||
read_stream.read(read_mem);
|
||||
}
|
||||
unlink(filename);
|
||||
let read_str = str::from_utf8(read_mem);
|
||||
let read_str = str::from_utf8(read_mem).unwrap();
|
||||
assert!(read_str == final_msg.to_owned());
|
||||
})
|
||||
|
||||
@ -876,15 +876,15 @@ mod test {
|
||||
|
||||
read_stream.seek(-4, SeekEnd);
|
||||
read_stream.read(read_mem);
|
||||
assert_eq!(str::from_utf8(read_mem), chunk_three);
|
||||
assert_eq!(str::from_utf8(read_mem).unwrap(), chunk_three);
|
||||
|
||||
read_stream.seek(-9, SeekCur);
|
||||
read_stream.read(read_mem);
|
||||
assert_eq!(str::from_utf8(read_mem), chunk_two);
|
||||
assert_eq!(str::from_utf8(read_mem).unwrap(), chunk_two);
|
||||
|
||||
read_stream.seek(0, SeekSet);
|
||||
read_stream.read(read_mem);
|
||||
assert_eq!(str::from_utf8(read_mem), chunk_one);
|
||||
assert_eq!(str::from_utf8(read_mem).unwrap(), chunk_one);
|
||||
}
|
||||
unlink(filename);
|
||||
})
|
||||
@ -958,7 +958,7 @@ 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(mem).unwrap();
|
||||
let expected = match n {
|
||||
None|Some("") => fail!("really shouldn't happen.."),
|
||||
Some(n) => prefix+n
|
||||
|
@ -1202,7 +1202,7 @@ pub trait Buffer: Reader {
|
||||
}
|
||||
}
|
||||
}
|
||||
match str::from_utf8_opt(buf.slice_to(width)) {
|
||||
match str::from_utf8(buf.slice_to(width)) {
|
||||
Some(s) => Some(s.char_at(0)),
|
||||
None => None
|
||||
}
|
||||
|
@ -254,7 +254,7 @@ mod tests {
|
||||
loop {
|
||||
match input.read(buf) {
|
||||
None => { break }
|
||||
Some(n) => { ret.push_str(str::from_utf8(buf.slice_to(n))); }
|
||||
Some(n) => { ret.push_str(str::from_utf8(buf.slice_to(n)).unwrap()); }
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
|
@ -189,7 +189,7 @@ pub trait GenericPath: Clone + GenericPathUnsafe {
|
||||
/// If the path is not representable in utf-8, this returns None.
|
||||
#[inline]
|
||||
fn as_str<'a>(&'a self) -> Option<&'a str> {
|
||||
str::from_utf8_opt(self.as_vec())
|
||||
str::from_utf8(self.as_vec())
|
||||
}
|
||||
|
||||
/// Returns the path as a byte vector
|
||||
@ -220,7 +220,7 @@ pub trait GenericPath: Clone + GenericPathUnsafe {
|
||||
/// See `dirname` for details.
|
||||
#[inline]
|
||||
fn dirname_str<'a>(&'a self) -> Option<&'a str> {
|
||||
str::from_utf8_opt(self.dirname())
|
||||
str::from_utf8(self.dirname())
|
||||
}
|
||||
/// Returns the file component of `self`, as a byte vector.
|
||||
/// If `self` represents the root of the file hierarchy, returns None.
|
||||
@ -230,7 +230,7 @@ pub trait GenericPath: Clone + GenericPathUnsafe {
|
||||
/// See `filename` for details.
|
||||
#[inline]
|
||||
fn filename_str<'a>(&'a self) -> Option<&'a str> {
|
||||
self.filename().and_then(str::from_utf8_opt)
|
||||
self.filename().and_then(str::from_utf8)
|
||||
}
|
||||
/// Returns the stem of the filename of `self`, as a byte vector.
|
||||
/// The stem is the portion of the filename just before the last '.'.
|
||||
@ -252,7 +252,7 @@ pub trait GenericPath: Clone + GenericPathUnsafe {
|
||||
/// See `filestem` for details.
|
||||
#[inline]
|
||||
fn filestem_str<'a>(&'a self) -> Option<&'a str> {
|
||||
self.filestem().and_then(str::from_utf8_opt)
|
||||
self.filestem().and_then(str::from_utf8)
|
||||
}
|
||||
/// Returns the extension of the filename of `self`, as an optional byte vector.
|
||||
/// The extension is the portion of the filename just after the last '.'.
|
||||
@ -275,7 +275,7 @@ pub trait GenericPath: Clone + GenericPathUnsafe {
|
||||
/// See `extension` for details.
|
||||
#[inline]
|
||||
fn extension_str<'a>(&'a self) -> Option<&'a str> {
|
||||
self.extension().and_then(str::from_utf8_opt)
|
||||
self.extension().and_then(str::from_utf8)
|
||||
}
|
||||
|
||||
/// Replaces the filename portion of the path with the given byte vector or string.
|
||||
@ -502,7 +502,7 @@ pub trait BytesContainer {
|
||||
/// Returns the receiver interpreted as a utf-8 string, if possible
|
||||
#[inline]
|
||||
fn container_as_str<'a>(&'a self) -> Option<&'a str> {
|
||||
str::from_utf8_opt(self.container_as_bytes())
|
||||
str::from_utf8(self.container_as_bytes())
|
||||
}
|
||||
/// Returns whether .container_as_str() is guaranteed to not fail
|
||||
// FIXME (#8888): Remove unused arg once ::<for T> works
|
||||
|
@ -402,13 +402,13 @@ impl Path {
|
||||
/// Returns an iterator that yields each component of the path as Option<&str>.
|
||||
/// See components() for details.
|
||||
pub fn str_components<'a>(&'a self) -> StrComponents<'a> {
|
||||
self.components().map(str::from_utf8_opt)
|
||||
self.components().map(str::from_utf8)
|
||||
}
|
||||
|
||||
/// Returns an iterator that yields each component of the path in reverse as Option<&str>.
|
||||
/// See components() for details.
|
||||
pub fn rev_str_components<'a>(&'a self) -> RevStrComponents<'a> {
|
||||
self.rev_components().map(str::from_utf8_opt)
|
||||
self.rev_components().map(str::from_utf8)
|
||||
}
|
||||
}
|
||||
|
||||
@ -691,7 +691,7 @@ mod tests {
|
||||
(s: $path:expr, $op:ident, $exp:expr, opt) => (
|
||||
{
|
||||
let path = Path::new($path);
|
||||
let left = path.$op().map(|x| str::from_utf8(x));
|
||||
let left = path.$op().map(|x| str::from_utf8(x).unwrap());
|
||||
assert_eq!(left, $exp);
|
||||
}
|
||||
);
|
||||
|
@ -161,17 +161,8 @@ pub fn from_utf8_owned_opt(vv: ~[u8]) -> Option<~str> {
|
||||
/// Once the slice has been validated as utf-8, it is transmuted in-place and
|
||||
/// returned as a '&str' instead of a '&[u8]'
|
||||
///
|
||||
/// # Failure
|
||||
///
|
||||
/// Fails if invalid UTF-8
|
||||
pub fn from_utf8<'a>(v: &'a [u8]) -> &'a str {
|
||||
from_utf8_opt(v).expect("from_utf8: not utf-8")
|
||||
}
|
||||
|
||||
/// Converts a vector to a string slice without performing any allocations.
|
||||
///
|
||||
/// Returns None if the slice is not utf-8.
|
||||
pub fn from_utf8_opt<'a>(v: &'a [u8]) -> Option<&'a str> {
|
||||
pub fn from_utf8<'a>(v: &'a [u8]) -> Option<&'a str> {
|
||||
if is_utf8(v) {
|
||||
Some(unsafe { raw::from_utf8(v) })
|
||||
} else { None }
|
||||
@ -3436,7 +3427,7 @@ mod tests {
|
||||
let s1: ~str = ~"All mimsy were the borogoves";
|
||||
|
||||
let v: ~[u8] = s1.as_bytes().to_owned();
|
||||
let s2: ~str = from_utf8(v).to_owned();
|
||||
let s2: ~str = from_utf8(v).unwrap().to_owned();
|
||||
let mut i: uint = 0u;
|
||||
let n1: uint = s1.len();
|
||||
let n2: uint = v.len();
|
||||
@ -3961,29 +3952,13 @@ mod tests {
|
||||
#[test]
|
||||
fn test_str_from_utf8() {
|
||||
let xs = bytes!("hello");
|
||||
assert_eq!(from_utf8(xs), "hello");
|
||||
assert_eq!(from_utf8(xs), Some("hello"));
|
||||
|
||||
let xs = bytes!("ศไทย中华Việt Nam");
|
||||
assert_eq!(from_utf8(xs), "ศไทย中华Việt Nam");
|
||||
}
|
||||
|
||||
#[test]
|
||||
#[should_fail]
|
||||
fn test_str_from_utf8_invalid() {
|
||||
let xs = bytes!("hello", 0xff);
|
||||
let _ = from_utf8(xs);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_str_from_utf8_opt() {
|
||||
let xs = bytes!("hello");
|
||||
assert_eq!(from_utf8_opt(xs), Some("hello"));
|
||||
|
||||
let xs = bytes!("ศไทย中华Việt Nam");
|
||||
assert_eq!(from_utf8_opt(xs), Some("ศไทย中华Việt Nam"));
|
||||
assert_eq!(from_utf8(xs), Some("ศไทย中华Việt Nam"));
|
||||
|
||||
let xs = bytes!("hello", 0xff);
|
||||
assert_eq!(from_utf8_opt(xs), None);
|
||||
assert_eq!(from_utf8(xs), None);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
@ -81,7 +81,7 @@ mod map_reduce {
|
||||
mapper_done => { num_mappers -= 1; }
|
||||
find_reducer(k, cc) => {
|
||||
let mut c;
|
||||
match reducers.find(&str::from_utf8(k).to_owned()) {
|
||||
match reducers.find(&str::from_utf8(k).unwrap().to_owned()) {
|
||||
Some(&_c) => { c = _c; }
|
||||
None => { c = 0; }
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user