self.args[i].as_usize()
}
rt::v1::Count::NextParam => {
- self.curarg.next().and_then(|arg| arg.as_usize())
+ self.curarg.next()?.as_usize()
}
}
}
sign = Some('+'); width += 1;
}
- let mut prefixed = false;
- if self.alternate() {
- prefixed = true; width += prefix.chars().count();
+ let prefixed = self.alternate();
+ if prefixed {
+ width += prefix.chars().count();
}
// Writes the sign if it exists, and then the prefix if it was requested
let write_prefix = |f: &mut Formatter| {
if let Some(c) = sign {
- f.buf.write_str(c.encode_utf8(&mut [0; 4]))?;
+ f.buf.write_char(c)?;
}
if prefixed { f.buf.write_str(prefix) }
else { Ok(()) }
// remove the sign from the formatted parts
formatted.sign = b"";
- width = if width < sign.len() { 0 } else { width - sign.len() };
+ width = width.saturating_sub(sign.len());
align = rt::v1::Alignment::Right;
self.fill = '0';
self.align = rt::v1::Alignment::Right;
#[inline]
fn into_searcher(self, haystack: &'a str) -> Self::Searcher {
let mut utf8_encoded = [0; 4];
- self.encode_utf8(&mut utf8_encoded);
- let utf8_size = self.len_utf8();
+ let utf8_size = self.encode_utf8(&mut utf8_encoded).len();
CharSearcher {
haystack,
finger: 0,