static Res ValidateUser(User user) { /*returns Ok if valid; Err o/w*/ }
static Res<Secret> TryGetSecrets(User user) { /*returns Ok(secrets) if succeds; Err if fails to get secrets*/ }
User user = GetUser(..);
var secrets = ValidateUser(user).TryMap(() => TryGetSecrets(user));
// TryGetSecrets will be called only if ValidateUser call returns Ok;
// secrets will be Ok of the grabbed secrets if both ValidateUser and TryGetSecrets return Ok.
public Task<Res<TOut>> TryMapAsync<TOut>(
Func<Task<TOut>> map,
string name = ""
)
[Missing <typeparam name="TOut"/> documentation for "M:Orx.Fun.Result.Res.TryMapAsync``1(System.Func{System.Threading.Tasks.Task{``0}},System.String)"]