Module rustc_middle::ty::closure
source · Structs
- Part of
MinCaptureInformationMap
; describes the capture kind (&, &mut, move) for a particular capture as well as identifying the part of the source code that triggered this capture to occur. - A composite describing a
Place
that is captured by a closure. - Upvars do not get their own
NodeId
. Instead, we use the pair of the original var ID (that is, the root variable that is referenced by the upvar) and the ID of the closure expression.
Enums
- Represents the various closure traits in the language. This will determine the type of the environment (
self
, in the desugaring) argument that the closure expects. - Information describing the capture of an upvar. This is computed during
typeck
, specifically byregionck
.
Constants
- Captures are represented using fields inside a structure. This represents accessing self in the closure structure
Functions
- Return true if the
proj_possible_ancestor
represents an ancestor path toproj_capture
orproj_possible_ancestor
is same asproj_capture
, assuming they both start off of the same root variable.
Type Aliases
- Given the closure DefId this map provides a map of root variables to minimum set of
CapturedPlace
s that need to be tracked to support all captures of that closure. - Part of
MinCaptureInformationMap
; List ofCapturePlace
s. - Part of
MinCaptureInformationMap
; Maps a root variable to the list ofCapturedPlace
. Used to track the minimum set ofPlace
s that need to be captured to support all Places captured by the closure starting at a given root variable.