[−][src]Trait rustc_infer::infer::canonical::canonicalizer::CanonicalizeRegionMode
Controls how we canonicalize "free regions" that are not inference variables. This depends on what we are canonicalizing for -- e.g., if we are canonicalizing to create a query, we want to replace those with inference variables, since we want to make a maximally general query. But if we are canonicalizing a query response, then we don't typically replace free regions, as they must have been introduced from other parts of the system.
Required methods
pub(in infer::canonical::canonicalizer) fn canonicalize_free_region<'tcx>(
&self,
canonicalizer: &mut Canonicalizer<'_, 'tcx>,
r: Region<'tcx>
) -> Region<'tcx>[src]
&self,
canonicalizer: &mut Canonicalizer<'_, 'tcx>,
r: Region<'tcx>
) -> Region<'tcx>
pub(in infer::canonical::canonicalizer) fn any(
&self
) -> bool[src]
&self
) -> bool
Implementors
impl CanonicalizeRegionMode for CanonicalizeAllFreeRegions[src]
pub(in infer::canonical::canonicalizer) fn canonicalize_free_region<'tcx>(
&self,
canonicalizer: &mut Canonicalizer<'_, 'tcx>,
r: Region<'tcx>
) -> Region<'tcx>[src]
&self,
canonicalizer: &mut Canonicalizer<'_, 'tcx>,
r: Region<'tcx>
) -> Region<'tcx>
pub(in infer::canonical::canonicalizer) fn any(
&self
) -> bool[src]
&self
) -> bool
impl CanonicalizeRegionMode for CanonicalizeFreeRegionsOtherThanStatic[src]
pub(in infer::canonical::canonicalizer) fn canonicalize_free_region<'tcx>(
&self,
canonicalizer: &mut Canonicalizer<'_, 'tcx>,
r: Region<'tcx>
) -> Region<'tcx>[src]
&self,
canonicalizer: &mut Canonicalizer<'_, 'tcx>,
r: Region<'tcx>
) -> Region<'tcx>
pub(in infer::canonical::canonicalizer) fn any(
&self
) -> bool[src]
&self
) -> bool
impl CanonicalizeRegionMode for CanonicalizeQueryResponse[src]
pub(in infer::canonical::canonicalizer) fn canonicalize_free_region<'tcx>(
&self,
canonicalizer: &mut Canonicalizer<'_, 'tcx>,
r: Region<'tcx>
) -> Region<'tcx>[src]
&self,
canonicalizer: &mut Canonicalizer<'_, 'tcx>,
r: Region<'tcx>
) -> Region<'tcx>
pub(in infer::canonical::canonicalizer) fn any(
&self
) -> bool[src]
&self
) -> bool
impl CanonicalizeRegionMode for CanonicalizeUserTypeAnnotation[src]
pub(in infer::canonical::canonicalizer) fn canonicalize_free_region<'tcx>(
&self,
canonicalizer: &mut Canonicalizer<'_, 'tcx>,
r: Region<'tcx>
) -> Region<'tcx>[src]
&self,
canonicalizer: &mut Canonicalizer<'_, 'tcx>,
r: Region<'tcx>
) -> Region<'tcx>
pub(in infer::canonical::canonicalizer) fn any(
&self
) -> bool[src]
&self
) -> bool