мапа . Она в целом 1 на все приложение.
В зависимости от пользователя данные могут меняться.
Как вариант конечно передавать везде ее, но как то не удобно что ли..
Может в Rust как то это делают по особенному?
для очень сильных духлм есть статики, но не одобряемо
once_cell
Там огромный выбор всего, есть как и static mut, но он unsafe, так шаурма из Mutex, Arc, Rc, RefCell, OnceCell, LazyCell и т.д. static SERIAL_CONTEXT: Mutex<LazyCell<RefCell<SerialContext>>> = Mutex::new(LazyCell::new(|| { ... })); interrupt::free(|cs| { let mut ctx = SERIAL_CONTEXT.borrow(cs).borrow_mut(); ... }); Вон например, самое адекватное выходит по доступу в no_std, для std может и лучше можно. А вообще оно всё неудобно, лучше без такого если можно обойтись.
Если она compile-time generated то дозволительно было бы использовать статик https://crates.io/crates/phf
Static Arc RwLock
Обсуждают сегодня