Struct rustc::ty::fold::LateBoundRegionsCollector [−][src]
struct LateBoundRegionsCollector {
current_index: DebruijnIndex,
regions: FxHashSet<BoundRegion>,
just_constrained: 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?
Collects all the late-bound regions at the innermost binding level into a hash set.
Fields
current_index: DebruijnIndex
🔬 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?
regions: FxHashSet<BoundRegion>
🔬 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?
just_constrained: 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?
If true, we only want regions that are known to be
"constrained" when you equate this type with another type. In
partcular, if you have e.g. &'a u32 and &'b u32, equating
them constraints 'a == 'b. But if you have <&'a u32 as Trait>::Foo and <&'b u32 as Trait>::Foo, normalizing those
types may mean that 'a and 'b don't appear in the results,
so they are not considered constrained.
Methods
impl LateBoundRegionsCollector[src]
impl LateBoundRegionsCollectorfn new(just_constrained: bool) -> Self[src]
fn new(just_constrained: bool) -> Self🔬 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<'tcx> TypeVisitor<'tcx> for LateBoundRegionsCollector[src]
impl<'tcx> TypeVisitor<'tcx> for LateBoundRegionsCollectorfn visit_binder<T: TypeFoldable<'tcx>>(&mut self, t: &Binder<T>) -> bool[src]
fn visit_binder<T: TypeFoldable<'tcx>>(&mut self, t: &Binder<T>) -> 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?
fn visit_ty(&mut self, t: Ty<'tcx>) -> bool[src]
fn visit_ty(&mut self, t: Ty<'tcx>) -> 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?
fn visit_region(&mut self, r: Region<'tcx>) -> bool[src]
fn visit_region(&mut self, r: Region<'tcx>) -> 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?
fn visit_const(&mut self, c: &'tcx Const<'tcx>) -> bool[src]
fn visit_const(&mut self, c: &'tcx Const<'tcx>) -> 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?
Auto Trait Implementations
impl !Send for LateBoundRegionsCollector
impl !Send for LateBoundRegionsCollectorimpl !Sync for LateBoundRegionsCollector
impl !Sync for LateBoundRegionsCollector