pub struct SimpleCache<K, V> { /* private fields */ }
Implementations§
Source§impl<K: Eq + Hash + Clone + Debug, V: Clone + Debug> SimpleCache<K, V>
impl<K: Eq + Hash + Clone + Debug, V: Clone + Debug> SimpleCache<K, V>
Sourcepub fn new(timeout: Option<Duration>) -> SimpleCache<K, V>
pub fn new(timeout: Option<Duration>) -> SimpleCache<K, V>
Returns a new instance of SimpleCache
use simple_cache_rs::SimpleCache;
let mut cache: SimpleCache<i32, String> = SimpleCache::new(None);
OR
use simple_cache_rs::SimpleCache;
use std::time::Duration;
let timeout = Duration::new(5, 0);
let mut cache: SimpleCache<i32, String> = SimpleCache::new(Some(timeout));
Sourcepub fn get(&mut self, key: &K) -> Option<V>
pub fn get(&mut self, key: &K) -> Option<V>
Get a value optionally from the cache, if the value is expired this method will return None and delete the value lazily from the cache.
use simple_cache_rs::SimpleCache;
let mut cache: SimpleCache<i32, String> = SimpleCache::new(None);
cache.get(&1);
Sourcepub fn keys(&self) -> Vec<K>
pub fn keys(&self) -> Vec<K>
Get all keys that are in the cache
use simple_cache_rs::SimpleCache;
let mut cache: SimpleCache<i32, String> = SimpleCache::new(None);
cache.keys();
Sourcepub fn values(&self) -> Vec<V>
pub fn values(&self) -> Vec<V>
Get all values that are in the cache
use simple_cache_rs::SimpleCache;
let mut cache: SimpleCache<i32, String> = SimpleCache::new(None);
cache.values();
Sourcepub fn tuples(&self) -> Vec<(K, V)>
pub fn tuples(&self) -> Vec<(K, V)>
Get all tuples of keys and values that are in the cache
use simple_cache_rs::SimpleCache;
let mut cache: SimpleCache<i32, String> = SimpleCache::new(None);
cache.tuples();
Sourcepub fn insert_batch(&mut self, items: Vec<(K, V)>)
pub fn insert_batch(&mut self, items: Vec<(K, V)>)
Insert a batch of items into the cache
use simple_cache_rs::SimpleCache;
let mut cache: SimpleCache<i32, String> = SimpleCache::new(None);
let items = vec!((1, String::from("a")), (2, String::from("b")));
cache.insert_batch(items);
Trait Implementations§
Source§impl<K: Clone, V: Clone> Clone for SimpleCache<K, V>
impl<K: Clone, V: Clone> Clone for SimpleCache<K, V>
Source§fn clone(&self) -> SimpleCache<K, V>
fn clone(&self) -> SimpleCache<K, V>
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreAuto Trait Implementations§
impl<K, V> Freeze for SimpleCache<K, V>
impl<K, V> RefUnwindSafe for SimpleCache<K, V>where
K: RefUnwindSafe,
V: RefUnwindSafe,
impl<K, V> Send for SimpleCache<K, V>
impl<K, V> Sync for SimpleCache<K, V>
impl<K, V> Unpin for SimpleCache<K, V>
impl<K, V> UnwindSafe for SimpleCache<K, V>where
K: UnwindSafe,
V: 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