public static ITry <string, INonEmptyEnumerable <Error> > LengthInRange(string value, int min, int max)
        {
            var nonNullValue = ObjectValidations.NotNull(value);

            return(nonNullValue.FlatMap(v =>
            {
                var validLength = IntValidations.InRange(v.Length, min: min, max: max);
                return validLength.Map(val => v).MapError(e => Error.Create($"Length must be between {min} and {max}"));
            }));
        }
Example #2
0
 public static ITry <PositiveInt, INonEmptyEnumerable <Error> > Create(int value)
 {
     return(IntValidations.HigherThan(value, 0).Map(v => new PositiveInt(v)));
 }