Module rustc_mir::dataflow::move_paths::abs_domain [−][src]
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
The move-analysis portion of borrowck needs to work in an abstract
domain of lifted Places. Most of the Place variants fall into a
one-to-one mapping between the concrete and abstract (e.g. a
field-deref on a local-variable, x.field, has the same meaning
in both domains). Indexed-Projections are the exception: a[x]
needs to be treated as mapping to the same move path as a[y] as
well as a[13], et cetera.
(In theory the analysis could be extended to work with sets of
paths, so that a[0] and a[13] could be kept distinct, while
a[x] would still overlap them both. But that is not this
representation does today.)
Structs
| AbstractOperand |
[ Experimental ]
|
| AbstractType |
[ Experimental ]
|
Traits
| Lift |
[ Experimental ]
|
Type Definitions
| AbstractElem |
[ Experimental ]
|