pub type LockFn = for<'ptr> unsafe fn(_: PtrConst<'ptr>) -> Result<LockResult<'ptr>, ()>;
Acquires a lock on a mutex-like smart pointer