35
35
36
36
// Transforming strings
37
37
bytes,
38
- to_chars ,
38
+ chars ,
39
39
substr,
40
40
char_slice,
41
41
slice,
@@ -341,7 +341,7 @@ fn trim_left(s: str) -> str {
341
341
}
342
342
ret i;
343
343
}
344
- let chars = to_chars ( s) ;
344
+ let chars = chars ( s) ;
345
345
let whities = count_whities ( chars) ;
346
346
ret from_chars( vec:: slice ( chars, whities, vec:: len ( chars) ) ) ;
347
347
}
@@ -360,7 +360,7 @@ fn trim_right(s: str) -> str {
360
360
}
361
361
ret i;
362
362
}
363
- let chars = to_chars ( s) ;
363
+ let chars = chars ( s) ;
364
364
let whities = count_whities ( chars) ;
365
365
ret from_chars( vec:: slice ( chars, 0 u, whities) ) ;
366
366
}
@@ -391,13 +391,13 @@ fn bytes(s: str) -> [u8] unsafe {
391
391
}
392
392
393
393
/*
394
- Function: to_chars
394
+ Function: chars
395
395
396
396
Convert a string to a vector of characters
397
397
398
398
FIXME: rename to 'chars'
399
399
*/
400
- fn to_chars ( s : str ) -> [ char ] {
400
+ fn chars ( s : str ) -> [ char ] {
401
401
let buf: [ char ] = [ ] ;
402
402
let i = 0 u;
403
403
let len = byte_len ( s) ;
@@ -440,7 +440,7 @@ Failure:
440
440
FIXME: rename to slice(), make faster by avoiding char conversion
441
441
*/
442
442
fn char_slice ( s : str , begin : uint , end : uint ) -> str {
443
- from_chars ( vec:: slice ( to_chars ( s) , begin, end) )
443
+ from_chars ( vec:: slice ( chars ( s) , begin, end) )
444
444
}
445
445
446
446
/*
@@ -1978,4 +1978,11 @@ mod tests {
1978
1978
fn test_windowed_ ( ) {
1979
1979
let _x = windowed ( 0 u, "abcd" ) ;
1980
1980
}
1981
+
1982
+ #[ test]
1983
+ fn test_chars ( ) {
1984
+ let ss = "ศไทย中华Việt Nam" ;
1985
+ assert [ 'ศ' , 'ไ' , 'ท' , 'ย' , '中' , '华' , 'V' , 'i' , 'ệ' , 't' , ' ' , 'N' , 'a' , 'm' ]
1986
+ == chars ( ss) ;
1987
+ }
1981
1988
}
0 commit comments