Module rustc_middle::thir[−][src]

Structs

Arm
ArmId
Ascription
Block
Expr

The Thir trait implementor lowers their expressions (&'tcx H::Expr) into instances of this Expr enum. This lowering can be done basically as lazily or as eagerly as desired: every recursive reference to an expression in this enum is an ExprId, which may in turn be another instance of this enum (boxed), or else an unlowered &'tcx H::Expr. Note that instances of Expr are very short-lived. They are created by Thir::to_expr, analyzed and converted into MIR, and then discarded.

ExprId
FieldExpr
FieldPat
FruInfo
Pat
PatRange
PatTyProj
Stmt
StmtId
Thir

Enums

BindingMode
BlockSafety
ExprKind
Guard
InlineAsmOperand
LintLevel
LogicalOp
PatKind
StmtKind