Tolitech.Results.Guards is a utility library that provides fluent and expressive guard clauses for result-oriented programming.
$ dotnet add package Tolitech.Results.GuardsTolitech.Results.Guards provides fluent guard clauses for parameter and state validation, integrating with the Results pattern for standardized error handling.
result.Guard(name)
.ErrorIfNullOrEmpty()
.ErrorIfLengthGreaterThan(50);
result.Guard(age)
.ErrorIfLessThan(18);
result.Guard(approved)
.ErrorIfFalse();
result.Guard(id)
.ErrorIfNotEqualTo(Guid.Empty);
result.Guard(list)
.ErrorIfEmpty()
.ErrorIfCountGreaterThan(100);
result.Guard(birthDate)
.ErrorIfFuture();
result.Guard(value)
.ErrorIfNull()
.ErrorIfEqualTo(expectedValue);
ErrorIfNull, ErrorIfNullOrEmpty, ErrorIfNullOrWhiteSpace, ErrorIfNotNull, ErrorIfNotNullOrNotEmpty, ErrorIfEqualTo, ErrorIfNotEqualTo, ErrorIfLengthEqualTo, ErrorIfLengthNotEqualTo, ErrorIfLengthGreaterThan, ErrorIfLengthGreaterThanOrEqualTo, ErrorIfLengthLessThan, ErrorIfLengthLessThanOrEqualTo, ErrorIfNotValidEmail, ErrorIfContains, ErrorIfNotContains.ErrorIfNull, ErrorIfNotNull, ErrorIfTrue, ErrorIfFalse, ErrorIfFalseOrNull, ErrorIfTrueOrNull, ErrorIfEqualTo, ErrorIfNotEqualTo.ErrorIfNull, ErrorIfNotNull, ErrorIfEqualTo, , , .ErrorIfNotEqualToErrorIfNullOrEmptyErrorIfNotNullOrNotEmptyErrorIfNull, ErrorIfNotNull, ErrorIfEmpty, ErrorIfNotEmpty, ErrorIfCountEqualTo, ErrorIfCountNotEqualTo, ErrorIfCountGreaterThan, ErrorIfCountGreaterThanOrEqualTo, ErrorIfCountLessThan, ErrorIfCountLessThanOrEqualTo.ErrorIfFuture, ErrorIfFutureUtc, ErrorIfNotFuture, ErrorIfNotFutureUtc, ErrorIfPast, ErrorIfPastUtc, ErrorIfNotPast, ErrorIfNotPastUtc.ErrorIfNull, ErrorIfNotNull, ErrorIfEqualTo, ErrorIfNotEqualTo, ErrorIfLessThan, ErrorIfLessThanOrEqualTo, ErrorIfGreaterThan, ErrorIfGreaterThanOrEqualTo, ErrorIfBetween, ErrorIfNotBetween.result.Guard()
.ErrorIfNullOrEmpty(email)
.ErrorIfNotValidEmail(email)
.ErrorIfLengthGreaterThan(email, 100)
.ErrorIfNull(value)
.ErrorIfLessThan(value, 10);