diff --git a/src/compiletest/header.rs b/src/compiletest/header.rs index 28bbbda9663..7e617aa0006 100644 --- a/src/compiletest/header.rs +++ b/src/compiletest/header.rs @@ -91,7 +91,7 @@ pub fn is_test_ignored(config: config, testfile: &Path) -> bool { return false; fn xfail_target() -> ~str { - ~"xfail-" + str::from_slice(os::SYSNAME) + ~"xfail-" + str::to_owned(os::SYSNAME) } } diff --git a/src/compiletest/runtest.rs b/src/compiletest/runtest.rs index 33f6dd36161..62c2612f2dd 100644 --- a/src/compiletest/runtest.rs +++ b/src/compiletest/runtest.rs @@ -371,7 +371,7 @@ fn check_expected_errors(expected_errors: ~[errors::ExpectedError], was_expected = true; } - if !was_expected && is_compiler_error_or_warning(str::from_slice(line)) { + if !was_expected && is_compiler_error_or_warning(str::to_owned(line)) { fatal_ProcRes(fmt!("unexpected compiler error or warning: '%s'", line), ProcRes); @@ -596,7 +596,7 @@ fn make_lib_name(config: config, auxfile: &Path, testfile: &Path) -> Path { fn make_exe_name(config: config, testfile: &Path) -> Path { Path(output_base_name(config, testfile).to_str() + - str::from_slice(os::EXE_SUFFIX)) + str::to_owned(os::EXE_SUFFIX)) } fn make_run_args(config: config, _props: TestProps, testfile: &Path) -> diff --git a/src/libcore/io.rs b/src/libcore/io.rs index 7fc2c2559c2..4ae7d1cdabd 100644 --- a/src/libcore/io.rs +++ b/src/libcore/io.rs @@ -711,7 +711,7 @@ impl ReaderUtil for T { fn read_lines(&self) -> ~[~str] { do vec::build |push| { for self.each_line |line| { - push(str::from_slice(line)); + push(str::to_owned(line)); } } } diff --git a/src/libcore/os.rs b/src/libcore/os.rs index 574618026d9..3a5b18e3b57 100644 --- a/src/libcore/os.rs +++ b/src/libcore/os.rs @@ -396,8 +396,8 @@ fn dup2(src: c_int, dst: c_int) -> c_int { pub fn dll_filename(base: &str) -> ~str { - return str::from_slice(DLL_PREFIX) + str::from_slice(base) + - str::from_slice(DLL_SUFFIX) + return str::to_owned(DLL_PREFIX) + str::to_owned(base) + + str::to_owned(DLL_SUFFIX) } diff --git a/src/libcore/path.rs b/src/libcore/path.rs index a87fd90f4e2..ba95d1f4b5e 100644 --- a/src/libcore/path.rs +++ b/src/libcore/path.rs @@ -477,7 +477,7 @@ impl GenericPath for PosixPath { fn with_filestem(&self, s: &str) -> PosixPath { match self.filetype() { None => self.with_filename(s), - Some(ref t) => self.with_filename(str::from_slice(s) + *t) + Some(ref t) => self.with_filename(str::to_owned(s) + *t) } } @@ -488,7 +488,7 @@ impl GenericPath for PosixPath { Some(ref s) => self.with_filename(*s) } } else { - let t = ~"." + str::from_slice(t); + let t = ~"." + str::to_owned(t); match self.filestem() { None => self.with_filename(t), Some(ref s) => self.with_filename(*s + t) @@ -621,7 +621,7 @@ impl GenericPath for WindowsPath { None => { host = None; device = None; - rest = str::from_slice(s); + rest = str::to_owned(s); } } } @@ -694,7 +694,7 @@ impl GenericPath for WindowsPath { fn with_filestem(&self, s: &str) -> WindowsPath { match self.filetype() { None => self.with_filename(s), - Some(ref t) => self.with_filename(str::from_slice(s) + *t) + Some(ref t) => self.with_filename(str::to_owned(s) + *t) } } @@ -705,7 +705,7 @@ impl GenericPath for WindowsPath { Some(ref s) => self.with_filename(*s) } } else { - let t = ~"." + str::from_slice(t); + let t = ~"." + str::to_owned(t); match self.filestem() { None => self.with_filename(t), Some(ref s) => @@ -956,7 +956,7 @@ mod tests { fn test_posix_paths() { fn t(wp: &PosixPath, s: &str) { let ss = wp.to_str(); - let sss = str::from_slice(s); + let sss = str::to_owned(s); if (ss != sss) { debug!("got %s", ss); debug!("expected %s", sss); @@ -1014,7 +1014,7 @@ mod tests { fn test_normalize() { fn t(wp: &PosixPath, s: &str) { let ss = wp.to_str(); - let sss = str::from_slice(s); + let sss = str::to_owned(s); if (ss != sss) { debug!("got %s", ss); debug!("expected %s", sss); @@ -1077,7 +1077,7 @@ mod tests { fn test_windows_paths() { fn t(wp: &WindowsPath, s: &str) { let ss = wp.to_str(); - let sss = str::from_slice(s); + let sss = str::to_owned(s); if (ss != sss) { debug!("got %s", ss); debug!("expected %s", sss); diff --git a/src/libcore/str.rs b/src/libcore/str.rs index 5ec6471ac4a..fc0cc730dea 100644 --- a/src/libcore/str.rs +++ b/src/libcore/str.rs @@ -78,21 +78,21 @@ pub fn from_bytes_slice<'a>(vector: &'a [u8]) -> &'a str { /// Copy a slice into a new unique str #[inline(always)] -pub fn from_slice(s: &str) -> ~str { +pub fn to_owned(s: &str) -> ~str { unsafe { raw::slice_bytes_owned(s, 0, len(s)) } } impl ToStr for ~str { #[inline(always)] - fn to_str(&self) -> ~str { from_slice(*self) } + fn to_str(&self) -> ~str { to_owned(*self) } } impl<'self> ToStr for &'self str { #[inline(always)] - fn to_str(&self) -> ~str { from_slice(*self) } + fn to_str(&self) -> ~str { to_owned(*self) } } impl ToStr for @str { #[inline(always)] - fn to_str(&self) -> ~str { from_slice(*self) } + fn to_str(&self) -> ~str { to_owned(*self) } } /** @@ -511,7 +511,7 @@ Section: Transforming strings */ pub fn to_bytes(s: &str) -> ~[u8] { unsafe { - let mut v: ~[u8] = ::cast::transmute(from_slice(s)); + let mut v: ~[u8] = ::cast::transmute(to_owned(s)); vec::raw::set_len(&mut v, len(s)); v } @@ -2141,7 +2141,7 @@ pub fn as_c_str(s: &str, f: &fn(*libc::c_char) -> T) -> T { // NB: len includes the trailing null. assert!(len > 0); if unsafe { *(ptr::offset(buf,len-1)) != 0 } { - as_c_str(from_slice(s), f) + as_c_str(to_owned(s), f) } else { f(buf as *libc::c_char) } @@ -2682,7 +2682,7 @@ impl<'self> StrSlice<'self> for &'self str { #[inline] - fn to_owned(&self) -> ~str { from_slice(*self) } + fn to_owned(&self) -> ~str { to_owned(*self) } #[inline] fn to_managed(&self) -> @str { @@ -2722,7 +2722,7 @@ impl OwnedStr for ~str { impl Clone for ~str { #[inline(always)] fn clone(&self) -> ~str { - from_slice(*self) + to_owned(*self) } } diff --git a/src/libfuzzer/fuzzer.rc b/src/libfuzzer/fuzzer.rc index 33e970c305a..c75dc2979f1 100644 --- a/src/libfuzzer/fuzzer.rc +++ b/src/libfuzzer/fuzzer.rc @@ -316,7 +316,7 @@ pub fn check_variants_T(crate: @ast::crate, if L < 100 { do under(uint::min(L, 20)) |i| { error!("Replacing... #%?", uint::to_str(i)); - let fname = str::from_slice(filename.to_str()); + let fname = str::to_owned(filename.to_str()); do under(uint::min(L, 30)) |j| { let fname = fname.to_str(); error!("With... %?", stringifier(things[j], intr)); diff --git a/src/librustc/back/link.rs b/src/librustc/back/link.rs index 3b5c90ec1f9..146b688ddc5 100644 --- a/src/librustc/back/link.rs +++ b/src/librustc/back/link.rs @@ -747,8 +747,8 @@ pub fn output_dll_filename(os: session::os, lm: LinkMeta) -> ~str { session::os_android => (android::DLL_PREFIX, android::DLL_SUFFIX), session::os_freebsd => (freebsd::DLL_PREFIX, freebsd::DLL_SUFFIX), }; - return str::from_slice(dll_prefix) + libname + - str::from_slice(dll_suffix); + return str::to_owned(dll_prefix) + libname + + str::to_owned(dll_suffix); } // If the user wants an exe generated we need to invoke diff --git a/src/librustc/driver/driver.rs b/src/librustc/driver/driver.rs index cf77f81a492..d93a2ff59c0 100644 --- a/src/librustc/driver/driver.rs +++ b/src/librustc/driver/driver.rs @@ -91,9 +91,9 @@ pub fn default_configuration(sess: Session, argv0: @~str, input: &input) -> }; return ~[ // Target bindings. - attr::mk_word_item(@str::from_slice(os::FAMILY)), + attr::mk_word_item(@str::to_owned(os::FAMILY)), mk(@~"target_os", @tos), - mk(@~"target_family", @str::from_slice(os::FAMILY)), + mk(@~"target_family", @str::to_owned(os::FAMILY)), mk(@~"target_arch", @arch), mk(@~"target_endian", @end), mk(@~"target_word_size", @wordsz), @@ -648,7 +648,7 @@ pub fn build_session_options(binary: @~str, let linker_args = getopts::opt_strs(matches, ~"link-args").flat_map( |a| { let mut args = ~[]; for str::each_split_char(*a, ' ') |arg| { - args.push(str::from_slice(arg)); + args.push(str::to_owned(arg)); } args }); diff --git a/src/librustc/metadata/filesearch.rs b/src/librustc/metadata/filesearch.rs index 7547f7f763a..6d712881a56 100644 --- a/src/librustc/metadata/filesearch.rs +++ b/src/librustc/metadata/filesearch.rs @@ -73,7 +73,7 @@ pub fn mk_filesearch(maybe_sysroot: &Option<@Path>, @FileSearchImpl { sysroot: sysroot, addl_lib_search_paths: addl_lib_search_paths, - target_triple: str::from_slice(target_triple) + target_triple: str::to_owned(target_triple) } as @FileSearch } @@ -99,7 +99,7 @@ pub fn search(filesearch: @FileSearch, pick: pick) -> Option { pub fn relative_target_lib_path(target_triple: &str) -> Path { Path(libdir()).push_many([~"rustc", - str::from_slice(target_triple), + str::to_owned(target_triple), libdir()]) } diff --git a/src/librustc/metadata/loader.rs b/src/librustc/metadata/loader.rs index 193f6fc8f0a..6605f17739c 100644 --- a/src/librustc/metadata/loader.rs +++ b/src/librustc/metadata/loader.rs @@ -71,7 +71,7 @@ fn libname(cx: &Context) -> (~str, ~str) { os_freebsd => (freebsd::DLL_PREFIX, freebsd::DLL_SUFFIX), }; - (str::from_slice(dll_prefix), str::from_slice(dll_suffix)) + (str::to_owned(dll_prefix), str::to_owned(dll_suffix)) } fn find_library_crate_aux( diff --git a/src/librustc/middle/trans/base.rs b/src/librustc/middle/trans/base.rs index 77a90e22150..391f68aeedc 100644 --- a/src/librustc/middle/trans/base.rs +++ b/src/librustc/middle/trans/base.rs @@ -104,7 +104,7 @@ impl get_insn_ctxt for @CrateContext { fn insn_ctxt(&self, s: &str) -> icx_popper { debug!("new insn_ctxt: %s", s); if self.sess.count_llvm_insns() { - self.stats.llvm_insn_ctxt.push(str::from_slice(s)); + self.stats.llvm_insn_ctxt.push(str::to_owned(s)); } icx_popper(*self) } diff --git a/src/librustdoc/desc_to_brief_pass.rs b/src/librustdoc/desc_to_brief_pass.rs index 40ff9b21829..278f77135f9 100644 --- a/src/librustdoc/desc_to_brief_pass.rs +++ b/src/librustdoc/desc_to_brief_pass.rs @@ -129,13 +129,13 @@ fn first_sentence_(s: &str) -> ~str { }; match idx { Some(idx) if idx > 2u => { - str::from_slice(str::slice(s, 0, idx - 1)) + str::to_owned(str::slice(s, 0, idx - 1)) } _ => { if str::ends_with(s, ~".") { - str::from_slice(s) + str::to_owned(s) } else { - str::from_slice(s) + str::to_owned(s) } } } diff --git a/src/libstd/getopts.rs b/src/libstd/getopts.rs index 9b754c4ec5d..f66b56381f0 100644 --- a/src/libstd/getopts.rs +++ b/src/libstd/getopts.rs @@ -106,7 +106,7 @@ pub struct Opt { } fn mkname(nm: &str) -> Name { - let unm = str::from_slice(nm); + let unm = str::to_owned(nm); return if nm.len() == 1u { Short(str::char_at(unm, 0u)) } else { Long(unm) }; @@ -441,7 +441,7 @@ pub fn opt_default(mm: &Matches, nm: &str, def: &str) -> Option<~str> { let vals = opt_vals(mm, nm); if vec::len::(vals) == 0u { return None::<~str>; } return match vals[0] { Val(copy s) => Some::<~str>(s), - _ => Some::<~str>(str::from_slice(def)) } + _ => Some::<~str>(str::to_owned(def)) } } #[deriving(Eq)] @@ -481,10 +481,10 @@ pub mod groups { desc: &str, hint: &str) -> OptGroup { let len = short_name.len(); assert!(len == 1 || len == 0); - return OptGroup { short_name: str::from_slice(short_name), - long_name: str::from_slice(long_name), - hint: str::from_slice(hint), - desc: str::from_slice(desc), + return OptGroup { short_name: str::to_owned(short_name), + long_name: str::to_owned(long_name), + hint: str::to_owned(hint), + desc: str::to_owned(desc), hasarg: Yes, occur: Req}; } @@ -494,10 +494,10 @@ pub mod groups { desc: &str, hint: &str) -> OptGroup { let len = short_name.len(); assert!(len == 1 || len == 0); - return OptGroup {short_name: str::from_slice(short_name), - long_name: str::from_slice(long_name), - hint: str::from_slice(hint), - desc: str::from_slice(desc), + return OptGroup {short_name: str::to_owned(short_name), + long_name: str::to_owned(long_name), + hint: str::to_owned(hint), + desc: str::to_owned(desc), hasarg: Yes, occur: Optional}; } @@ -507,10 +507,10 @@ pub mod groups { desc: &str) -> OptGroup { let len = short_name.len(); assert!(len == 1 || len == 0); - return OptGroup {short_name: str::from_slice(short_name), - long_name: str::from_slice(long_name), + return OptGroup {short_name: str::to_owned(short_name), + long_name: str::to_owned(long_name), hint: ~"", - desc: str::from_slice(desc), + desc: str::to_owned(desc), hasarg: No, occur: Optional}; } @@ -520,10 +520,10 @@ pub mod groups { desc: &str, hint: &str) -> OptGroup { let len = short_name.len(); assert!(len == 1 || len == 0); - return OptGroup {short_name: str::from_slice(short_name), - long_name: str::from_slice(long_name), - hint: str::from_slice(hint), - desc: str::from_slice(desc), + return OptGroup {short_name: str::to_owned(short_name), + long_name: str::to_owned(long_name), + hint: str::to_owned(hint), + desc: str::to_owned(desc), hasarg: Maybe, occur: Optional}; } @@ -536,10 +536,10 @@ pub mod groups { desc: &str, hint: &str) -> OptGroup { let len = short_name.len(); assert!(len == 1 || len == 0); - return OptGroup {short_name: str::from_slice(short_name), - long_name: str::from_slice(long_name), - hint: str::from_slice(hint), - desc: str::from_slice(desc), + return OptGroup {short_name: str::to_owned(short_name), + long_name: str::to_owned(long_name), + hint: str::to_owned(hint), + desc: str::to_owned(desc), hasarg: Yes, occur: Multi}; } @@ -648,7 +648,7 @@ pub mod groups { row }); - return str::from_slice(brief) + + return str::to_owned(brief) + ~"\n\nOptions:\n" + str::connect(rows, ~"\n") + ~"\n\n"; diff --git a/src/libstd/net_ip.rs b/src/libstd/net_ip.rs index 758e7a5e6ca..58775c5f2e4 100644 --- a/src/libstd/net_ip.rs +++ b/src/libstd/net_ip.rs @@ -225,7 +225,7 @@ pub mod v4 { let input_is_inaddr_none = result::get(&ip_rep_result).as_u32() == INADDR_NONE; - let new_addr = uv_ip4_addr(str::from_slice(ip), 22); + let new_addr = uv_ip4_addr(str::to_owned(ip), 22); let reformatted_name = uv_ip4_name(&new_addr); debug!("try_parse_addr: input ip: %s reparsed ip: %s", ip, reformatted_name); @@ -278,7 +278,7 @@ pub mod v6 { pub fn try_parse_addr(ip: &str) -> result::Result { unsafe { // need to figure out how to establish a parse failure.. - let new_addr = uv_ip6_addr(str::from_slice(ip), 22); + let new_addr = uv_ip6_addr(str::to_owned(ip), 22); let reparsed_name = uv_ip6_name(&new_addr); debug!("v6::try_parse_addr ip: '%s' reparsed '%s'", ip, reparsed_name); diff --git a/src/libstd/time.rs b/src/libstd/time.rs index 31d8eb20a67..e731f679221 100644 --- a/src/libstd/time.rs +++ b/src/libstd/time.rs @@ -289,7 +289,7 @@ priv fn do_strptime(s: &str, format: &str) -> Result { let mut i = 0u; while i < digits { - let range = str::char_range_at(str::from_slice(ss), pos); + let range = str::char_range_at(str::to_owned(ss), pos); pos = range.next; match range.ch { @@ -628,7 +628,7 @@ priv fn do_strptime(s: &str, format: &str) -> Result { } } - do io::with_str_reader(str::from_slice(format)) |rdr| { + do io::with_str_reader(str::to_owned(format)) |rdr| { let mut tm = Tm { tm_sec: 0_i32, tm_min: 0_i32, @@ -840,7 +840,7 @@ priv fn do_strftime(format: &str, tm: &Tm) -> ~str { let mut buf = ~""; - do io::with_str_reader(str::from_slice(format)) |rdr| { + do io::with_str_reader(str::to_owned(format)) |rdr| { while !rdr.eof() { match rdr.read_char() { '%' => buf += parse_type(rdr.read_char(), tm), @@ -1022,7 +1022,7 @@ mod tests { fn test(s: &str, format: &str) -> bool { match strptime(s, format) { - Ok(ref tm) => tm.strftime(format) == str::from_slice(s), + Ok(ref tm) => tm.strftime(format) == str::to_owned(s), Err(copy e) => fail!(e) } } diff --git a/src/libsyntax/ext/quote.rs b/src/libsyntax/ext/quote.rs index 34a37e4f6b4..b1ec9643f4e 100644 --- a/src/libsyntax/ext/quote.rs +++ b/src/libsyntax/ext/quote.rs @@ -123,7 +123,7 @@ pub mod rt { impl<'self> ToSource for &'self str { fn to_source(&self, _cx: @ext_ctxt) -> ~str { - let lit = dummy_spanned(ast::lit_str(@str::from_slice(*self))); + let lit = dummy_spanned(ast::lit_str(@str::to_owned(*self))); pprust::lit_to_str(@lit) } } diff --git a/src/test/run-pass/struct-order-of-eval-1.rs b/src/test/run-pass/struct-order-of-eval-1.rs index db7c73cbfc5..884459cf069 100644 --- a/src/test/run-pass/struct-order-of-eval-1.rs +++ b/src/test/run-pass/struct-order-of-eval-1.rs @@ -12,5 +12,5 @@ struct S { f0: ~str, f1: int } pub fn main() { let s = ~"Hello, world!"; - let _s = S { f0: str::from_slice(s), ..S { f0: s, f1: 23 } }; + let _s = S { f0: str::to_owned(s), ..S { f0: s, f1: 23 } }; } diff --git a/src/test/run-pass/struct-order-of-eval-2.rs b/src/test/run-pass/struct-order-of-eval-2.rs index 413f185659a..419c4ac3942 100644 --- a/src/test/run-pass/struct-order-of-eval-2.rs +++ b/src/test/run-pass/struct-order-of-eval-2.rs @@ -12,5 +12,5 @@ struct S { f0: ~str, f1: ~str } pub fn main() { let s = ~"Hello, world!"; - let _s = S { f1: str::from_slice(s), f0: s }; + let _s = S { f1: str::to_owned(s), f0: s }; }