added TryRecover extensions
All checks were successful
.NET Test / test (push) Successful in 1m14s

This commit is contained in:
2023-12-18 18:24:15 +04:00
parent 57e83fbafa
commit 3d34a3021d
7 changed files with 176 additions and 25 deletions

View File

@@ -34,18 +34,6 @@ public static partial class Ensure
_ => throw new EnsureNotInitializedException(nameof(ensureTask))
};
}
[Pure] public static Ensure<string> NotWhitespace(this in Ensure<string> ensure, Error error = default!)
{
return ensure.State switch
{
ResultState.Success => string.IsNullOrWhiteSpace(ensure.Value)
? new(error ?? Error.New(DefaultErrorType, $"Value {{{ensure.ValueExpression}}} is empty or consists exclusively of white-space characters."), ensure.ValueExpression)
: new(ensure.Value, ensure.ValueExpression),
ResultState.Error => new(ensure.Error!, ensure.ValueExpression),
_ => throw new EnsureNotInitializedException(nameof(ensure))
};
}
}
public readonly struct Ensure<T>