1use rusty_store::{Storage, StoreHandle, Storing};
2use serde::{Deserialize, Serialize};
3
4#[derive(Serialize, Deserialize, Default, Storing)]
5pub struct MyStore {
6 pub count: u32,
7}
8
9impl MyStore {
10 fn increment_count(&mut self) {
11 self.count += 1;
12 }
13}
14
15fn main() {
16 let storage = Storage::new("com.github.mazynoah.storage");
18
19 let mut handle = StoreHandle::<MyStore>::new("handle");
21
22 storage
24 .read(&mut handle)
25 .expect("Failed to read from storage");
26
27 let counter = handle.get_store_mut();
29
30 counter.increment_count();
31 counter.increment_count();
32 counter.increment_count();
33
34 storage
36 .write(&mut handle)
37 .expect("Failed to write to storage");
38
39 let counter = handle.get_store();
40
41 println!("Count: {}", counter.count);
42}