Struct rustc_mir::borrow_check::nll::region_infer::dfs::CopyFromSourceToTarget [−][src]
struct CopyFromSourceToTarget<'v> { pub source_region: RegionVid, pub target_region: RegionVid, pub inferred_values: &'v mut RegionValues, pub constraint_point: Location, pub constraint_span: Span, }
🔬 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?
Used during inference to enforce a R1: R2 @ P
constraint. For
each point Q we reach along the DFS, we check if Q is in R2 (the
"source region"). If not, we stop the walk. Otherwise, we add Q to
R1 (the "target region") and continue to Q's successors. If we
reach the end of the graph, then we add any universal regions from
R2 into R1.
Fields
source_region: RegionVid
🔬 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?
target_region: RegionVid
🔬 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?
inferred_values: &'v mut RegionValues
🔬 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?
constraint_point: Location
🔬 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?
constraint_span: Span
🔬 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?
Trait Implementations
impl<'v> DfsOp for CopyFromSourceToTarget<'v>
[src]
impl<'v> DfsOp for CopyFromSourceToTarget<'v>
type Early = !
🔬 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?
We never stop the walk early.
fn start_point(&self) -> Location
[src]
fn start_point(&self) -> Location
🔬 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?
Returns the point from which to start the DFS.
fn source_region_contains(&mut self, point_index: RegionElementIndex) -> bool
[src]
fn source_region_contains(&mut self, point_index: RegionElementIndex) -> bool
🔬 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?
Returns true if the source region contains the given point.
fn add_to_target_region(
&mut self,
point_index: RegionElementIndex
) -> Result<bool, !>
[src]
fn add_to_target_region(
&mut self,
point_index: RegionElementIndex
) -> Result<bool, !>
🔬 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?
Adds the given point to the target region, returning true if something has changed. Returns Err
if we should abort the walk early. Read more
fn add_universal_regions_outlived_by_source_to_target(
&mut self
) -> Result<bool, !>
[src]
fn add_universal_regions_outlived_by_source_to_target(
&mut self
) -> Result<bool, !>
🔬 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?
Adds all universal regions in the source region to the target region, returning true if something has changed. Read more
Auto Trait Implementations
impl<'v> !Send for CopyFromSourceToTarget<'v>
impl<'v> !Send for CopyFromSourceToTarget<'v>
impl<'v> !Sync for CopyFromSourceToTarget<'v>
impl<'v> !Sync for CopyFromSourceToTarget<'v>