public static ValidateTarget <double?> IsNegativeInfinity([ValidatedNotNull] this ValidateTarget <double?> target, Func <string> getErrorMessage = null) { if (!target.Value.HasValue || !double.IsNegativeInfinity(target.Value.Value)) { ExceptionFactory.ThrowException(target.Traits.OutOfRangeExceptionType, getErrorMessage != null ? getErrorMessage.Invoke() : ErrorMessageFactory.ShouldBeNegativeInfinity(target)); } return(target); }