Skip to content

calvinbrown085/simple-cache-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A simple in-mem cache for Rust

Docs Apache-2 licensed CI

A simple rust implementation of HashMap with expiration control.

Example

Without expiration:

use simple_cache_rs::SimpleCache;

let mut scache: SimpleCache<i32, String> = SimpleCache::new(None);

scache.insert(1, String::from("test"));
println!("{:?}", scache.get(&1));

With expiration:

use simple_cache_rs::SimpleCache;
use std::time::Duration;
use std::thread; // For example purposes only

let timeout = Duration::new(1, 0);
let mut scache: SimpleCache<i32, String> = SimpleCache::new(Some(timeout));

scache.insert(1, String::from("test"));
assert_eq!(Some(String::from("test")), scache.get(&1));

thread::sleep(Duration::new(1, 1)); // For example purposes only
assert_ne!(Some(String::from("test")), scache.get(&1));

About

A simple im-mem cache for Rust

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages