pub struct WriteOnceTable<T>(/* private fields */);
Expand description
A table which does not allow values to be overwritten. Useful for your languages constants, etc.
use stack_vm::{WriteOnceTable, Table};
let mut table: WriteOnceTable<usize> = WriteOnceTable::new();
assert!(table.is_empty());
table.insert("example", 13);
assert!(!table.is_empty());
assert!(table.contains_key("example"));
let value = *table.get("example").unwrap();
assert_eq!(value, 13);
ⓘ
use stack_vm::{WriteOnceTable, Table};
let mut table: WriteOnceTable<usize> = WriteOnceTable::new();
table.insert("example", 13);
table.insert("example", 14);
Implementations§
Source§impl<T> WriteOnceTable<T>
impl<T> WriteOnceTable<T>
Trait Implementations§
Source§impl<T: Debug> Debug for WriteOnceTable<T>
impl<T: Debug> Debug for WriteOnceTable<T>
Source§impl<T: Default> Default for WriteOnceTable<T>
impl<T: Default> Default for WriteOnceTable<T>
Source§fn default() -> WriteOnceTable<T>
fn default() -> WriteOnceTable<T>
Returns the “default value” for a type. Read more
Source§impl<T> Table for WriteOnceTable<T>
impl<T> Table for WriteOnceTable<T>
Source§fn contains_key(&self, name: &str) -> bool
fn contains_key(&self, name: &str) -> bool
Does the table contain the key or not?
Auto Trait Implementations§
impl<T> Freeze for WriteOnceTable<T>
impl<T> RefUnwindSafe for WriteOnceTable<T>where
T: RefUnwindSafe,
impl<T> Send for WriteOnceTable<T>where
T: Send,
impl<T> Sync for WriteOnceTable<T>where
T: Sync,
impl<T> Unpin for WriteOnceTable<T>where
T: Unpin,
impl<T> UnwindSafe for WriteOnceTable<T>where
T: UnwindSafe,
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