Add useful comments on ExprKind::If variants.

Things that aren't obvious and took me a while to work out.
This commit is contained in:
Nicholas Nethercote
2025-04-28 06:33:22 +10:00
parent 251cda5e1f
commit 0ea204a5ff
3 changed files with 9 additions and 0 deletions

View File

@@ -292,7 +292,10 @@ pub enum ExprKind<'tcx> {
If {
if_then_scope: region::Scope,
cond: ExprId,
/// `then` is always `ExprKind::Block`.
then: ExprId,
/// If present, the `else_opt` expr is always `ExprKind::Block` (for
/// `else`) or `ExprKind::If` (for `else if`).
else_opt: Option<ExprId>,
},
/// A function call. Method calls and overloaded operators are converted to plain function calls.