[−]Trait rustc_data_structures::unify::UnificationStore
🔬 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?
Largely internal trait implemented by the unification table
backing store types. The most common such type is InPlace
,
which indicates a standard, mutable unification table.
Associated Types
type Key: UnifyKey
🔬 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?
type Value: UnifyValue
🔬 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?
type Snapshot
🔬 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?
Required Methods
fn new() -> Self
🔬 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 start_snapshot(&mut self) -> Self::Snapshot
🔬 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 rollback_to(&mut self, snapshot: Self::Snapshot)
🔬 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 commit(&mut self, snapshot: Self::Snapshot)
🔬 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 reset_unifications<impl FnMut(u32) -> VarValue>(
&mut self,
value: impl FnMut(u32) -> VarValue
) where
impl FnMut(u32) -> VarValue: FnMut(u32) -> VarValue<Self::Key>,
&mut self,
value: impl FnMut(u32) -> VarValue
) where
impl FnMut(u32) -> VarValue
🔬 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 len(&self) -> usize
🔬 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 push(&mut self, value: VarValue<Self::Key>)
🔬 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 reserve(&mut self, num_new_values: usize)
🔬 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 update<F>(&mut self, index: usize, op: F) where
F: FnOnce(&mut VarValue<Self::Key>),
F: FnOnce(&mut VarValue<Self::Key>),
🔬 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?
Provided Methods
fn tag() -> &'static str
🔬 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?
Implementors
impl<K> UnificationStore for InPlace<K> where
K: UnifyKey,
impl<K> UnificationStore for InPlace<K> where
K: UnifyKey,
type Key = K
🔬 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?
type Value = <K as UnifyKey>::Value
🔬 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?
type Snapshot = Snapshot
🔬 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 new() -> InPlace<K>
fn new() -> InPlace<K>
🔬 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 start_snapshot(&mut self) -> <InPlace<K> as UnificationStore>::Snapshot
fn start_snapshot(&mut self) -> <InPlace<K> as UnificationStore>::Snapshot
🔬 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 rollback_to(&mut self, snapshot: <InPlace<K> as UnificationStore>::Snapshot)
fn rollback_to(&mut self, snapshot: <InPlace<K> as UnificationStore>::Snapshot)
🔬 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 commit(&mut self, snapshot: <InPlace<K> as UnificationStore>::Snapshot)
fn commit(&mut self, snapshot: <InPlace<K> as UnificationStore>::Snapshot)
🔬 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 reset_unifications<impl FnMut(u32) -> VarValue>(
&mut self,
value: impl FnMut(u32) -> VarValue
) where
impl FnMut(u32) -> VarValue: FnMut(u32) -> VarValue<<InPlace<K> as UnificationStore>::Key>,
fn reset_unifications<impl FnMut(u32) -> VarValue>(
&mut self,
value: impl FnMut(u32) -> VarValue
) where
impl FnMut(u32) -> VarValue: FnMut(u32) -> VarValue<<InPlace<K> as UnificationStore>::Key>,
🔬 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 len(&self) -> usize
fn len(&self) -> usize
🔬 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 push(&mut self, value: VarValue<<InPlace<K> as UnificationStore>::Key>)
fn push(&mut self, value: VarValue<<InPlace<K> as UnificationStore>::Key>)
🔬 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 reserve(&mut self, num_new_values: usize)
fn reserve(&mut self, num_new_values: usize)
🔬 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 update<F>(&mut self, index: usize, op: F) where
F: FnOnce(&mut VarValue<<InPlace<K> as UnificationStore>::Key>),
fn update<F>(&mut self, index: usize, op: F) where
F: FnOnce(&mut VarValue<<InPlace<K> as UnificationStore>::Key>),
🔬 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 tag() -> &'static str
fn tag() -> &'static str
🔬 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?