Struct rustc::infer::freshen::TypeFreshener [−][src]
pub struct TypeFreshener<'a, 'gcx: 'a + 'tcx, 'tcx: 'a> { infcx: &'a InferCtxt<'a, 'gcx, 'tcx>, freshen_count: u32, freshen_map: FxHashMap<InferTy, Ty<'tcx>>, }
🔬 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?
Fields
infcx: &'a InferCtxt<'a, 'gcx, 'tcx>
🔬 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?
freshen_count: u32
🔬 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?
freshen_map: FxHashMap<InferTy, Ty<'tcx>>
🔬 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?
Methods
impl<'a, 'gcx, 'tcx> TypeFreshener<'a, 'gcx, 'tcx>
[src]
impl<'a, 'gcx, 'tcx> TypeFreshener<'a, 'gcx, 'tcx>
pub fn new(
infcx: &'a InferCtxt<'a, 'gcx, 'tcx>
) -> TypeFreshener<'a, 'gcx, 'tcx>
[src]
pub fn new(
infcx: &'a InferCtxt<'a, 'gcx, 'tcx>
) -> TypeFreshener<'a, 'gcx, 'tcx>
🔬 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?
fn freshen<F>(
&mut self,
opt_ty: Option<Ty<'tcx>>,
key: InferTy,
freshener: F
) -> Ty<'tcx> where
F: FnOnce(u32) -> InferTy,
[src]
fn freshen<F>(
&mut self,
opt_ty: Option<Ty<'tcx>>,
key: InferTy,
freshener: F
) -> Ty<'tcx> where
F: FnOnce(u32) -> InferTy,
🔬 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?
Trait Implementations
impl<'a, 'gcx, 'tcx> TypeFolder<'gcx, 'tcx> for TypeFreshener<'a, 'gcx, 'tcx>
[src]
impl<'a, 'gcx, 'tcx> TypeFolder<'gcx, 'tcx> for TypeFreshener<'a, 'gcx, 'tcx>
fn tcx<'b>(&'b self) -> TyCtxt<'b, 'gcx, 'tcx>
[src]
fn tcx<'b>(&'b self) -> TyCtxt<'b, 'gcx, 'tcx>
🔬 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?
fn fold_region(&mut self, r: Region<'tcx>) -> Region<'tcx>
[src]
fn fold_region(&mut self, r: Region<'tcx>) -> Region<'tcx>
🔬 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?
fn fold_ty(&mut self, t: Ty<'tcx>) -> Ty<'tcx>
[src]
fn fold_ty(&mut self, t: Ty<'tcx>) -> Ty<'tcx>
🔬 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?
fn fold_binder<T>(&mut self, t: &Binder<T>) -> Binder<T> where
T: TypeFoldable<'tcx>,
[src]
fn fold_binder<T>(&mut self, t: &Binder<T>) -> Binder<T> where
T: TypeFoldable<'tcx>,
🔬 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?
fn fold_const(&mut self, c: &'tcx Const<'tcx>) -> &'tcx Const<'tcx>
[src]
fn fold_const(&mut self, c: &'tcx Const<'tcx>) -> &'tcx Const<'tcx>
🔬 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?
Auto Trait Implementations
impl<'a, 'gcx, 'tcx> !Send for TypeFreshener<'a, 'gcx, 'tcx>
impl<'a, 'gcx, 'tcx> !Send for TypeFreshener<'a, 'gcx, 'tcx>
impl<'a, 'gcx, 'tcx> !Sync for TypeFreshener<'a, 'gcx, 'tcx>
impl<'a, 'gcx, 'tcx> !Sync for TypeFreshener<'a, 'gcx, 'tcx>