[−][src]Module rustc_mir_build::build::matches

Code related to match expressions. These are sufficiently complex to warrant their own module and submodules. :) This main module includes the high-level algorithm, the submodules contain the details.

This also includes code for pattern bindings in let statements and function parameters.

Modules

simplify

Simplifying Candidates

test
util

Structs

ArmHasGuard

ArmHasGuard is isomorphic to a boolean flag. It indicates whether a match arm has a guard expression attached to it.

Ascription

Indicates that the type of source must be a subtype of the user-given type user_ty; this is basically a no-op but can influence region inference.

Binding
Candidate
MatchPair
Test

Enums

TestKind

Functions

traverse_candidate

A depth-first traversal of the Candidate and all of its recursive subcandidates.