Struct lazycell::AtomicLazyCell[][src]

pub struct AtomicLazyCell<T> { /* fields omitted */ }

A lazily filled and thread-safe Cell, with frozen contents.

Methods

impl<T> AtomicLazyCell<T>
[src]

NONE: Self = Self{inner: <UnsafeCell>::new(None), state: <AtomicUsize>::new(NONE),}

An empty AtomicLazyCell.

Creates a new, empty, AtomicLazyCell.

Put a value into this cell.

This function will return Err(value) is the cell is already full.

Test whether this cell has been previously filled.

Borrows the contents of this lazy cell for the duration of the cell itself.

This function will return Some if the cell has been previously initialized, and None if it has not yet been initialized.

Consumes this LazyCell, returning the underlying value.

impl<T: Copy> AtomicLazyCell<T>
[src]

Returns a copy of the contents of the lazy cell.

This function will return Some if the cell has been previously initialized, and None if it has not yet been initialized.

Trait Implementations

impl<T: Debug> Debug for AtomicLazyCell<T>
[src]

Formats the value using the given formatter. Read more

impl<T: Default> Default for AtomicLazyCell<T>
[src]

Returns the "default value" for a type. Read more

impl<T: Sync + Send> Sync for AtomicLazyCell<T>
[src]

impl<T: Send> Send for AtomicLazyCell<T>
[src]