mirror of
https://github.com/rust-lang/rust.git
synced 2025-06-05 19:58:32 +00:00
simplify parse_literal_maybe_minus
This commit is contained in:
parent
f647c11121
commit
aa8adba8fb
@ -1280,17 +1280,13 @@ impl<'a> Parser<'a> {
|
|||||||
pub fn parse_literal_maybe_minus(&mut self) -> PResult<'a, P<Expr>> {
|
pub fn parse_literal_maybe_minus(&mut self) -> PResult<'a, P<Expr>> {
|
||||||
maybe_whole_expr!(self);
|
maybe_whole_expr!(self);
|
||||||
|
|
||||||
let minus_lo = self.token.span;
|
|
||||||
let minus_present = self.eat(&token::BinOp(token::Minus));
|
|
||||||
let lo = self.token.span;
|
let lo = self.token.span;
|
||||||
let literal = self.parse_lit()?;
|
let minus_present = self.eat(&token::BinOp(token::Minus));
|
||||||
let hi = self.prev_span;
|
let lit = self.parse_lit()?;
|
||||||
let expr = self.mk_expr(lo.to(hi), ExprKind::Lit(literal), AttrVec::new());
|
let expr = self.mk_expr(lit.span, ExprKind::Lit(lit), AttrVec::new());
|
||||||
|
|
||||||
if minus_present {
|
if minus_present {
|
||||||
let minus_hi = self.prev_span;
|
Ok(self.mk_expr(lo.to(self.prev_span), self.mk_unary(UnOp::Neg, expr), AttrVec::new()))
|
||||||
let unary = self.mk_unary(UnOp::Neg, expr);
|
|
||||||
Ok(self.mk_expr(minus_lo.to(minus_hi), unary, AttrVec::new()))
|
|
||||||
} else {
|
} else {
|
||||||
Ok(expr)
|
Ok(expr)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user