[][src]Struct rustc_ap_rustc_data_structures::snapshot_map::SnapshotMap

pub struct SnapshotMap<K, V, M = FxHashMap<K, V>, L = VecLog<UndoLog<K, V>>> { /* fields omitted */ }

Implementations

impl<K, V, M, L> SnapshotMap<K, V, M, L>[src]

pub fn with_log<L2>(&mut self, undo_log: L2) -> SnapshotMap<K, V, &mut M, L2>[src]

impl<K, V, M, L> SnapshotMap<K, V, M, L> where
    K: Hash + Clone + Eq,
    M: BorrowMut<FxHashMap<K, V>> + Borrow<FxHashMap<K, V>>,
    L: UndoLogs<UndoLog<K, V>>, 
[src]

pub fn clear(&mut self)[src]

pub fn insert(&mut self, key: K, value: V) -> bool[src]

pub fn remove(&mut self, key: K) -> bool[src]

pub fn get(&self, key: &K) -> Option<&V>[src]

impl<K, V> SnapshotMap<K, V> where
    K: Hash + Clone + Eq
[src]

pub fn snapshot(&mut self) -> Snapshot[src]

pub fn commit(&mut self, snapshot: Snapshot)[src]

pub fn rollback_to(&mut self, snapshot: Snapshot)[src]

Trait Implementations

impl<K, V, M, L> Default for SnapshotMap<K, V, M, L> where
    M: Default,
    L: Default
[src]

impl<'k, K, V, M, L> Index<&'k K> for SnapshotMap<K, V, M, L> where
    K: Hash + Clone + Eq,
    M: Borrow<FxHashMap<K, V>>, 
[src]

type Output = V

The returned type after indexing.

impl<K, V, M, L> Rollback<UndoLog<K, V>> for SnapshotMap<K, V, M, L> where
    K: Eq + Hash,
    M: Rollback<UndoLog<K, V>>, 
[src]

Auto Trait Implementations

impl<K, V, M, L> RefUnwindSafe for SnapshotMap<K, V, M, L> where
    K: RefUnwindSafe,
    L: RefUnwindSafe,
    M: RefUnwindSafe,
    V: RefUnwindSafe

impl<K, V, M, L> Send for SnapshotMap<K, V, M, L> where
    K: Send,
    L: Send,
    M: Send,
    V: Send

impl<K, V, M, L> Sync for SnapshotMap<K, V, M, L> where
    K: Sync,
    L: Sync,
    M: Sync,
    V: Sync

impl<K, V, M, L> Unpin for SnapshotMap<K, V, M, L> where
    K: Unpin,
    L: Unpin,
    M: Unpin,
    V: Unpin

impl<K, V, M, L> UnwindSafe for SnapshotMap<K, V, M, L> where
    K: UnwindSafe,
    L: UnwindSafe,
    M: UnwindSafe,
    V: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<'a, T> Captures<'a> for T where
    T: ?Sized
[src]

impl<T> Erased for T[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<E> SpecializationError for E[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.