Struct log_kv::LogKv
[−]
[src]
pub struct LogKv<K, V, T> { /* fields omitted */ }
Methods
impl<K, V, T> LogKv<K, V, T> where
K: Serialize + Deserialize + Eq + Hash,
V: Serialize + Deserialize,
T: Read + Write + Seek,
[src]
K: Serialize + Deserialize + Eq + Hash,
V: Serialize + Deserialize,
T: Read + Write + Seek,
fn create(cursor: T) -> Result<LogKv<K, V, T>, LogKvError>
fn put<L: Into<K>, W: Into<V>>(
&mut self,
key: L,
value: W
) -> Result<(), LogKvError>
&mut self,
key: L,
value: W
) -> Result<(), LogKvError>
Stores a key-value pair, writing to the given Write.
Examples
use std::io::Cursor; use log_kv::LogKv; let mut cursor = Cursor::new(Vec::new()); let mut db : LogKv<String, String, _> = LogKv::create(cursor).unwrap(); db.put("this is a key", "this is a value").unwrap(); let retrieved = db.get("this is a key").unwrap().expect("No value retrieved"); assert_eq!(retrieved, "this is a value");
fn get<L: Into<K>>(&mut self, key: L) -> Result<Option<V>, LogKvError>
Retrieves a value previously stored in the map.
Examples
use std::io::Cursor; use log_kv::LogKv; let mut cursor = Cursor::new(Vec::new()); let mut db : LogKv<String, String, _> = LogKv::create(cursor).unwrap(); db.put("A", "a").unwrap(); db.put("B", "b").unwrap(); let retrieved = db.get("A").unwrap().expect("No value retrieved"); assert_eq!(retrieved, "a"); let not_found = db.get("C").unwrap(); assert_eq!(not_found.is_some(), false);