about summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2014-04-30 23:06:36 -0700
committerAlex Crichton <alex@alexcrichton.com>2014-05-07 08:16:14 -0700
commit9bae6ec828fdc7f87838ee008cccef90e31b9f84 (patch)
tree97ae34844c9949ff5a49a6b99ff70dd2f0cbf6c0 /src/libsyntax
parent544d90940166a9a83194801437dd37c0b1872c86 (diff)
downloadrust-9bae6ec828fdc7f87838ee008cccef90e31b9f84.tar.gz
rust-9bae6ec828fdc7f87838ee008cccef90e31b9f84.zip
core: Inherit possible string functionality
This moves as much allocation as possible from teh std::str module into
core::str. This includes essentially all non-allocating functionality, mostly
iterators and slicing and such.

This primarily splits the Str trait into only having the as_slice() method,
adding a new StrAllocating trait to std::str which contains the relevant new
allocation methods. This is a breaking change if any of the methods of "trait
Str" were overriden. The old functionality can be restored by implementing both
the Str and StrAllocating traits.

[breaking-change]
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/util/interner.rs5
1 files changed, 0 insertions, 5 deletions
diff --git a/src/libsyntax/util/interner.rs b/src/libsyntax/util/interner.rs
index b7932da8738..d705da7b72b 100644
--- a/src/libsyntax/util/interner.rs
+++ b/src/libsyntax/util/interner.rs
@@ -109,11 +109,6 @@ impl Str for RcStr {
         let s: &'a str = *self.string;
         s
     }
-
-    #[inline]
-    fn into_owned(self) -> ~str {
-        self.string.to_owned()
-    }
 }
 
 impl fmt::Show for RcStr {