Skip to main content

## pull_region_outlives_constraints_out_of_universe

# Function pull_region_outlives_constraints_out_of_universe

Source

    fn pull_region_outlives_constraints_out_of_universe<Infcx: InferCtxtLike<Interner = I>, I: Interner>(
        infcx: &Infcx,
        constraint: RegionConstraint<I>,
        u: UniverseIndex,
        assumptions: &Option<Assumptions<I>>,
    ) -> RegionConstraint<I>

Expand description

Handles converting region outlives constraints involving placeholders from `u` into OR constraints involving regions from smaller universes with known relationships to the placeholder. For example:

ⓘ

    for<'a, 'b> where(
        'c: 'b, 'd: 'b,
        'a: 'e, 'a: 'f,
    ) {
        'a_u1: 'b_u1
    }

will get converted to:

ⓘ

    OR(
        'e: 'c,
        'e: 'd,
        'f: 'c,
        'f: 'd,
    )

if we are handling constraints in `u1`.