Skip to main content

extern_spec_T_Option_T_or_else

Function extern_spec_T_Option_T_or_else 

Source
pub fn extern_spec_T_Option_T_or_else<T, F: FnOnce() -> Option<T>>(
    self_: Option<T>,
    f: F,
) -> Option<T>
Expand description

extern spec for Option<T>::or_else

This is not a real function: its only use is for documentation.

requires

self == None ==> f.precondition(())

ensures

match self {
    None => f.postcondition_once((), result),
    Some(t) => result == Some(t),
}