Rollup merge of #141059 - samueltardieu:push-trvpulpskwwp, r=compiler-errors
HIR: explain in comment why `ExprKind::If` "then" is an `Expr` One could be tempted to replace the "then" `hir::Expr` with kind `hir::ExprKind::Block` by a `hir::Block`. Explain why this would not be a good idea. I've been there. r? ``@compiler-errors``
This commit is contained in:
commit
59ad0cbd04
1 changed files with 2 additions and 0 deletions
|
|
@ -2744,6 +2744,8 @@ pub enum ExprKind<'hir> {
|
|||
///
|
||||
/// The "then" expr is always `ExprKind::Block`. If present, the "else" expr is always
|
||||
/// `ExprKind::Block` (for `else`) or `ExprKind::If` (for `else if`).
|
||||
/// Note that using an `Expr` instead of a `Block` for the "then" part is intentional,
|
||||
/// as it simplifies the type coercion machinery.
|
||||
If(&'hir Expr<'hir>, &'hir Expr<'hir>, Option<&'hir Expr<'hir>>),
|
||||
/// A conditionless loop (can be exited with `break`, `continue`, or `return`).
|
||||
///
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue