Struct widgetry::tools::Cached [−][src]
Store a cached key/value pair, only recalculating when the key changes.
Fields
contents: Option<(K, V)>
Implementations
impl<K: PartialEq + Clone, V> Cached<K, V>
[src]
impl<K: PartialEq + Clone, V> Cached<K, V>
[src]pub fn new() -> Cached<K, V>
[src]
pub fn key(&self) -> Option<K>
[src]
Get the current key.
pub fn value(&self) -> Option<&V>
[src]
Get the current value.
pub fn update<F: FnMut(K) -> V>(&mut self, key: Option<K>, produce_value: F)
[src]
Update the value if the key has changed.
pub fn clear(&mut self)
[src]
Trait Implementations
Auto Trait Implementations
impl<K, V> RefUnwindSafe for Cached<K, V> where
K: RefUnwindSafe,
V: RefUnwindSafe,
K: RefUnwindSafe,
V: RefUnwindSafe,
impl<K, V> Send for Cached<K, V> where
K: Send,
V: Send,
K: Send,
V: Send,
impl<K, V> Sync for Cached<K, V> where
K: Sync,
V: Sync,
K: Sync,
V: Sync,
impl<K, V> Unpin for Cached<K, V> where
K: Unpin,
V: Unpin,
K: Unpin,
V: Unpin,
impl<K, V> UnwindSafe for Cached<K, V> where
K: UnwindSafe,
V: UnwindSafe,
K: UnwindSafe,
V: UnwindSafe,