Macro nes::mutex_lock [] [src]

macro_rules! mutex_lock {
    ( $mutex:expr ) => { ... };
    ( $mutex:expr, $error:ident ) => { ... };
    ( $mutex:expr, $error:path ) => { ... };
    ( $mutex:expr, $error:path, $( $arg:expr ),* ) => { ... };
}

This macro helps to lock mutex and returns error if it is poisoned(second thread has locked the Mutex and panicked).

Where are 4 forms:

let guard=mutex_lock(mutex) returns "Error::Poisoned"

let guard=mutex_lock(mutex,ErrorName) returns "ErrorName::Poisoned"

let guard=mutex_lock(mutex,ErrorName::Variant) returns "ErrorName::Variant"

let guard=mutex_lock(mutex,ErrorName::Variant,arg1,arg2,...) returns "ErrorName::Variant(arg1,arg2,...)"