MaybeAsyncExtensions
Namespace: Bogoware.Monads
public static class MaybeAsyncExtensions
Inheritance Object → MaybeAsyncExtensions
Attributes NullableContextAttribute, NullableAttribute, ExtensionAttribute
Methods
Map<TValue, TNewValue>(Task<Maybe<TValue>>, Func<TNewValue>)
public static Task<Maybe<TNewValue>> Map<TValue, TNewValue>(Task<Maybe<TValue>> maybeTask, Func<TNewValue> map)
Type Parameters
TValue
TNewValue
Parameters
maybeTask Task<Maybe<TValue>>
map Func<TNewValue>
Returns
Task<Maybe<TNewValue>>
Map<TValue, TNewValue>(Task<Maybe<TValue>>, Func<TValue, TNewValue>)
public static Task<Maybe<TNewValue>> Map<TValue, TNewValue>(Task<Maybe<TValue>> maybeTask, Func<TValue, TNewValue> map)
Type Parameters
TValue
TNewValue
Parameters
maybeTask Task<Maybe<TValue>>
map Func<TValue, TNewValue>
Returns
Task<Maybe<TNewValue>>
Map<TValue, TNewValue>(Task<Maybe<TValue>>, Func<Task<TNewValue>>)
public static Task<Maybe<TNewValue>> Map<TValue, TNewValue>(Task<Maybe<TValue>> maybeTask, Func<Task<TNewValue>> map)
Type Parameters
TValue
TNewValue
Parameters
maybeTask Task<Maybe<TValue>>
map Func<Task<TNewValue>>
Returns
Task<Maybe<TNewValue>>
Map<TValue, TNewValue>(Task<Maybe<TValue>>, Func<TValue, Task<TNewValue>>)
public static Task<Maybe<TNewValue>> Map<TValue, TNewValue>(Task<Maybe<TValue>> maybeTask, Func<TValue, Task<TNewValue>> map)
Type Parameters
TValue
TNewValue
Parameters
maybeTask Task<Maybe<TValue>>
map Func<TValue, Task<TNewValue>>
Returns
Task<Maybe<TNewValue>>
WithDefault<TValue>(Task<Maybe<TValue>>, TValue)
public static Task<Maybe<TValue>> WithDefault<TValue>(Task<Maybe<TValue>> maybeTask, TValue value)
Type Parameters
TValue
Parameters
maybeTask Task<Maybe<TValue>>
value TValue
Returns
Task<Maybe<TValue>>
WithDefault<TValue>(Task<Maybe<TValue>>, Func<TValue>)
public static Task<Maybe<TValue>> WithDefault<TValue>(Task<Maybe<TValue>> maybeTask, Func<TValue> value)
Type Parameters
TValue
Parameters
maybeTask Task<Maybe<TValue>>
value Func<TValue>
Returns
Task<Maybe<TValue>>
WithDefault<TValue>(Task<Maybe<TValue>>, Func<Task<TValue>>)
public static Task<Maybe<TValue>> WithDefault<TValue>(Task<Maybe<TValue>> maybeTask, Func<Task<TValue>> value)
Type Parameters
TValue
Parameters
maybeTask Task<Maybe<TValue>>
value Func<Task<TValue>>
Returns
Task<Maybe<TValue>>
Bind<TValue, TNewValue>(Task<Maybe<TValue>>, Func<Maybe<TNewValue>>)
public static Task<Maybe<TNewValue>> Bind<TValue, TNewValue>(Task<Maybe<TValue>> maybeTask, Func<Maybe<TNewValue>> map)
Type Parameters
TValue
TNewValue
Parameters
maybeTask Task<Maybe<TValue>>
map Func<Maybe<TNewValue>>
Returns
Task<Maybe<TNewValue>>
Bind<TValue, TNewValue>(Task<Maybe<TValue>>, Func<TValue, Maybe<TNewValue>>)
public static Task<Maybe<TNewValue>> Bind<TValue, TNewValue>(Task<Maybe<TValue>> maybeTask, Func<TValue, Maybe<TNewValue>> map)
Type Parameters
TValue
TNewValue
Parameters
maybeTask Task<Maybe<TValue>>
map Func<TValue, Maybe<TNewValue>>
Returns
Task<Maybe<TNewValue>>
Bind<TValue, TNewValue>(Task<Maybe<TValue>>, Func<Task<Maybe<TNewValue>>>)
public static Task<Maybe<TNewValue>> Bind<TValue, TNewValue>(Task<Maybe<TValue>> maybeTask, Func<Task<Maybe<TNewValue>>> map)
Type Parameters
TValue
TNewValue
Parameters
maybeTask Task<Maybe<TValue>>
map Func<Task<Maybe<TNewValue>>>
Returns
Task<Maybe<TNewValue>>
Bind<TValue, TNewValue>(Task<Maybe<TValue>>, Func<TValue, Task<Maybe<TNewValue>>>)
public static Task<Maybe<TNewValue>> Bind<TValue, TNewValue>(Task<Maybe<TValue>> maybeTask, Func<TValue, Task<Maybe<TNewValue>>> map)
Type Parameters
TValue
TNewValue
Parameters
maybeTask Task<Maybe<TValue>>
map Func<TValue, Task<Maybe<TNewValue>>>
Returns
Task<Maybe<TNewValue>>
Match<TValue, TResult>(Task<Maybe<TValue>>, TResult, TResult)
public static Task<TResult> Match<TValue, TResult>(Task<Maybe<TValue>> maybeTask, TResult newValue, TResult none)
Type Parameters
TValue
TResult
Parameters
maybeTask Task<Maybe<TValue>>
newValue TResult
none TResult
Returns
Task<TResult>
Match<TValue, TResult>(Task<Maybe<TValue>>, Func<TValue, TResult>, TResult)
public static Task<TResult> Match<TValue, TResult>(Task<Maybe<TValue>> maybeTask, Func<TValue, TResult> value, TResult none)
Type Parameters
TValue
TResult
Parameters
maybeTask Task<Maybe<TValue>>
value Func<TValue, TResult>
none TResult
Returns
Task<TResult>
Match<TValue, TResult>(Task<Maybe<TValue>>, Func<TValue, TResult>, Func<TResult>)
public static Task<TResult> Match<TValue, TResult>(Task<Maybe<TValue>> maybeTask, Func<TValue, TResult> value, Func<TResult> none)
Type Parameters
TValue
TResult
Parameters
maybeTask Task<Maybe<TValue>>
value Func<TValue, TResult>
none Func<TResult>
Returns
Task<TResult>
Match<TValue, TResult>(Task<Maybe<TValue>>, Func<TValue, Task<TResult>>, Func<TResult>)
public static Task<TResult> Match<TValue, TResult>(Task<Maybe<TValue>> maybeTask, Func<TValue, Task<TResult>> value, Func<TResult> none)
Type Parameters
TValue
TResult
Parameters
maybeTask Task<Maybe<TValue>>
value Func<TValue, Task<TResult>>
none Func<TResult>
Returns
Task<TResult>
Match<TValue, TResult>(Task<Maybe<TValue>>, Func<TValue, TResult>, Func<Task<TResult>>)
public static Task<TResult> Match<TValue, TResult>(Task<Maybe<TValue>> maybeTask, Func<TValue, TResult> value, Func<Task<TResult>> none)
Type Parameters
TValue
TResult
Parameters
maybeTask Task<Maybe<TValue>>
value Func<TValue, TResult>
none Func<Task<TResult>>
Returns
Task<TResult>
Match<TValue, TResult>(Task<Maybe<TValue>>, Func<TValue, Task<TResult>>, TResult)
public static Task<TResult> Match<TValue, TResult>(Task<Maybe<TValue>> maybeTask, Func<TValue, Task<TResult>> mapValue, TResult none)
Type Parameters
TValue
TResult
Parameters
maybeTask Task<Maybe<TValue>>
mapValue Func<TValue, Task<TResult>>
none TResult
Returns
Task<TResult>
Match<TValue, TResult>(Task<Maybe<TValue>>, Func<TValue, Task<TResult>>, Func<Task<TResult>>)
public static Task<TResult> Match<TValue, TResult>(Task<Maybe<TValue>> maybeTask, Func<TValue, Task<TResult>> value, Func<Task<TResult>> none)
Type Parameters
TValue
TResult
Parameters
maybeTask Task<Maybe<TValue>>
value Func<TValue, Task<TResult>>
none Func<Task<TResult>>
Returns
Task<TResult>
IfSome<TValue>(Task<Maybe<TValue>>, Action)
public static Task<Maybe<TValue>> IfSome<TValue>(Task<Maybe<TValue>> maybeTask, Action action)
Type Parameters
TValue
Parameters
maybeTask Task<Maybe<TValue>>
action Action
Returns
Task<Maybe<TValue>>
IfSome<TValue>(Task<Maybe<TValue>>, Action<TValue>)
public static Task<Maybe<TValue>> IfSome<TValue>(Task<Maybe<TValue>> maybeTask, Action<TValue> action)
Type Parameters
TValue
Parameters
maybeTask Task<Maybe<TValue>>
action Action<TValue>
Returns
Task<Maybe<TValue>>
IfSome<TValue>(Task<Maybe<TValue>>, Func<Task>)
public static Task<Maybe<TValue>> IfSome<TValue>(Task<Maybe<TValue>> maybeTask, Func<Task> action)
Type Parameters
TValue
Parameters
maybeTask Task<Maybe<TValue>>
action Func<Task>
Returns
Task<Maybe<TValue>>
IfSome<TValue>(Task<Maybe<TValue>>, Func<TValue, Task>)
public static Task<Maybe<TValue>> IfSome<TValue>(Task<Maybe<TValue>> maybeTask, Func<TValue, Task> action)
Type Parameters
TValue
Parameters
maybeTask Task<Maybe<TValue>>
action Func<TValue, Task>
Returns
Task<Maybe<TValue>>
IfNone<TValue>(Task<Maybe<TValue>>, Action)
public static Task<Maybe<TValue>> IfNone<TValue>(Task<Maybe<TValue>> maybeTask, Action action)
Type Parameters
TValue
Parameters
maybeTask Task<Maybe<TValue>>
action Action
Returns
Task<Maybe<TValue>>
IfNone<TValue>(Task<Maybe<TValue>>, Func<Task>)
public static Task<Maybe<TValue>> IfNone<TValue>(Task<Maybe<TValue>> maybeTask, Func<Task> action)
Type Parameters
TValue
Parameters
maybeTask Task<Maybe<TValue>>
action Func<Task>
Returns
Task<Maybe<TValue>>
Execute<TValue>(Task<Maybe<TValue>>, Action<Maybe<TValue>>)
public static Task<Maybe<TValue>> Execute<TValue>(Task<Maybe<TValue>> maybeTask, Action<Maybe<TValue>> action)
Type Parameters
TValue
Parameters
maybeTask Task<Maybe<TValue>>
action Action<Maybe<TValue>>
Returns
Task<Maybe<TValue>>
Execute<TValue>(Task<Maybe<TValue>>, Func<Maybe<TValue>, Task>)
public static Task<Maybe<TValue>> Execute<TValue>(Task<Maybe<TValue>> maybeTask, Func<Maybe<TValue>, Task> action)
Type Parameters
TValue
Parameters
maybeTask Task<Maybe<TValue>>
action Func<Maybe<TValue>, Task>
Returns
Task<Maybe<TValue>>
Satisfy<TValue>(Task<Maybe<TValue>>, Func<TValue, Boolean>)
Evaluate the predicate applied to the value if present.
Return false in case of None.
public static Task<bool> Satisfy<TValue>(Task<Maybe<TValue>> maybe, Func<TValue, bool> predicate)
Type Parameters
TValue
Parameters
maybe Task<Maybe<TValue>>
predicate Func<TValue, Boolean>
Returns
Satisfy<TValue>(Task<Maybe<TValue>>, Func<TValue, Task<Boolean>>)
public static Task<bool> Satisfy<TValue>(Task<Maybe<TValue>> maybe, Func<TValue, Task<bool>> predicate)
Type Parameters
TValue
Parameters
maybe Task<Maybe<TValue>>
predicate Func<TValue, Task<Boolean>>
Returns
MapToResult<TValue>(Task<Maybe<TValue>>)
public static Task<Result<TValue>> MapToResult<TValue>(Task<Maybe<TValue>> maybeTask)
Type Parameters
TValue
Parameters
maybeTask Task<Maybe<TValue>>
Returns
Task<Result<TValue>>
MapToResult<TValue>(Task<Maybe<TValue>>, Func<Error>)
public static Task<Result<TValue>> MapToResult<TValue>(Task<Maybe<TValue>> maybeTask, Func<Error> errorFunc)
Type Parameters
TValue
Parameters
maybeTask Task<Maybe<TValue>>
errorFunc Func<Error>
Returns
Task<Result<TValue>>
MapToResult<TValue>(Task<Maybe<TValue>>, Func<Task<Error>>)
public static Task<Result<TValue>> MapToResult<TValue>(Task<Maybe<TValue>> maybeTask, Func<Task<Error>> errorFunc)
Type Parameters
TValue
Parameters
maybeTask Task<Maybe<TValue>>
errorFunc Func<Task<Error>>
Returns
Task<Result<TValue>>