public IMaybe <TResult> Bind <TResult>(Func <T, IMaybe <TResult> > function) { Checker.Null <ArgumentNullException>(function); return(function.Invoke(value)); }
public T ValueOr(Func <T> function) { Checker.Null <ArgumentNullException>(function); return(value); }
public void IfHasValue(Action <T> action) { Checker.Null <ArgumentNullException>(action); action.Invoke(value); }