Fix various deprecation warnings from char changes
This commit is contained in:
parent
b577e4c8d8
commit
5928f6c8b6
@ -100,10 +100,7 @@ pub fn from_u32(i: u32) -> Option<char> {
|
||||
#[inline]
|
||||
#[deprecated = "use the Char::is_digit method"]
|
||||
pub fn is_digit_radix(c: char, radix: uint) -> bool {
|
||||
match to_digit(c, radix) {
|
||||
Some(_) => true,
|
||||
None => false,
|
||||
}
|
||||
c.is_digit(radix)
|
||||
}
|
||||
|
||||
///
|
||||
@ -123,17 +120,7 @@ pub fn is_digit_radix(c: char, radix: uint) -> bool {
|
||||
#[inline]
|
||||
#[deprecated = "use the Char::to_digit method"]
|
||||
pub fn to_digit(c: char, radix: uint) -> Option<uint> {
|
||||
if radix > 36 {
|
||||
panic!("to_digit: radix is too high (maximum 36)");
|
||||
}
|
||||
let val = match c {
|
||||
'0' ... '9' => c as uint - ('0' as uint),
|
||||
'a' ... 'z' => c as uint + 10u - ('a' as uint),
|
||||
'A' ... 'Z' => c as uint + 10u - ('A' as uint),
|
||||
_ => return None,
|
||||
};
|
||||
if val < radix { Some(val) }
|
||||
else { None }
|
||||
c.to_digit(radix)
|
||||
}
|
||||
|
||||
///
|
||||
@ -178,23 +165,7 @@ pub fn from_digit(num: uint, radix: uint) -> Option<char> {
|
||||
///
|
||||
#[deprecated = "use the Char::escape_unicode method"]
|
||||
pub fn escape_unicode(c: char, f: |char|) {
|
||||
// avoid calling str::to_str_radix because we don't really need to allocate
|
||||
// here.
|
||||
f('\\');
|
||||
let pad = match () {
|
||||
_ if c <= '\x7f' => { f('x'); 2 }
|
||||
_ if c <= '\uffff' => { f('u'); 4 }
|
||||
_ => { f('U'); 8 }
|
||||
};
|
||||
for offset in range_step::<i32>(4 * (pad - 1), -1, -4) {
|
||||
let offset = offset as uint;
|
||||
unsafe {
|
||||
match ((c as i32) >> offset) & 0xf {
|
||||
i @ 0 ... 9 => { f(transmute('0' as i32 + i)); }
|
||||
i => { f(transmute('a' as i32 + (i - 10))); }
|
||||
}
|
||||
}
|
||||
}
|
||||
c.escape_unicode(f)
|
||||
}
|
||||
|
||||
///
|
||||
@ -211,29 +182,14 @@ pub fn escape_unicode(c: char, f: |char|) {
|
||||
///
|
||||
#[deprecated = "use the Char::escape_default method"]
|
||||
pub fn escape_default(c: char, f: |char|) {
|
||||
match c {
|
||||
'\t' => { f('\\'); f('t'); }
|
||||
'\r' => { f('\\'); f('r'); }
|
||||
'\n' => { f('\\'); f('n'); }
|
||||
'\\' => { f('\\'); f('\\'); }
|
||||
'\'' => { f('\\'); f('\''); }
|
||||
'"' => { f('\\'); f('"'); }
|
||||
'\x20' ... '\x7e' => { f(c); }
|
||||
_ => c.escape_unicode(f),
|
||||
}
|
||||
c.escape_default(f)
|
||||
}
|
||||
|
||||
/// Returns the amount of bytes this `char` would need if encoded in UTF-8
|
||||
#[inline]
|
||||
#[deprecated = "use the Char::len_utf8 method"]
|
||||
pub fn len_utf8_bytes(c: char) -> uint {
|
||||
let code = c as u32;
|
||||
match () {
|
||||
_ if code < MAX_ONE_B => 1u,
|
||||
_ if code < MAX_TWO_B => 2u,
|
||||
_ if code < MAX_THREE_B => 3u,
|
||||
_ => 4u,
|
||||
}
|
||||
c.len_utf8()
|
||||
}
|
||||
|
||||
/// Basic `char` manipulations.
|
||||
@ -362,13 +318,30 @@ pub trait Char {
|
||||
#[experimental = "trait is experimental"]
|
||||
impl Char for char {
|
||||
#[deprecated = "use is_digit"]
|
||||
fn is_digit_radix(&self, radix: uint) -> bool { is_digit_radix(*self, radix) }
|
||||
fn is_digit_radix(&self, radix: uint) -> bool { self.is_digit(radix) }
|
||||
|
||||
#[unstable = "pending trait organization"]
|
||||
fn is_digit(&self, radix: uint) -> bool { is_digit_radix(*self, radix) }
|
||||
fn is_digit(&self, radix: uint) -> bool {
|
||||
match self.to_digit(radix) {
|
||||
Some(_) => true,
|
||||
None => false,
|
||||
}
|
||||
}
|
||||
|
||||
#[unstable = "pending trait organization"]
|
||||
fn to_digit(&self, radix: uint) -> Option<uint> { to_digit(*self, radix) }
|
||||
fn to_digit(&self, radix: uint) -> Option<uint> {
|
||||
if radix > 36 {
|
||||
panic!("to_digit: radix is too high (maximum 36)");
|
||||
}
|
||||
let val = match *self {
|
||||
'0' ... '9' => *self as uint - ('0' as uint),
|
||||
'a' ... 'z' => *self as uint + 10u - ('a' as uint),
|
||||
'A' ... 'Z' => *self as uint + 10u - ('A' as uint),
|
||||
_ => return None,
|
||||
};
|
||||
if val < radix { Some(val) }
|
||||
else { None }
|
||||
}
|
||||
|
||||
#[deprecated = "use the char::from_digit free function"]
|
||||
fn from_digit(num: uint, radix: uint) -> Option<char> { from_digit(num, radix) }
|
||||
@ -378,18 +351,55 @@ fn from_digit(num: uint, radix: uint) -> Option<char> { from_digit(num, radix) }
|
||||
fn from_u32(i: u32) -> Option<char> { from_u32(i) }
|
||||
|
||||
#[unstable = "pending error conventions, trait organization"]
|
||||
fn escape_unicode(&self, f: |char|) { escape_unicode(*self, f) }
|
||||
fn escape_unicode(&self, f: |char|) {
|
||||
// avoid calling str::to_str_radix because we don't really need to allocate
|
||||
// here.
|
||||
f('\\');
|
||||
let pad = match () {
|
||||
_ if *self <= '\xff' => { f('x'); 2 }
|
||||
_ if *self <= '\uffff' => { f('u'); 4 }
|
||||
_ => { f('U'); 8 }
|
||||
};
|
||||
for offset in range_step::<i32>(4 * (pad - 1), -1, -4) {
|
||||
let offset = offset as uint;
|
||||
unsafe {
|
||||
match ((*self as i32) >> offset) & 0xf {
|
||||
i @ 0 ... 9 => { f(transmute('0' as i32 + i)); }
|
||||
i => { f(transmute('a' as i32 + (i - 10))); }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[unstable = "pending error conventions, trait organization"]
|
||||
fn escape_default(&self, f: |char|) { escape_default(*self, f) }
|
||||
fn escape_default(&self, f: |char|) {
|
||||
match *self {
|
||||
'\t' => { f('\\'); f('t'); }
|
||||
'\r' => { f('\\'); f('r'); }
|
||||
'\n' => { f('\\'); f('n'); }
|
||||
'\\' => { f('\\'); f('\\'); }
|
||||
'\'' => { f('\\'); f('\''); }
|
||||
'"' => { f('\\'); f('"'); }
|
||||
'\x20' ... '\x7e' => { f(*self); }
|
||||
_ => self.escape_unicode(f),
|
||||
}
|
||||
}
|
||||
|
||||
#[inline]
|
||||
#[deprecated = "use len_utf8"]
|
||||
fn len_utf8_bytes(&self) -> uint { len_utf8_bytes(*self) }
|
||||
fn len_utf8_bytes(&self) -> uint { self.len_utf8() }
|
||||
|
||||
#[inline]
|
||||
#[unstable = "pending trait organization"]
|
||||
fn len_utf8(&self) -> uint { len_utf8_bytes(*self) }
|
||||
fn len_utf8(&self) -> uint {
|
||||
let code = *self as u32;
|
||||
match () {
|
||||
_ if code < MAX_ONE_B => 1u,
|
||||
_ if code < MAX_TWO_B => 2u,
|
||||
_ if code < MAX_THREE_B => 3u,
|
||||
_ => 4u,
|
||||
}
|
||||
}
|
||||
|
||||
#[inline]
|
||||
#[unstable = "pending trait organization"]
|
||||
|
@ -15,6 +15,7 @@
|
||||
pub use self::SignFormat::*;
|
||||
|
||||
use char;
|
||||
use char::Char;
|
||||
use fmt;
|
||||
use iter::{range, DoubleEndedIterator};
|
||||
use num::{Float, FPNaN, FPInfinite, ToPrimitive};
|
||||
@ -222,7 +223,7 @@ pub fn float_to_str_bytes_common<T: Float, U>(
|
||||
// round the remaining ones.
|
||||
if limit_digits && dig == digit_count {
|
||||
let ascii2value = |chr: u8| {
|
||||
char::to_digit(chr as char, radix).unwrap()
|
||||
(chr as char).to_digit(radix).unwrap()
|
||||
};
|
||||
let value2ascii = |val: uint| {
|
||||
char::from_digit(val, radix).unwrap() as u8
|
||||
|
@ -411,7 +411,7 @@ fn integer(&mut self) -> Option<uint> {
|
||||
loop {
|
||||
match self.cur.clone().next() {
|
||||
Some((_, c)) => {
|
||||
match char::to_digit(c, 10) {
|
||||
match c.to_digit(10) {
|
||||
Some(i) => {
|
||||
cur = cur * 10 + i;
|
||||
found = true;
|
||||
|
@ -17,6 +17,7 @@
|
||||
pub use self::SignFormat::*;
|
||||
|
||||
use char;
|
||||
use char::Char;
|
||||
use num;
|
||||
use num::{Int, Float, FPNaN, FPInfinite, ToPrimitive};
|
||||
use slice::{SlicePrelude, CloneSliceAllocPrelude};
|
||||
@ -320,7 +321,7 @@ pub fn float_to_str_bytes_common<T: Float>(
|
||||
// round the remaining ones.
|
||||
if limit_digits && dig == digit_count {
|
||||
let ascii2value = |chr: u8| {
|
||||
char::to_digit(chr as char, radix).unwrap()
|
||||
(chr as char).to_digit(radix).unwrap()
|
||||
};
|
||||
let value2ascii = |val: uint| {
|
||||
char::from_digit(val, radix).unwrap() as u8
|
||||
|
@ -645,7 +645,7 @@ fn scan_digits(&mut self, radix: uint) -> uint {
|
||||
loop {
|
||||
let c = self.curr;
|
||||
if c == Some('_') { debug!("skipping a _"); self.bump(); continue; }
|
||||
match c.and_then(|cc| char::to_digit(cc, radix)) {
|
||||
match c.and_then(|cc| cc.to_digit(radix)) {
|
||||
Some(_) => {
|
||||
debug!("{} in scan_digits", c);
|
||||
len += 1;
|
||||
@ -677,7 +677,7 @@ fn scan_number(&mut self, c: char) -> token::Lit {
|
||||
return token::Integer(self.name_from(start_bpos));
|
||||
}
|
||||
}
|
||||
} else if c.is_digit_radix(10) {
|
||||
} else if c.is_digit(10) {
|
||||
num_digits = self.scan_digits(10) + 1;
|
||||
} else {
|
||||
num_digits = 0;
|
||||
@ -696,7 +696,7 @@ fn scan_number(&mut self, c: char) -> token::Lit {
|
||||
// might have stuff after the ., and if it does, it needs to start
|
||||
// with a number
|
||||
self.bump();
|
||||
if self.curr.unwrap_or('\0').is_digit_radix(10) {
|
||||
if self.curr.unwrap_or('\0').is_digit(10) {
|
||||
self.scan_digits(10);
|
||||
self.scan_float_exponent();
|
||||
}
|
||||
|
@ -14,8 +14,6 @@
|
||||
use self::States::*;
|
||||
use self::FormatState::*;
|
||||
use self::FormatOp::*;
|
||||
|
||||
use std::char;
|
||||
use std::mem::replace;
|
||||
|
||||
#[deriving(PartialEq)]
|
||||
@ -298,7 +296,7 @@ pub fn expand(cap: &[u8], params: &[Param], vars: &mut Variables)
|
||||
},
|
||||
PushParam => {
|
||||
// params are 1-indexed
|
||||
stack.push(mparams[match char::to_digit(cur, 10) {
|
||||
stack.push(mparams[match cur.to_digit(10) {
|
||||
Some(d) => d - 1,
|
||||
None => return Err("bad param number".to_string())
|
||||
}].clone());
|
||||
|
Loading…
Reference in New Issue
Block a user