test_state/
test_state.rs

1use atomic_state::prelude::*;
2
3static CONFIG: Lazy<State<Config>> = lazy_state!(
4    Config {
5        count: 0,
6    }
7);
8
9#[derive(Debug, Clone)]
10pub struct Config {
11    pub count: i32,
12}
13
14fn main() {
15    CONFIG.set(Config { count: 10, });
16    assert_eq!(CONFIG.get().count, 10);
17
18    CONFIG.map(|cfg| cfg.count = 20);
19    assert_eq!(CONFIG.get().count, 20);
20    
21    CONFIG.lock().count = 30;
22    assert_eq!(CONFIG.get().count, 30);
23}