boxddd 0.1.0

Safe, ergonomic Rust bindings for Box3D
Documentation
1
2
3
4
5
6
7
8
9
10
use std::sync::{Mutex, MutexGuard, OnceLock};

static BOX3D_GLOBAL_LOCK: OnceLock<Mutex<()>> = OnceLock::new();

pub(crate) fn lock<'a>() -> MutexGuard<'a, ()> {
    BOX3D_GLOBAL_LOCK
        .get_or_init(|| Mutex::new(()))
        .lock()
        .expect("Box3D global lock poisoned")
}