Struct quick_kv::QuickClient
source · pub struct QuickClient { /* private fields */ }Expand description
The client for the QuickKV database
Examples
use quick_kv::QuickClient;
fn main() {
let mut client = QuickClient::new(None).unwrap();
client.set::<String>("hello", String::from("Hello World!")).unwrap();
let result = client.get::<String>("hello").unwrap();
assert_eq!(result, Some(String::from("Hello World!")));
}Implementations§
source§impl QuickClient
impl QuickClient
sourcepub fn new(path: Option<PathBuf>) -> Result<Self>
pub fn new(path: Option<PathBuf>) -> Result<Self>
Creates a new QuickClient instance
path The path to the database file
Examples
use quick_kv::QuickClient;
fn main() {
let mut client = QuickClient::new(None).unwrap();
}sourcepub fn set<T>(&mut self, key: &str, value: T) -> Result<()>
pub fn set<T>(&mut self, key: &str, value: T) -> Result<()>
Sets a key-value pair in the database
key The key of the key-value pair
value The value of the key-value pair
Examples
use quick_kv::QuickClient;
fn main() {
let mut client = QuickClient::new(None).unwrap();
client.set::<String>("hello", String::from("Hello World!")).unwrap();
}sourcepub fn get<T>(&mut self, key: &str) -> Result<Option<T>>
pub fn get<T>(&mut self, key: &str) -> Result<Option<T>>
Gets a value from the database
key The key of the key-value pair
Examples
use quick_kv::QuickClient;
fn main() {
let mut client = QuickClient::new(None).unwrap();
client.set::<String>("hello", String::from("Hello World!")).unwrap();
let result = client.get::<String>("hello").unwrap();
assert_eq!(result, Some(String::from("Hello World!")));
}sourcepub fn delete<T>(&mut self, key: &str) -> Result<()>
pub fn delete<T>(&mut self, key: &str) -> Result<()>
Deletes a key-value pair from the database
key The key of the key-value pair
Examples
use quick_kv::QuickClient;
fn main() {
let mut client = QuickClient::new(None).unwrap();
client.set::<String>("hello", String::from("Hello World!")).unwrap();
client.delete::<String>("hello").unwrap();
let result = client.get::<String>("hello").unwrap();
assert_eq!(result, None);
}sourcepub fn update<T>(&mut self, key: &str, value: T) -> Result<()>
pub fn update<T>(&mut self, key: &str, value: T) -> Result<()>
Updates a key-value pair in the database
key The key of the key-value pair
value The new value of the key-value pair
If no key is found, an error is returned and the database is not updated.
Examples
use quick_kv::QuickClient;
fn main() {
let mut client = QuickClient::new(None).unwrap();
client.set::<String>("hello", String::from("Hello")).unwrap();
client.update::<String>("hello", String::from("Hello World!")).unwrap(); ///
let result = client.get::<String>("hello").unwrap();
assert_eq!(result, Some(String::from("Hello World!")));
}Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for QuickClient
impl Send for QuickClient
impl Sync for QuickClient
impl Unpin for QuickClient
impl UnwindSafe for QuickClient
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