Skip to main content

Module env

Module env 

Source

Re-exportsΒ§

use rustc_data_structures::fx::FxHashSet; πŸ”’
use rustc_data_structures::fx::FxIndexSet; πŸ”’
use rustc_data_structures::transitive_relation::TransitiveRelationBuilder; πŸ”’
use rustc_middle::ty; πŸ”’
use rustc_span::bug; πŸ”’
use tracing::debug; πŸ”’
use super::explicit_outlives_bounds; πŸ”’
use crate::infer::GenericKind; πŸ”’
use crate::infer::free_regions::FreeRegionMap; πŸ”’
use crate::traits::query::OutlivesBound; πŸ”’

StructsΒ§

OutlivesEnvironment
The OutlivesEnvironment collects information about what outlives what in a given type-checking setting. For example, if we have a where-clause like where T: 'a in scope, then the OutlivesEnvironment would record that (in its region_bound_pairs field). Similarly, it contains methods for processing and adding implied bounds into the outlives environment.

Type AliasesΒ§

RegionBoundPairs
β€œRegion-bound pairs” tracks outlives relations that are known to be true, either because of explicit where-clauses like T: 'a or because of implied bounds.