Module rustc_typeck::outlives::implicit_infer[][src]

🔬 This is a nightly-only experimental API. (rustc_private)

this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?

Re-exports

use rustc::hir;
use rustc::hir::def::CtorKind;
use rustc::hir::def::Def;
use rustc::hir::def_id;
use rustc::hir::def_id::CrateNum;
use rustc::hir::def_id::DefId;
use rustc::hir::def_id::LOCAL_CRATE;
use rustc::hir::itemlikevisit::ItemLikeVisitor;
use rustc::hir::map as hir_map;
use rustc::ty::Slice;
use rustc::ty::maps::Providers;
use rustc::ty::outlives::Component;
use rustc::ty::subst::Kind;
use rustc::ty::subst::Subst;
use rustc::ty::subst::UnpackedKind;
use rustc::ty;
use rustc::ty::AdtKind;
use rustc::ty::CratePredicatesMap;
use rustc::ty::Region;
use rustc::ty::RegionKind;
use rustc::ty::ReprOptions;
use rustc::ty::ToPolyTraitRef;
use rustc::ty::ToPredicate;
use rustc::ty::Ty;
use rustc::ty::TyCtxt;
use rustc::util::nodemap::FxHashMap;
use rustc::util::nodemap::FxHashSet;
use rustc_data_structures::sync::Lrc;
use rustc_target::spec::abi;
use syntax::ast;
use syntax_pos::Span;
use syntax_pos::DUMMY_SP;

Structs

InferVisitor [
Experimental
]

Functions

check_explicit_predicates [
Experimental
]

We also have to check the explicit predicates declared on the type.

infer_predicates [
Experimental
]

Infer predicates for the items in the crate.

insert_outlives_predicate [
Experimental
]

Given a requirement T: 'a or 'b: 'a, deduce the outlives_component and add it to required_predicates

insert_required_predicates_to_be_wf [
Experimental
]
is_free_region [
Experimental
]

Type Definitions

RequiredPredicates [
Experimental
]

Tracks the T: 'a or 'a: 'a predicates that we have inferred must be added to the struct header.