Struct promiser::promise::Promise [] [src]

pub struct Promise<T: Send + 'static> {
    pub data: Arc<UnsafeCell<Option<T>>>,
    pub init: Latch,
    pub commit: Latch,
}

Fields

Methods

impl<T: Send + 'static> Promise<T>
[src]

should be called only from promiser/promisee-- public for now tho

Trait Implementations

impl<T: Clone + Send + 'static> Clone for Promise<T>
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

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

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

impl<T: Send + 'static> Drop for Promise<T>
[src]

Special Drop for Promise we don't want to hang readers on a local panic

A method called when the value goes out of scope. Read more