A simple embedded struct database wrapper based on Sled.
basic usage
let db_name = String::from("test_db");
let account = Account {
username: String::from("johndoe"),
password: String::from("secretpassword"),
age: 30,
};
let db = AvlonDB::new(db_name);
db.save(account.username.clone(), account)?;
println!("Account saved to database!");
if let Some(loaded_account) = db.load::<Account>("johndoe")? {
println!("Account loaded from database: {:?}", loaded_account);
} else {
println!("Account not found in the database.");
}
let updated_account = Account {
username: String::from("joker"),
password: String::from("123654987"),
age: 99,
};
db.update("johndoe", updated_account)?;
if let Some(loaded_account) = db.load::<Account>("johndoe")? {
println!("Updated account loaded from database: {:?}", loaded_account);
} else {
println!("Account not found in the database.");
}
db.remove("johndoe")?;
if let Some(loaded_account) = db.load::<Account>("johndoe")? {
println!("Account loaded from database after removal: {:?}", loaded_account);
} else {
println!("Account successfully removed from the database.");
}