public static void ArgumentNotEmptyAndNotWhiteSpace(this EnsureAlwaysExtensionRoot root, string argument, string argumentName, string message) { if (string.IsNullOrWhiteSpace(argument)) { throw new ArgumentException(message, argumentName); } }
public static void NotDisposed(this EnsureAlwaysExtensionRoot root, IDisposable disposable, string objectName, string message) { if (disposable.IsDisposed) { throw new ObjectDisposedException(objectName, message); } }
public static void ArgumentMeetsCriteria <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument argument, Predicate <TArgument> predicate, string argumentName, string message) { if (!predicate(argument)) { throw new ArgumentException(message, argumentName); } }
public static void ArgumentInRange <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument argumentValue, Range <TArgument> range, string argumentName, Func <string> messageBuilder) { if (!range.Contains(argumentValue)) { throw new ArgumentOutOfRangeException(argumentName, argumentValue, messageBuilder()); } }
public static void ArgumentNotEmpty <T>(this EnsureAlwaysExtensionRoot root, ICollection <T> argument, string argumentName, string message) { if (argument.IsNullOrEmpty()) { throw new ArgumentException(message, argumentName); } }
public static void IsSignedInteger <T>(this EnsureAlwaysExtensionRoot root, Func <string> messageBuilder) { if (!NumericType <T> .IsNumeric || !NumericType <T> .IsSigned || NumericType <T> .IsFloatPoint) { throw new NotSupportedException(messageBuilder()); } }
public static void CanBeNumeric <T>(this EnsureAlwaysExtensionRoot root, Func <string> messageBuilder) { if (!NumericType <T> .CanBeNumeric) { throw new NotSupportedException(messageBuilder()); } }
public static void MaximumArgumentIsGreaterOrEqualToMinimum <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument minimumArgument, TArgument maximumArgument, string maximumArgumentName, Func <string> messageBuilder) { if (Comparer <TArgument> .Default.Compare(maximumArgument, minimumArgument) < 0) { throw new ArgumentException(messageBuilder(), maximumArgumentName); } }
public static void ArgumentNotNull <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument argument, string argumentName, string message) where TArgument : class { if (argument == null) { throw new ArgumentNullException(argumentName, message); } }
public static void IsNumeric <T>(this EnsureAlwaysExtensionRoot root) => IsNumeric <T>(root, (string)null);
public static void IsNumeric <T>(this EnsureAlwaysExtensionRoot root, string message) { string messageBuilder() => message; IsNumeric <T>(root, messageBuilder); }
public static void IsSignedInteger <T>(this EnsureAlwaysExtensionRoot root) => IsSignedInteger <T>(root, (string)null);
public static void IsSignedInteger <T>(this EnsureAlwaysExtensionRoot root, string message) { string messageBuilder() => message; IsSignedInteger <T>(root, messageBuilder); }
public static void ArgumentInRange <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument argumentValue, Range <TArgument> range, string argumentName, string message) { string messageBuilder() => message; ArgumentInRange(root, argumentValue, range, argumentName, messageBuilder); }
public static void ArgumentNotNull <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument argument) where TArgument : class => ArgumentNotNull(root, argument, null);
public static void MaximumArgumentIsGreaterOrEqualToMinimum <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument minimumArgument, TArgument maximumArgument) => MaximumArgumentIsGreaterOrEqualToMinimum(root, minimumArgument, maximumArgument, nameof(maximumArgument));
public static void MaximumArgumentIsGreaterOrEqualToMinimum <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument minimumArgument, TArgument maximumArgument, string maximumArgumentName) => MaximumArgumentIsGreaterOrEqualToMinimum(root, minimumArgument, maximumArgument, nameof(maximumArgument), DefaultMaximumShouldBeGreaterOrEqualToMinimumMessage);
public static void MaximumArgumentIsGreaterOrEqualToMinimum <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument minimumArgument, TArgument maximumArgument, string maximumArgumentName, string message) { string messageBuilder() => message; MaximumArgumentIsGreaterOrEqualToMinimum(root, minimumArgument, maximumArgument, maximumArgumentName, messageBuilder); }
public static void ArgumentInRange <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument argumentValue, Range <TArgument> range) => ArgumentInRange(root, argumentValue, range, null);
public static void ArgumentInRange <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument argumentValue, TArgument minimum, TArgument maximum) => ArgumentInRange(root, argumentValue, new Range <TArgument>(minimum, maximum), null);
public static void ArgumentInRange <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument argumentValue, Range <TArgument> range, string argumentName) { string messageBuilder() => $"Argument value [{argumentValue}] is out of range {range}."; ArgumentInRange(root, argumentValue, range, argumentName, messageBuilder); }
public static void ArgumentNotNull <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument argument, string argumentName) where TArgument : class { // Override logic to do nothing (this should be used to reduce the overhead of the Ensure checks, when it is critical to performance) }
public static void ArgumentMeetsCriteria <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument argument, Predicate <TArgument> predicate, string argumentName) => ArgumentMeetsCriteria(root, argument, predicate, argumentName, $"Argument {argumentName} does not meet the criteria.");
public static void ArgumentNotNull <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument argument, string argumentName) where TArgument : class => ArgumentNotNull(root, argument, argumentName, $"Argument {argumentName} is null.");
public static void ArgumentNotEmpty <T>(this EnsureAlwaysExtensionRoot root, ICollection <T> argument) => ArgumentNotEmpty(root, argument, null, null);
public static void NotDisposed(this EnsureAlwaysExtensionRoot root, IDisposable disposable) => NotDisposed(root, disposable, null, null);
public static void ArgumentNotEmptyAndNotWhiteSpace(this EnsureAlwaysExtensionRoot root, string argument) => ArgumentNotEmptyAndNotWhiteSpace(root, argument, null, null);
public static void ArgumentMeetsCriteria <TArgument>(this EnsureAlwaysExtensionRoot root, TArgument argument, Predicate <TArgument> predicate) => ArgumentMeetsCriteria(root, argument, predicate, null);
public static void NotDisposed(this EnsureAlwaysExtensionRoot root, IDisposable disposable, string objectName) => NotDisposed(root, disposable, objectName, null);