Struct diem_sdk::crypto::_once_cell::race::OnceBool [−]
pub struct OnceBool { /* fields omitted */ }Expand description
A thread-safe cell which can be written to only once.
Implementations
impl OnceBool
impl OnceBool
Sets the contents of this cell to value.
Returns Ok(()) if the cell was empty and Err(()) if it was
full.
pub fn get_or_init<F>(&self, f: F) -> bool where
F: FnOnce() -> bool,
pub fn get_or_init<F>(&self, f: F) -> bool where
F: FnOnce() -> bool,
Gets the contents of the cell, initializing it with f if the cell was
empty.
If several threads concurrently run get_or_init, more than one f can
be called. However, all threads will return the same value, produced by
some f.
Gets the contents of the cell, initializing it with f if
the cell was empty. If the cell was empty and f failed, an
error is returned.
If several threads concurrently run get_or_init, more than one f can
be called. However, all threads will return the same value, produced by
some f.