/// Gets and clears the next pending `DeferredCall`
Gets and clears the next pending `DeferredCall`
Gets and clears the next pending ` DeferredCall `
pub fn next_pending() -> Option<T> {
        let val = DEFERRED_CALL.load(Ordering::Relaxed);
        if val == 0 {
            None
        } else {
            let bit = val.trailing_zeros() as usize;
            let new_val = val & !(1 << bit);
            DEFERRED_CALL.store(new_val, Ordering::Relaxed);
            bit.try_into().ok()
        }
    }
pub fn next_pending ( ) -> Option < T > { let val = DEFERRED_CALL . load ( Ordering :: Relaxed ) ; if val == 0 { None } else { let bit = val . trailing_zeros ( ) as usize ; let new_val = val & ! ( 1 << bit ) ; DEFERRED_CALL . store ( new_val , Ordering :: Relaxed ) ; bit . try_into ( ) . ok ( ) } }
Gets and clears the next pending `DeferredCall`
Gets and clears the next pending ` DeferredCall `