diff options
| author | Artur Sinila <personal@logarithmus.dev> | 2022-07-17 20:35:34 +0300 |
|---|---|---|
| committer | Artur Sinila <personal@logarithmus.dev> | 2022-07-17 20:35:34 +0300 |
| commit | d9336a496c666a3b8976e5a475c769f34673aeed (patch) | |
| tree | ad94fbc7950855e2e6a2392b056c69861a78733d | |
| parent | db6a85d3583e472645b03be93bb5763431035008 (diff) | |
| download | rust-d9336a496c666a3b8976e5a475c769f34673aeed.tar.gz rust-d9336a496c666a3b8976e5a475c769f34673aeed.zip | |
fix: un-inline `ConstScalarOrPath::from_expr_opt`
| -rw-r--r-- | crates/hir-def/src/type_ref.rs | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/crates/hir-def/src/type_ref.rs b/crates/hir-def/src/type_ref.rs index 867d82f45a7..6be78745f12 100644 --- a/crates/hir-def/src/type_ref.rs +++ b/crates/hir-def/src/type_ref.rs @@ -411,9 +411,7 @@ impl ConstScalarOrPath { } ast::Expr::PrefixExpr(prefix_expr) => match prefix_expr.op_kind() { Some(ast::UnaryOp::Neg) => { - let unsigned = prefix_expr - .expr() - .map_or(Self::Scalar(ConstScalar::Unknown), Self::from_expr); + let unsigned = Self::from_expr_opt(prefix_expr.expr()); // Add sign match unsigned { Self::Scalar(ConstScalar::UInt(num)) => { @@ -422,7 +420,7 @@ impl ConstScalarOrPath { other => other, } } - _ => prefix_expr.expr().map_or(Self::Scalar(ConstScalar::Unknown), Self::from_expr), + _ => Self::from_expr_opt(prefix_expr.expr()), }, ast::Expr::Literal(literal) => Self::Scalar(match literal.kind() { ast::LiteralKind::IntNumber(num) => { |
