Struct ra_ap_rustc_data_structures::unify::InPlace
source · pub struct InPlace<K, V = Vec<VarValue<K>>, L = VecLog<UndoLog<Delegate<K>>>>{ /* private fields */ }
Expand description
Backing store for an in-place unification table. Not typically used directly.
Trait Implementations§
source§impl<K, V, L> UnificationStore for InPlace<K, V, L>
impl<K, V, L> UnificationStore for InPlace<K, V, L>
type Snapshot = Snapshot<<L as Snapshots<UndoLog<Delegate<K>>>>::Snapshot>
fn start_snapshot(&mut self) -> <InPlace<K, V, L> as UnificationStore>::Snapshot
fn rollback_to( &mut self, snapshot: <InPlace<K, V, L> as UnificationStore>::Snapshot )
fn commit(&mut self, snapshot: <InPlace<K, V, L> as UnificationStore>::Snapshot)
fn values_since_snapshot( &self, snapshot: &<InPlace<K, V, L> as UnificationStore>::Snapshot ) -> Range<usize>
source§impl<K, V, L> UnificationStoreBase for InPlace<K, V, L>
impl<K, V, L> UnificationStoreBase for InPlace<K, V, L>
source§impl<K, V, L> UnificationStoreMut for InPlace<K, V, L>
impl<K, V, L> UnificationStoreMut for InPlace<K, V, L>
fn reset_unifications( &mut self, value: impl FnMut(u32) -> VarValue<<InPlace<K, V, L> as UnificationStoreBase>::Key> )
fn push( &mut self, value: VarValue<<InPlace<K, V, L> as UnificationStoreBase>::Key> )
fn reserve(&mut self, num_new_values: usize)
fn update<F>(&mut self, index: usize, op: F)
Auto Trait Implementations§
impl<K, V, L> RefUnwindSafe for InPlace<K, V, L>
impl<K, V, L> Send for InPlace<K, V, L>
impl<K, V, L> Sync for InPlace<K, V, L>
impl<K, V, L> Unpin for InPlace<K, V, L>
impl<K, V, L> UnwindSafe for InPlace<K, V, L>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more