1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
use std::sync::Once; static INIT_LIB: Once = Once::new(); // export rules pub mod rules; // export selector pub mod selector; // interface pub mod interface; // export error pub mod error; // utils for crate pub mod utils; // constants pub(crate) mod constants; // export init, must execute `init()` first pub fn init() { INIT_LIB.call_once(|| { rules::init(); }); }