[−][src]Module ra_ap_hir_def::expr
This module describes hir-level representation of expressions.
This representation is:
- Identity-based. Each expression has an
id
, so we can distinguish between different1
in1 + 1
. - Independent of syntax. Though syntactic provenance information can be attached separately via id-based side map.
- Unresolved. Paths are stored as sequences of names, and not as defs the names refer to.
- Desugared. There's no
if let
.
See also a neighboring body
module.
Structs
Label | |
MatchArm | |
RecordFieldPat | |
RecordLitField |
Enums
ArithOp | |
Array | |
BinaryOp | |
BindingAnnotation | Explicit binding annotations given in the HIR for a binding. Note that this is not the final binding mode that we infer after type inference. |
CmpOp | |
Expr | |
Literal | |
LogicOp | |
Ordering | |
Pat | Close relative to rustc's hir::PatKind |
Statement | |
UnaryOp |
Type Definitions
ExprId | |
LabelId | |
PatId |