Implement new formatter for 'int'.
This is used for constants and patterns, which can carry negative values.
This commit is contained in:
parent
78d34f7f76
commit
126f2ab004
|
@ -702,7 +702,10 @@ impl<'comments> Formatter<'comments> {
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn int<'a>(&mut self, s: &'a str, base: &Base) -> Document<'a> {
|
pub fn int<'a>(&mut self, s: &'a str, base: &Base) -> Document<'a> {
|
||||||
unimplemented!()
|
match s.chars().next() {
|
||||||
|
Some('-') => Document::Str("-").append(self.uint(&s[1..], base)),
|
||||||
|
_ => self.uint(s, base),
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn uint<'a>(&mut self, s: &'a str, base: &Base) -> Document<'a> {
|
pub fn uint<'a>(&mut self, s: &'a str, base: &Base) -> Document<'a> {
|
||||||
|
|
|
@ -887,3 +887,21 @@ fn first_class_binop() {
|
||||||
|
|
||||||
assert_fmt(src, src);
|
assert_fmt(src, src);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn int_uint() {
|
||||||
|
let src = indoc! { r#"
|
||||||
|
const i = 42
|
||||||
|
|
||||||
|
const j = -14
|
||||||
|
|
||||||
|
fn foo() {
|
||||||
|
when y is {
|
||||||
|
14 -> -14
|
||||||
|
-42 -> 42
|
||||||
|
}
|
||||||
|
}
|
||||||
|
"#};
|
||||||
|
|
||||||
|
assert_fmt(src, src);
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue