Struct rustc_middle::ty::fold::LateBoundRegionsCollector [−][src]
struct LateBoundRegionsCollector {
current_index: DebruijnIndex,
regions: FxHashSet<BoundRegionKind>,
just_constrained: bool,
}Expand description
Collects all the late-bound regions at the innermost binding level into a hash set.
Fields
current_index: DebruijnIndexregions: FxHashSet<BoundRegionKind>just_constrained: booltrue if we only want regions that are known to be
“constrained” when you equate this type with another type. In
particular, 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.
Implementations
Trait Implementations
fn visit_binder<T: TypeFoldable<'tcx>>(
&mut self,
t: &Binder<'tcx, T>
) -> ControlFlow<Self::BreakTy>Auto Trait Implementations
impl RefUnwindSafe for LateBoundRegionsCollectorimpl Send for LateBoundRegionsCollectorimpl Sync for LateBoundRegionsCollectorimpl Unpin for LateBoundRegionsCollectorimpl UnwindSafe for LateBoundRegionsCollectorBlanket Implementations
Layout
Note: Most layout information is completely unstable and may be different between compiler versions and platforms. The only exception is types with certain repr(...) attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 40 bytes