Struct rustc_trans::middle::free_region::FreeRegionMapUnstable [-] [+] [src]

pub struct FreeRegionMap {
    // some fields omitted
}

Methods

impl FreeRegionMap

fn new() -> FreeRegionMap

fn relate_free_regions_from_implications(&mut self, tcx: &ctxt<'tcx>, implications: &[Implication<'tcx>])

fn relate_free_regions_from_predicates(&mut self, tcx: &ctxt<'tcx>, predicates: &[Predicate<'tcx>])

fn relate_free_regions(&mut self, sub: FreeRegion, sup: FreeRegion)

fn sub_free_region(&self, sub: FreeRegion, sup: FreeRegion) -> bool

Determines whether two free regions have a subregion relationship by walking the graph encoded in map. Note that it is possible that sub != sup and sub <= sup and sup <= sub (that is, the user can give two different names to the same lifetime).

fn is_subregion_of(&self, tcx: &ctxt, sub_region: Region, super_region: Region) -> bool

Determines whether one region is a subregion of another. This is intended to run after inference and sadly the logic is somewhat duplicated with the code in infer.rs.

Trait Implementations

Derived Implementations

impl Clone for FreeRegionMap

fn clone(&self) -> FreeRegionMap

fn clone_from(&mut self, source: &Self)