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 by regionck
.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
to proj_capture
or proj_possible_ancestor
is same as proj_capture
,
assuming they both start off of the same root variable.Type Definitions
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 of CapturePlace
s.Part of
MinCaptureInformationMap
; Maps a root variable to the list of CapturedPlace
.
Used to track the minimum set of Place
s that need to be captured to support all
Places captured by the closure starting at a given root variable.