std: remove str::to_chars
This commit is contained in:
parent
8c59d920a1
commit
ebefe425b9
3 changed files with 6 additions and 10 deletions
|
|
@ -143,8 +143,7 @@ fn try_parsing_version(s: &str) -> Option<Version> {
|
|||
let s = s.trim();
|
||||
debug!("Attempting to parse: %s", s);
|
||||
let mut parse_state = Start;
|
||||
// I gave up on using external iterators (tjc)
|
||||
for str::to_chars(s).each() |&c| {
|
||||
for s.iter().advance |&c| {
|
||||
if char::is_digit(c) {
|
||||
parse_state = SawDigit;
|
||||
}
|
||||
|
|
@ -172,7 +171,7 @@ fn is_url_like(p: &RemotePath) -> bool {
|
|||
/// Otherwise, return None.
|
||||
pub fn split_version<'a>(s: &'a str) -> Option<(&'a str, Version)> {
|
||||
// reject strings with multiple '#'s
|
||||
if { let mut i: uint = 0; for str::to_chars(s).each |&c| { if c == '#' { i += 1; } }; i > 1 } {
|
||||
if s.splitn_iter('#', 2).count() > 1 {
|
||||
return None;
|
||||
}
|
||||
match s.rfind('#') {
|
||||
|
|
|
|||
|
|
@ -432,11 +432,6 @@ pub fn byte_slice_no_callback<'a>(s: &'a str) -> &'a [u8] {
|
|||
}
|
||||
}
|
||||
|
||||
/// Convert a string to a unique vector of characters
|
||||
pub fn to_chars(s: &str) -> ~[char] {
|
||||
s.iter().collect()
|
||||
}
|
||||
|
||||
/**
|
||||
* Take a substring of another.
|
||||
*
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@
|
|||
|
||||
extern mod extra;
|
||||
|
||||
use std::iterator::IteratorUtil;
|
||||
use std::str;
|
||||
use std::vec;
|
||||
|
||||
|
|
@ -17,11 +18,12 @@ pub fn main() {
|
|||
// Chars of 1, 2, 3, and 4 bytes
|
||||
let chs: ~[char] = ~['e', 'é', '€', 0x10000 as char];
|
||||
let s: ~str = str::from_chars(chs);
|
||||
let schs: ~[char] = s.iter().collect();
|
||||
|
||||
assert!(s.len() == 10u);
|
||||
assert!(str::char_len(s) == 4u);
|
||||
assert!(str::to_chars(s).len() == 4u);
|
||||
assert!(str::from_chars(str::to_chars(s)) == s);
|
||||
assert!(schs.len() == 4u);
|
||||
assert!(str::from_chars(schs) == s);
|
||||
assert!(s.char_at(0u) == 'e');
|
||||
assert!(s.char_at(1u) == 'é');
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue